2013-03-08 128 views
2

我正在嘗試與SecureNet進行集成。我閱讀了最新的pdf(4.1.5),但我仍不清楚請求的結構。SecureNet請求示例

我不斷收到:

Endpoint not found.

誰能提供生產要求的例子機密領域XXX'd了呢?

回答

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> 
+0

嗨,你能提供一個代碼示例來發送?我遇到了wsdl問題 – jameslimousin 2014-05-05 23:20:22

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

+0

您好,您可以提供certify wsdl文件的URL。我測試了代碼,但得到了「解析WSDL:無法從'https://certify.securenet.com/api/gateway.svc?wsdl'」加載錯誤。我有一個securenet的演示帳戶。 – jameslimousin 2014-05-05 23:19:28

+0

我使用http://certify.securenet.com/api/gateway.svc?wsdl爲模擬賬戶構建。不知道爲什麼這不起作用。我認爲http://或https://應該可以工作。編輯:想知道如果你有一個額外的字符在你的網址的結尾。 – David 2014-05-06 18:36:10

+0

嗨大衛,謝謝你的回覆。問題是我不得不使用在線服務器來執行測試,使用本地計算機時無法正常工作。 – jameslimousin 2014-05-14 20:46:37