Paypal - API Checkout (Rec. payment) - Sandbox Test Accounts - German account always set to “Premier”

时光毁灭记忆、已成空白 提交于 2019-12-06 14:21:46

问题


I'm working on a recurring payment integration with Paypal and at this point the main functionality is working fine. I have one problem though that I cannot solve so I thought maybe someone here has ran into the same problem and might give me a hint.

To test the subscription to a recurring payment I created a seller account. The seller is located in Germany.

Then I created some other test accounts to represent the buyers. I created one buyer to represent a german customer and one that represents a U.S. byuer.

When I am redirected to the Paypal login page (Checkout, cart is shown on the left etc.), I can login with the U.S. account properly, agree to the payment and get redirected and everything is fine.

But when I try to use the GERMAN test account, I always get a page directly after login which says that "The payment cannot be processed at this time. Please return to the seller's page and chose another payment option".

I tracked the problem down to one surprising fact, and that is I always get this error when I try to login with a test-account that is marked as "Premier" within the Test-Account-Section of the sandbox. ALL (!) other test accounts that are marked as "personal" are working just fine.

I am using the Paypal API to set an NVP-string for the express checkout. The checkout string is listed below, because maybe I am missing something there:

$nvpstr = "";
$nvpstr .= "&METHOD=SetExpressCheckout";
$nvpstr .= "&VERSION=74.0";
$nvpstr .= "&LOCALECODE=".$this->localecode;
$nvpstr .= "&CURRENCYCODE=EUR";
$nvpstr .= "&RETURNURL=".$this->RETURN_URL_PLANUPGRADE;
$nvpstr .= "&CANCELURL=".$this->CANCEL_URL_PLANUPGRADE;
$nvpstr .= "&NOSHIPPING=1";
$nvpstr .= "&LANDINGPAGE=Billing";
$nvpstr .= "&BILLINGTYPE=RecurringPayments";
$nvpstr .= "&BILLINGAGREEMENTDESCRIPTION=" . urlencode('billing agreement description');

$nvpstr .= "&PAYMENTREQUEST_0_PAYMENTACTION=Sale";
$nvpstr .= "&PAYMENTREQUEST_0_DESC=" . urlencode('payment description');
$nvpstr .= "&PAYMENTREQUEST_0_CURRENCYCODE=EUR";
$nvpstr .= "&PAYMENTREQUEST_0_ITEMAMT=".$data['Payment']['item_amt'];
$nvpstr .= "&PAYMENTREQUEST_0_TAXAMT=".$data['Payment']['item_tax'];
$nvpstr .= "&PAYMENTREQUEST_0_AMT=".$data['Payment']['amt'];;

$nvpstr .= "&L_BILLINGTYPE0=RecurringPayments";
$nvpstr .= "&L_BILLINGAGREEMENTDESCRIPTION0=". urlencode('description');
$nvpstr .= "&L_PAYMENTTYPE0=Any";
$nvpstr .= "&L_PAYMENTREQUEST_0_ITEMCATEGORY0=Digital";
$nvpstr .= "&L_PAYMENTREQUEST_0_NAME0=". urlencode('item name');
$nvpstr .= "&L_PAYMENTREQUEST_0_DESC0=" . urlencode('item description');
$nvpstr .= "&L_PAYMENTREQUEST_0_AMT0=".$data['Payment']['item_amt'];
$nvpstr .= "&L_PAYMENTREQUEST_0_TAXAMT0=".$data['Payment']['item_tax'];
$nvpstr .= "&L_PAYMENTREQUEST_0_QTY0=1";

I hope someone has ran into the same problem and can point me to the right direction. Maybe the option "paymentaction" does not work with german premier accounts, or anything else is missing...?


回答1:


I have the same problem, and this is the answer from PayPal support:


Dear xxx,

Thank you for contacting PayPal Merchant Technical Services.

As much as i want to give you a positive answer, but unfortunately the Express Checkout Recurring payment API is currently not supported for German buyers. These German buyers will always get the error you saw because the German funding sources are not supported for the recurring payment API and therefore this error is thrown. I am really sorry , but the German buyers won't be able to use this Service. The only way around that would be a change in your integration and process recurring payments for Germany with either the preapproved payments or reference transaction API:

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ECReferenceTxns

https://www.x.com/devzone/articles/recurring-payments-reference-transactions-and-preapproved-payments




来源:https://stackoverflow.com/questions/11265288/paypal-api-checkout-rec-payment-sandbox-test-accounts-german-account-al

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!