2

現在、SecureNetと統合しようとしています。最新のpdf(4.1.5)を読みましたが、リクエストをどのように構成する必要があるのか​​まだわかりません。

私は得続けます:

Endpoint not found.

誰かがXXX化された機密フィールドを使用して制作リクエストの例を提供できますか?

4

2 に答える 2

4

ああ、APIチームはついに私に戻ってきました。ここにあります。それがいつか誰かを助けることを願っています。

リクエスト

POST https://certify.securenet.com/API/gateway.svc/webHttp/ProcessTransaction HTTP/1.1
User-Agent: Fiddler
Content-Type: application/xml; charset=utf-8
Host: certify.securenet.com
Content-Length: 1839

<?xml version="1.0" encoding="utf-8"?><TRANSACTION xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://gateway.securenet.com/API/Contracts">
<AMOUNT>11</AMOUNT>
<AUTHCODE></AUTHCODE>
<AUTO i:nil="true" />
<CARD>
<CARDCODE>996</CARDCODE>
<CARDNUMBER>4012000033330026</CARDNUMBER>
<EXPDATE>0414</EXPDATE>
<KSN i:nil="true" />
<PINBLOCK>PIN Block</PINBLOCK>
<TRACKDATA i:nil="true" /></CARD>
<CASHBACK_AMOUNT>0</CASHBACK_AMOUNT>
<CHECK i:nil="true" />
<CODE>0000</CODE>
<CUSTOMERID i:nil="true"/>
<CUSTOMERIP></CUSTOMERIP>
<CUSTOMER_BILL>
<ADDRESS></ADDRESS>
<CITY></CITY>
<COMPANY></COMPANY>
<COUNTRY></COUNTRY>
<EMAIL></EMAIL>
<EMAILRECEIPT>FALSE</EMAILRECEIPT>
<FIRSTNAME></FIRSTNAME>
<LASTNAME></LASTNAME>
<PHONE></PHONE>
<STATE></STATE>
<ZIP></ZIP>
</CUSTOMER_BILL>
<CUSTOMER_SHIP i:nil="true" />
<DCI>0</DCI>
<DEVICECODE></DEVICECODE>
<ENCRYPTION i:nil="true" />
<ENTRYSOURCE></ENTRYSOURCE>
<HOTEL i:nil="true" />
<INDUSTRYSPECIFICDATA>0</INDUSTRYSPECIFICDATA>
<INSTALLMENT_SEQUENCENUM>0</INSTALLMENT_SEQUENCENUM>
<INVOICEDESC></INVOICEDESC>
<INVOICENUM i:nil="true" />
<LEVEL2 i:nil="true" />
<LEVEL3 i:nil="true" />
<MARKETSPECIFICDATA i:nil="true"/>
<MERCHANT_KEY>
<GROUPID>0</GROUPID>
<SECUREKEY>lbGXSJZsV9Oy</SECUREKEY>
<SECURENETID>7000000</SECURENETID>
</MERCHANT_KEY>
<METHOD>CC</METHOD>
<MPI i:nil="true" />
<NOTE></NOTE>
<ORDERID>12311601</ORDERID>
<OVERRIDE_FROM>0</OVERRIDE_FROM>
<PAYMENTID i:nil="true" />
<PETROLEUM i:nil="true" />
<PRODUCTS i:nil="true" />
<REF_TRANSID>0</REF_TRANSID>
<RETAIL_LANENUM>0</RETAIL_LANENUM>
<SECONDARY_MERCHANT_KEY i:nil="true" />
<SERVICE i:nil="true" />
<TEST>FALSE</TEST>
<TOTAL_INSTALLMENTCOUNT>0</TOTAL_INSTALLMENTCOUNT>
<TRANSACTION_SERVICE>0</TRANSACTION_SERVICE>
<USERDEFINED i:nil="true" />
</TRANSACTION>

応答

HTTP/1.1 200 OK
Date: Fri, 08 Mar 2013 23:48:37 GMT
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Cache-Control: private
Content-Type: application/xml; charset=utf-8
Content-Length: 1763
Set-Cookie: TS6d10c9=d81f0c76c1ab996b6024b4b7340467c76c45ae1650897225513a7909; Path=/
Set-Cookie: TS6d10c9_28=ab9f901af259d97913f9b001c3f710f66c45ae1650897225000000000000000000513a7908522b1347a8bb858f; Path=/

<GATEWAYRESPONSE xmlns="http://gateway.securenet.com/API/Contracts" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><ABRESPONSE i:nil="true"/><TRANSACTIONRESPONSE><RESPONSE_CODE>1</RESPONSE_CODE><RESPONSE_REASON_CODE>0000</RESPONSE_REASON_CODE><RESPONSE_REASON_TEXT>Approved</RESPONSE_REASON_TEXT><RESPONSE_SUBCODE/><ADDITIONALAMOUNT>0</ADDITIONALAMOUNT><ADDITIONALDATA1/><ADDITIONALDATA2/><ADDITIONALDATA3/><ADDITIONALDATA4/><ADDITIONALDATA5/><AUTHCODE>CRO3B4</AUTHCODE><AUTHORIZEDAMOUNT>11.00</AUTHORIZEDAMOUNT><AVS_RESULT_CODE>Y</AVS_RESULT_CODE><BANK_ACCOUNTNAME/><BANK_ACCOUNTTYPE/><BATCHID>0</BATCHID><CARDHOLDER_FIRSTNAME/><CARDHOLDER_LASTNAME/><CARDLEVEL_RESULTS/><CARDTYPE>VI</CARDTYPE><CARD_CODE_RESPONSE_CODE>M</CARD_CODE_RESPONSE_CODE><CASHBACK_AMOUNT>0</CASHBACK_AMOUNT><CAVV_RESPONSE_CODE/><CHECKNUM i:nil="true"/><CODE>0000</CODE><CUSTOMERID/><CUSTOMER_BILL><ADDRESS/><CITY/><COMPANY/><COUNTRY/><EMAIL/><EMAILRECEIPT>FALSE</EMAILRECEIPT><FIRSTNAME/><LASTNAME/><PHONE/><STATE/><ZIP/></CUSTOMER_BILL><EXPIRYDATE>0414</EXPIRYDATE><GRATUITY>0</GRATUITY><INDUSTRYSPECIFICDATA>P</INDUSTRYSPECIFICDATA><LAST4DIGITS>0026</LAST4DIGITS><LEVEL2_VALID>FALSE</LEVEL2_VALID><LEVEL3_VALID>FALSE</LEVEL3_VALID><MARKETSPECIFICDATA/><METHOD>CC</METHOD><NETWORKCODE/><NETWORKID/><ORDERID>12311601</ORDERID><PAYMENTID/><RETREFERENCENUM/><SECURENETID>7000000</SECURENETID><SETTLEMENTAMOUNT>11.00</SETTLEMENTAMOUNT><SETTLEMENTDATETIME>03082013184837</SETTLEMENTDATETIME><SYSTEM_TRACENUM/><TRACKTYPE>0</TRACKTYPE><TRANSACTIONAMOUNT>11.00</TRANSACTIONAMOUNT><TRANSACTIONDATETIME>03082013184837</TRANSACTIONDATETIME><TRANSACTIONID>111177310</TRANSACTIONID></TRANSACTIONRESPONSE><VAULTACCOUNTRESPONSE i:nil="true"/><VAULTCUSTOMERRESPONSE i:nil="true"/></GATEWAYRESPONSE>
于 2013-03-09T00:00:26.640 に答える
1

この投稿は、最初は表示されなかったいくつかのフィールドを表示してくれたので、本当に役に立ちました。SecureNetのCodeIgniterクラスを使用したくない場合は、払い戻し/キャプチャ/無効化を行うための簡単なPHP/SOAPベースの例をまとめました。これを他のものに適応させることはそれほど難しいことではありません。

//Certifying?
$certify = 1;

//Build Array
$arg = array(
    "MERCHANT_KEY" => array(
        "GROUPID" => 0,
        "SECUREKEY" => "XXXXXXXXX",
        "SECURENETID" => "XXXXXXXXX",
    ),
    "CARD" => array(
        "CARDNUMBER" => $card_number,
    ),
    "REF_TRANSID" => $processor_transaction_id,
    "AMOUNT" => $amount,
    "METHOD" => "CC",
    "DCI" => 0,
    "INSTALLMENT_SEQUENCENUM" => 0,
    "GROUPID" => 0,
    "OVERRIDE_FROM" => 0,
    "RETAIL_LANENUM" => 0,
    "TOTAL_INSTALLMENTCOUNT" => 0,
    "TRANSACTION_SERVICE" => 0,
    "TEST" => $testing ? "FALSE" : "TRUE",
);

//Refund
if ($action == "refund") {
    $arg['CODE'] = "0500";

//Capture
} elseif ($action == "capture") {
    $arg['CODE'] = "0200";

//Partial Void
} elseif ($action == "void") {
    $arg['CODE'] = "0401";
}

//Certify or Production URL's
$base_url = "http://gateway.securenet.com/api/gateway.svc?wsdl"; //not for sure on these urls
$soap_url = "https://gateway.securenet.com/api/gateway.svc/soap"; //not for sure on these urls
if ($certify) {
    $base_url = "http://certify.securenet.com/api/gateway.svc?wsdl";
    $soap_url = "https://certify.securenet.com/api/gateway.svc/soap";
}

//Connect
$client = new \SoapClient($base_url, array('trace' => 1, 'exceptions' => true));
$client->__setLocation($soap_url);

//Successful!
try {
    $result = $client->ProcessTransaction(array("TRANSACTION" => $arg));

    if ($certify) {
        echo 'REQUEST: ' . htmlentities($client->__getLastRequest()) . "<br><br>";
        echo 'RESPONSE: ' . htmlentities($client->__getLastResponse());
    }

    //1 = approve, 2 = declined, 3 = error
    $response_code = $result->ProcessTransactionResult->TRANSACTIONRESPONSE->RESPONSE_CODE;
    $response_text = $result->ProcessTransactionResult->TRANSACTIONRESPONSE->RESPONSE_REASON_TEXT;

//There Was An Error
} catch (\Exception $e) {

    if ($certify) {
        echo 'REQUEST: ' . htmlentities($client->__getLastRequest()) . "<br><br>";
        echo 'RESPONSE: ' . htmlentities($client->__getLastResponse());
    }

    echo "ERROR: " . $e->getMessage() . "<br><br>";
    die;

}

他に役立つものは、SecureNetではもう利用できないように見えるこれらのドキュメントでした。http://www.scribd.com/doc/202100111/SecureNet-Docs

于 2014-01-25T05:14:10.600 に答える