根据PayPal文档,使用ExpressCheckout时,无法对定期付款进行即时付款通知(IPN)。以下是我得出这个结论的方法:
在
SetExpressCheckout
文档中关于NOTIFYURL
的说明:通知URL仅适用于
DoExpressCheckoutPayment
。在SetExpressCheckout
或GetExpressCheckoutDetails
中设置此值将被忽略。我没有使用ExpressCheckout进行一次性付款,只是创建了一个重复收费的配置文件。因此,我跳过了像
Recurring Payments integration guide
中所指定的DoExpressCheckoutPayment
调用。实际上,如果我执行DoExpressCheckoutPayment
调用,它将无效,因为我已将金额设置为0
。根据
1.
,除非调用DoExpressCheckoutPayment
,否则将忽略NOTIFYURL
(确切地说是PAYMENTREQUEST_0_NOTIFYURL
)。然而,我尝试在SetExpressCheckoutPayment
调用中设置它。使用IPN模拟器,我成功接收到IPN通知。
成功创建新的重复支付配置文件时,使用
CreateRecurringPaymentsProfile
我没有收到IPN通知。我没有找到与重复支付相关的API调用,可以用来设置
NOTIFYURL
。
INITAMT
或其他需要DoExpressCheckoutPayment
?