是否可以在贝宝快速结帐中更新经常性金额?

Posted

技术标签:

【中文标题】是否可以在贝宝快速结帐中更新经常性金额?【英文标题】:Is it possible to update recurring amount in paypal express checkout? 【发布时间】:2015-02-24 07:32:40 【问题描述】:

我已使用快速结帐功能集成了 paypal 定期付款。循环配置文件创建成功。

我需要在每个循环周期之前更新循环计费金额。为此,我正在使用“UpdateRecurringPaymentsProfile”哈希调用。但我无法更新定期计费的金额。 它总是给我错误。

我的代码是

$nvpstr="&PROFILEID=I-DB8HMA6R7F8T";
$nvpstr.="&AMT=".urlencode('50');
$nvpstr.="&CURRENCYCODE=USD";
$nvpstr.="&PAYMENTACTION=Order";
$nvpstr.="&BILLINGTYPE=RecurringPayments";

$resArray=hash_call("UpdateRecurringPaymentsProfile",$nvpstr);

响应是:

Array
(
    [TIMESTAMP] => 2014-12-27T10:26:00Z
    [CORRELATIONID] => 7aa715c9e9ebe
    [ACK] => Failure
    [L_ERRORCODE0] => 10001
    [L_SHORTMESSAGE0] => Internal Error
    [L_LONGMESSAGE0] => Timeout processing request
)

请提出建议。

【问题讨论】:

【参考方案1】:

是否可以在 paypal express 结账中更新经常性金额?

是的,这是(但并非总是)可能的,因为允许做什么和不做什么是有限制的。

这在Integration Guide of Express Checkout under Handling Recurring Payments中有详细记录。


对于UpdateRecurringPaymentsProfile,错误代码10001 与短消息Internal Error 和长消息Timeout processing request 未指定(请参阅:API Error and Warning Codes)。

如果未指定错误,您需要联系 Paypal 支持并询问详细信息。

根据 ***,这个问题时有发生:

Paypal UpdateRecurringPaymentsProfile returning internal error(2014 年 11 月 4 日) Is it possible to change only AMT using UpdateRecurringPaymentsProfile PayPal?(2014 年 11 月 28 日)

拥有它的用户不会分享任何进一步的信息。

【讨论】:

是否可以在快速结账中更新定期账单金额? 那么,如果我需要无限制地更新定期账单金额,使用 paypal express checkout 的正确方法应该是什么? 你不能,这总是有限制的。查阅我链接的文档,然后您就知道您想做的事情是否可行。这通常无法回答,因为从您的问题中不清楚您究竟更改了什么以及您是否可能已经达到任何限制。 我最初创建了金额为 1 美元的定期配置文件。我需要在下一个计费周期之前更新经常性金额。金额可以是 50 美元或 500 美元。但是在更新金额时它总是给我错误。

以上是关于是否可以在贝宝快速结帐中更新经常性金额?的主要内容,如果未能解决你的问题,请参考以下文章

使用贝宝方法可以进行零金额交易吗?

在贝宝上显示信息

如何在贝宝快速结帐中显示产品详细信息

贝宝 - 经常性捐款 URL

asp.net 中的简单应用程序,用户在文本框中输入金额并单击使用贝宝结帐

贝宝智能支付按钮动态支付金额