paypal - 具有定期付款的 ExpressCheckout 的必要 API 调用是什么

标签 paypal paypal-adaptive-payments recurring

我的调用流程如下:

  • 设置快速结账
  • GetExpressCheckout
  • DoExpressCheckout

注意:paymentAction 对于单次支付是 Sale,对于循环支付是 Authorization

使用初始金额创建 RecurringProfile(仅适用于定期付款)

我发现:

钱有待提取。

个人资料还扣除了首付款。

当我试图获取这笔钱时,客户被扣了两次。

问题:

  1. 请问我的 API 调用中缺少什么?
  2. 对于定期付款,o 你认为我不需要打电话 调用 CreateRecurringPaymentsProfile 之前的 DoExpressCheckout API API?
  3. 如果问题 2 为真,如果调用 CreateRecurringPaymentsProfile API 成功即 $createRPProfileResponse->Ack == "SUCCESS", 那么这是否意味着初始金额对我和我有保证 可以允许访问我的服务吗?

最佳答案

听起来您对自己所做的事情有点不适应。您不会将定期付款资料设置为“授权”。

如果结帐只是为了定期付款,则您不需要调用 DoExpressCheckoutPayment。例如,只有在您需要为所运送​​的产品一次性付款,然后在此基础上创建订阅的情况下,您才会同时调用(DECP 和 CRPP)。在您的情况下,听起来您只需要 CRPP。

您仍然需要调用 SEC 和 GECD(可选),但您只需使用 CRPP 即可完成它。 (旁注:确保您已在 SEC 请求中包含计费协议(protocol)详细信息。这是很多人常犯的错误,他们在调用 CRPP 时最终会遇到无效 token 错误。)

确认成功并不意味着初始金额已获批准。它只是意味着配置文件已成功创建。不过,请求中有一个可用参数 FAILEDINITAMTACTION,您可以使用它来指定您是要让配置文件保持事件状态还是在初始付款失败时立即暂停它。它接受以下值:ContinueOnFailure/CancelOnFailure

不过,不要让这让您感到困惑。它实际上会将个人资料状态设置为暂停,而不是取消,因此您可以在他们付款后重新激活它。

当您构建用于访问网站付费区域的登录系统时,您可以使用 GetRecurringPaymentsProfileDetails API 检查配置文件的当前状态,并且仅在其处于事件状态时才允许访问。

希望对您有所帮助!

关于paypal - 具有定期付款的 ExpressCheckout 的必要 API 调用是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13156883/

相关文章:

laravel - 自定义计费周期的 Paypal 定期付款

ios - Paypal iOS 总是返回相同的 Paypal ID

ruby-on-rails - Paypal-express gem,在开发中工作但不在生产中

api - 实时获取交易明细,Paypal

ios - 找不到 -lPayPalMPL 的库

e-commerce - Paypal 自适应支付 API,多个接收者,哪个 apiUsername/apiPassword/apiSignature?

paypal - 经常性与订阅混淆

java - 无法在 Java 中以编程方式更新定期 session

paypal - Visa 结帐集成

php - Paypal 错误错误代码: 580022 paypal adaptive parallel payment