Paypal定期付款IPN确认

5
我遇到了Paypal定期付款的问题。 CreateRecurringPaymentsProfile()返回已创建配置文件的ID(ProfileID)。同时,我在IPN url上收到以下确认信息:
payment_cycle - Daily
txn_type - recurring_payment_profile_ 
created
last_name - User
next_payment_date - 03:00:00 Oct 06, 2011 PDT
residence_country - US
initial_payment_amount - 0.00
currency_code - USD
time_created - 23:21:02 Oct 05, 2011 PDT
verify_sign - ...
period_type -  Regular
payer_status - verified
test_ipn - 1
tax - 0.00
payer_email - ...
first_name - Test
receiver_email - ...
payer_id - ...
product_type - 1
shipping - 0.00
amount_per_cycle - 20.00
profile_status - Active
charset - windows-1252
notify_version - 3.4
amount - 20.00
outstanding_balance - 0.00
---------->recurring_payment_id - I-6EFKVB5FXRGH
product_name - Ultimate Account
ipn_track_id - ...

显然,ProfileID和recurring_payment_id是相等的。之后,会收到有关付款的确认:
mc_gross - 20.00
outstanding_balance - 0.00
period_type -  Regular
next_payment_date - 03:00:00 Oct 07, 2011 PDT
protection_eligibility - Ineligible
payment_cycle - Daily
tax - 0.00
payer_id - WR942TMLKNKZE
payment_date - 04:38:37 Oct 06, 2011 PDT
payment_status - Completed
product_name - Ultimate Account
charset - windows-1252
---------->recurring_payment_id - I-5S42CVRD6HPC
first_name - Test
mc_fee - 0.88
notify_version - 3.4
amount_per_cycle - 20.00
payer_status - verified
currency_code - USD
business - ...
verify_sign - ...
payer_email - ...
initial_payment_amount - 0.00
profile_status - Active
amount - 20.00
txn_id - 2XB154738E303273C
payment_type - instant
last_name - User
receiver_email - ...
payment_fee - 0.88
receiver_id - ...
txn_type - recurring_payment
mc_currency - USD
residence_country - US
test_ipn - 1
transaction_subject -
payment_gross - 20.00
shipping - 0.00
product_type - 1
time_created - 03:32:45 Sep 29, 2011 PDT
ipn_track_id - ...

这3个值:CreateRecurringPaymentsProfile() 返回的ProfileID,recurring_payment_profile_created 中的 recurring_payment_id,以及 recurring_payment 中的 recurring_payment_id,应该是一样的。(因为似乎没有其他合适的方式可以正确地识别此特定订阅的付款) 另外,Paypal 会多次发送 recurring_payment (在 IPN 上),每次 recurring_payment_id 都不同。
我应该使用 recurring_payment_id 来识别特定订阅的付款,还是有其他适当的方式来识别它?
1个回答

8

档案 ID=定期付款 ID。如果定期付款 ID 不同,则我们谈论的是不同的档案 ID(换句话说:不同的定期付款档案)。


谢谢,但这正是我所说的问题。我已经清理了所有以前的交易/配置文件,并且只有一个配置文件(在PayPal的沙盒中)- 我仍然会得到不同的ProfileID和recurring_payment_id。 - Tsybulsky Serg
我知道这是一个旧的帖子,但我刚刚问了自己同样的问题,所以我刚刚测试了一下,我得到了相同的ID两次。在尝试之前,我还清理了所有的配置文件。CreateRecurringPaymentsProfile API调用返回给我[PROFILEID] => I-L9VFD2G8KW5L,txn_type为“recurring_payment_profile_created”的IPN消息显示“recurring_payment_id”:“I-L9VFD2G8KW5L”,“recurring_payment” IPN也是如此,所以我认为您应该使用IPN消息中的内容没问题。也许这是旧API版本的问题。 - MrUpsidown
我也遇到了同样的问题,所以我想补充一下:很有可能你在沙盒中设置了多个订阅,导致不同的recurring_payment_id返回不同的值。每个在沙盒中启动的独立重复付款都将携带不同的recurring_payment_id(和ProfileID),因此请确保您记住这一点 :) - jball037

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接