Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Paypal recurring payments IPN confirmation

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?

like image 457
Tsybulsky Serg Avatar asked Oct 06 '11 19:10

Tsybulsky Serg


People also ask

How do I fix PayPal Instant Payment Notification IPN?

Step 1: In your PayPal Account, go to my account –> profile – my setting tools – instant payment notifications – update – choose IPN settings. Step 2: Paste the notification URL given and enable the option “* Recive IPN messages”.

What is a PayPal IPN listener?

APICurrent. Instant Payment Notification (IPN) is a message service that notifies you of events related to PayPal transactions. You can use IPN messages to automate back-office and administrative functions, such as fulfilling orders, tracking customers, or providing status and other transaction-related information.

What is an IPN code?

The International Performer Number (IPN) is a unique universal identifier allocated to every single PPL-registered performer as well as performers registered with other collective management organisations (CMOs). This ID number is used to identify a performer in exchanges with other CMOs around the world.

How do I check my notifications on PayPal?

View IPN messages and details. Use the IPN History page on the PayPal website to view IPN messages sent to your listener URL from PayPal, and to request that messages be resent. Select the IPN messages to review. You can specify a date range, delivery status, and PayPal transaction ID.


1 Answers

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).

like image 102
Robert Avatar answered Oct 17 '22 13:10

Robert