Tôi đã gặp sự cố với thanh toán định kỳ Paypal. CreateRecurringPaymentsProfile() trả về ID của hồ sơ được tạo (ProfileID). Đồng thời, tôi nhận được xác nhận sau về địa chỉ IPN:Thanh toán định kỳ Paypal Xác nhận IPN
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 - ...
Rõ ràng, ProfileID và recurring_payment_id đều bằng nhau. Sau này, xác nhận về thanh toán được nhận:
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 giá trị sau: ProfileID trả về CreateRecurringPaymentsProfile(); recurring_payment_id trong recurring_payment_profile_created; recurring_payment_id trong recurring_payment - phải giống nhau. (có vẻ như không có cách nào khác để xác định đúng thanh toán cho đăng ký cụ thể này) Ngoài ra, recurring_payment (trên IPN) đang được gửi qua Paypal nhiều lần và mỗi lần recurring_payment_id khác nhau.
Tôi có nên sử dụng recurring_payment_id để xác định thanh toán cho đăng ký cụ thể hoặc có cách nào khác để xác định nó đúng không?
Xin cảm ơn, nhưng đây chính là vấn đề tôi nói đến. Tôi đã làm sạch tất cả các giao dịch/hồ sơ trước đó và chỉ với một hồ sơ (trong sandbox của paypal) - Tôi vẫn nhận được ProfileID khác và recurring_payment_id. –
Tôi biết đây là một chủ đề cũ nhưng tôi chỉ hỏi bản thân mình cùng một câu hỏi vì vậy tôi vừa thử nghiệm nó và tôi nhận được cùng một ID hai lần. Tôi cũng đã làm sạch tất cả hồ sơ trước khi thử. Cuộc gọi API CreateRecurringPaymentsProfile trả về tôi bằng [PROFILEID] => I-L9VFD2G8KW5L và thông báo IPN của txn_type "recurring_payment_profile_created" hiển thị "recurring_payment_id": "I-L9VFD2G8KW5L" và do đó, IP "recurring_payment" nên tôi nghĩ bạn nên ổn những gì có trong tin nhắn IPN. Có thể đây là vấn đề với các phiên bản API cũ hơn. – MrUpsidown
Cũng đang xử lý vấn đề tương tự vì vậy tôi nghĩ rằng tôi sẽ thêm: Rất có thể lý do bạn nhận được các giá trị khác nhau cho các khoản thanh toán khác nhau là do bạn thiết lập nhiều đăng ký trong hộp cát của mình. Mỗi lần thanh toán định kỳ riêng biệt mà bạn bắt đầu trong sandbox sẽ mang theo một khoản thanh toán định kỳ khác nhau (và ProfileID), vì vậy, hãy đảm bảo rằng bạn đang ghi nhớ điều đó :) – jball037