2012-06-29 54 views
1

我正在与Paypal进行定期付款集成,此时主要功能正常。我有一个问题,虽然我无法解决,所以我想也许这里有人遇到了同样的问题,可能会给我一个提示。Paypal - API结帐(建议付款) - 沙盒测试帐户 - 德国帐户始终设置为“Premier”

为了测试对定期付款的订阅,我创建了一个卖家帐户。卖家位于德国。

然后我创建了一些其他测试帐户来代表买家。我创建了一位买家来代表一位德国客户,代表一位美国代表。

当我重定向到PayPal登录页面(Checkout,购物车显示在左边等),我可以正确登录美国帐户,同意付款并重定向,一切都很好。

但是,当我尝试使用德国测试帐户时,我总是会在登录后直接得到一个页面,表示“此时无法处理付款,请返回到卖家页面并选择其他付款选项”。

我将问题追踪到一个令人惊讶的事实,那就是当我尝试使用沙箱的Test-Account-Section中标记为“Premier”的测试帐户登录时,我总是得到此错误。所有标记为“个人”的(!)其他测试帐户都可以正常工作。

我正在使用PayPal API为快速结帐设置NVP字符串。结账字符串列表如下,因为也许我失去了一些东西有:

$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"; 

我希望有人遇到同样的问题,可以点我到正确的方向。也许选项“paymentaction”不适用于德国总理帐户,或者其他任何东西缺失......?

回答

4

我有同样的问题,这是贝宝支持的答案:


尊敬的XXX,

感谢您与PayPal商户技术服务。

尽管我想给你一个肯定的答案,但不幸的是,德国买家目前不支持Express Checkout Recurring支付API。这些德国买家总会得到您所看到的错误,因为德国资金来源不支持定期付款API,因此会引发此错误。我很抱歉,但德国买家将无法使用此服务。围绕这一点的唯一方法是在你的集成和流程定期付款的德国无论是预核准付款或参考交易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


相关问题