【发布时间】:2013-05-05 04:59:53
【问题描述】:
根据 PayPal 文档,在使用 ExpressCheckout 时,无法获得定期付款的即时付款通知 (IPN)。
我是这样得出这个结论的:
-
在
SetExpressCheckoutdocumenationNOTIFYURL他们说:通知 URL 仅适用于
DoExpressCheckoutPayment。在SetExpressCheckout或GetExpressCheckoutDetails中设置时忽略此值。 我没有使用 ExpressCheckout 的一次性付款。我只是在创建一个经常性的个人资料。所以我跳过了
DoExpressCheckoutPayment调用,就像在Recurring Payments integration guide中指定的那样。实际上,如果我调用DoExpressCheckoutPayment将无效,因为我已将金额设置为0。根据
1.,NOTIFYURL(准确地说是PAYMENTREQUEST_0_NOTIFYURL)将被忽略,除非调用DoExpressCheckoutPayment。但是我尝试在SetExpressCheckoutPayment调用中设置它。使用 IPN 模拟器,我成功接收到 IPN 通知。
使用
CreateRecurringPaymentsProfile成功创建新的定期付款配置文件时,我没有收到 IPN 通知。我没有找到与定期付款相关的 API 调用,我可以使用它来设置
NOTIFYURL。
如何使用 ExpressCheckout 为定期付款设置 IPN URL,无需初始付款、INITAMT 或其他需要 DoExpressCheckoutPayment 的方法?
【问题讨论】:
-
您是否尝试过使用初始付款并将其设置为0?
-
@jayarjo 我没有。但是我认为这行不通。 PayPal 不太可能允许交易金额为零。即使他们这样做,在客户的银行对账单中也会显得很奇怪。然而,这是一个黑客。我真的希望 PayPal API 能够原生支持它。
标签: paypal paypal-ipn recurring-billing express-checkout