Мы попробовали и протестировали наш сайт с песочницей Paypal, и он полностью вычитает сумму.
Мы перешли данные API в Paypal и ссылки. Мы попробовали несколько учетных записей в PayPal, чтобы узнать, работает ли это (у всех из них достаточно средств для транзакции).
Мы вернем это через API на нашей странице returnUrl – Ошибка вызова API
Array ( [TIMESTAMP] => 2012%2d07%2d15T19%3a31%3a43Z [CORRELATIONID] => 927a89205e54a [ACK] => Failure [VERSION] => 65%2e1 [BUILD] => 3300093 [L_ERRORCODE0] => 13113 [L_SHORTMESSAGE0] => Buyer%20Cannot%20Pay%2e [L_LONGMESSAGE0] => The%20Buyer%20cannot%20pay%20with%20PayPal%20for%20this%20Transaction%2e [L_SEVERITYCODE0] => Error )
Php, чтобы сделать окончательный вызов API –
$APIUSERNAME="*****"; $APIPASSWORD="***"; $APISIGNATURE="*****"; $ENDPOINT = "https://api-3t.paypal.com/nvp"; //$ENDPOINT = "https://api-3t.sandbox.paypal.com/nvp"; $VERSION = "64"; //Build the Credential String: $cred_str = "USER=" . $APIUSERNAME . "&PWD=" . $APIPASSWORD . "&SIGNATURE=" . $APISIGNATURE . "&VERSION=" . $VERSION; //Build NVP String for GetExpressCheckoutDetails $nvp_str = "&METHOD=GetExpressCheckoutDetails&TOKEN=" . urldecode($token); //Lets combine both strings then make the API call $req_str = $cred_str . $nvp_str; $response = PPHttpPost($ENDPOINT, $req_str);
Вышеупомянутый массив возникает, когда я получаю свое окончательное подтверждение от PayPal.
//check Response if($doresponse['ACK'] == "Success" || $doresponse['ACK'] == "SuccessWithWarning") { echo "completed"; //just put to test include "finishtransaction.php"; //cancels my cart sessions } else{ echo "The API Call Failed"; print_r($doresponse); }
Об этой ошибке не так много говорится в google, даже в коде ошибок API. Кто-нибудь приходил раньше этого?
Коды ошибок API PayPal , по общему признанию, не очень полезны.
Код ошибки 13113 или «Покупатель не может оплатить PayPal для этой транзакции» означает, что PayPal принял мер безопасности, отказавшись обрабатывать транзакцию. Это может произойти по одной из следующих причин (их больше, но вот несколько):
К сожалению, мало кто может рассказать вам, не просматривая свой код. Я бы проверить свой код и убедиться, что все соответствующие флаги и что-то не установлены. Если вы подождете несколько часов и все еще получаете ошибку (особенно в нескольких / новых учетных записях), вам необходимо связаться с PayPal.
Я знаю, что это отстой, но только PayPal сможет рассказать вам, почему именно транзакция терпит неудачу.