2

我的通话流程如下:

  • SetExpressCheckout
  • GetExpressCheckout
  • DoExpressCheckout

注意:paymentAction 是单次付款的销售和定期付款的授权

CreateRecurringProfile 初始金额(仅用于定期付款)

我发现:

钱有待抓获。

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

当我试图扣钱时,客户被扣了两次钱。

问题:

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

1 回答 1

1

听起来你对你正在做的事情有点不正常。您不会将定期付款资料设置为“授权”。

如果结帐只是定期付款,则无需调用 DoExpressCheckoutPayment。例如,您只需要在需要为您运送的产品一次性付款的情况下拨打这两个电话(DECP 和 CRPP),然后还要在此基础上创建订阅。在您的情况下,听起来您只需要 CRPP。

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

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

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

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

希望有帮助!

于 2012-11-13T05:33:01.193 回答