Paypal 定期付款 IPN 确认
我遇到了 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 - 应该相同。 (因为似乎没有其他方法可以正确识别此特定订阅的付款) 此外,recurring_ payment(在 IPN 上)由 Paypal 多次发送,并且每次 recurring_ payment_id 都不同。
我应该使用 recurring_ payment_id 来识别特定订阅的付款还是有另一种正确的方法来识别它?
I have encountered a problem with Paypal recurring payments.
CreateRecurringPaymentsProfile() returns ID of created profile (ProfileID). At the same time, I receive the following confirmation on 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 - ...
Obviously, ProfileID and recurring_payment_id are equal. After this, a confirmation about the payment is received:
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 - ...
These 3 values: ProfileID in return of CreateRecurringPaymentsProfile(); recurring_payment_id in recurring_payment_profile_created; recurring_payment_id in recurring_payment - should be the same. (as it seems that there's no other way to properly identify the payment for this specific subscription)
Also, recurring_payment (on IPN) is being sent by Paypal multiple times and every time recurring_payment_id is different.
Should I use recurring_payment_id to identify the payment for specific subscription or there's another properly way to identify it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
个人资料 ID = recurring_ payment_id。如果 recurring_ payment_id 不同,我们讨论的是不同的 ProfileID(换句话说:不同的定期付款配置文件)。
Profile ID = recurring_payment_id. If recurring_payment_id is different, we're talking about a different ProfileID (in other words: a different recurring payment profile).