PayPal IPN Messages for Subscriptions
January 9, 2011
When paypal does an IPN POST for subscriptions, you'll actually get two different POST calls. One of these indicates that a new subscription has been taken out, the second indicates that a payment has been made.
The example values below are taken from Django code - a u
prefix on a string indicates unicode.
New Subscription
Here's the parameter names and sample values returned when a new subscription is taken out. If you have a free trial period - this is the only message you'll get.
- last_name: [u'User']
- receiver_email: [u'seller@email.com']
- residence_country: [u'US']
- payer_status: [u'verified']
- txn_type: [u'subscr_signup']
- first_name: [u'Test']
- item_name: [u'ITEM-NAME']
- charset: [u'windows-1252']
- notify_version: [u'3.0']
- recurring: [u'1']
- test_ipn: [u'1']
- item_number: [u'ITEM-NUMBER']
- business: [u'seller@email.com']
- payer_id: [u'R7J5OITW4XF9U']
- period3: [u'1 Y']
- verify_sign: [u'Av4.fsp0nq4UCdPPPPASEZ2dHjj.AGYVs-odtcwBkeEEdn-4EgJjjhgP']
- subscr_id: [u'I-CKXUYMANRT43']
- mc_amount3: [u'15.00']
- mc_currency: [u'GBP']
- subscr_date: [u'11:42:25 Jan 08, 2011 PST']
- payer_email: [u'payer@email.com']
- reattempt: [u'1']
Payment Made
Here's the POST variables passed when a payment is actually made.
- protection_eligibility: [u'Ineligible']
- last_name: [u'User']
- txn_id: [u'0YC516369S2964122']
- receiver_email: [u'seller@email.com']
- payment_status: [u'Completed']
- payment_gross: [u'']
- residence_country: [u'US']
- payer_status: [u'verified']
- txn_type: [u'subscr_payment']
- payment_date: [u'11:42:27 Jan 08, 2011 PST']
- first_name: [u'Test']
- item_name: [u'ITEM-NAME']
- charset: [u'windows-1252']
- notify_version: [u'3.0']
- transaction_subject: [u'']
- test_ipn: [u'1']
- item_number: [u'ITEM-NUMBER']
- receiver_id: [u'JYK86TFEZ88QW']
- business: [u'seller@email.com']
- payer_id: [u'R7J5QOBG4XF9U']
- verify_sign: [u'A5doFgi5CUrLKM9p3q55nRvVm.WRAUfKX.cX3x-2G5huaVGzV-9N27gl']
- subscr_id: [u'I-CKXUYMONRT43']
- payment_fee: [u'']
- mc_fee: [u'0.79']
- mc_currency: [u'GBP']
- payer_email: [u'buyer@email.com']
- payment_type: [u'instant']
- mc_gross: [u'15.00']