IPN and PDT variables
Last updated: Aug 15th, 6:08am
PayPal returns variables for the following message types:
- Instant Payment Notification (IPN)
- Payment Data Transfer (PDT)
IPN and PDT variable names are case-sensitive. Most constant values are lowercase. The constant values for payment_status
have an initial capital letter.
IPN transaction types
Back-end or administrative processes can perform specific actions based on the kind of IPN message received. You can use the txn_type
variable in the message to trigger the kind of processing you want to perform.
Transaction Type txn_type | Description |
---|---|
— | Credit card chargeback if the case_type variable contains chargeback . |
adjustment | A dispute has been resolved and closed. |
cart | Payment received for multiple items; source is Express Checkout or the PayPal Shopping Cart. |
express_checkout | Payment received for a single item; source is Express Checkout. |
masspay | Payment sent using Mass Pay. |
merch_pmt | Monthly subscription paid for Website Payments Pro, Reference transactions, or Billing Agreements. |
mp_cancel | Billing agreement canceled. |
new_case | A new dispute was filed. |
payout | A payout related to a global shipping transaction was completed. |
pro_hosted | Payment received; source is Website Payments Pro Hosted Solution. |
recurring_payment | Recurring payment received. |
recurring_payment_expired | Recurring payment expired. |
recurring_payment_failed | Recurring payment failed. This transaction type is sent if:
|
recurring_payment_profile_cancel | Recurring payment profile canceled. |
recurring_payment_profile_created | Recurring payment profile created. |
recurring_payment_skipped | Recurring payment skipped; it will be retried up to 3 times, 5 days apart. |
recurring_payment_suspended | Recurring payment suspended. This transaction type is sent if PayPal tried to collect a recurring payment, but the related recurring payments profile has been suspended. |
recurring_payment_suspended_due_to_max_failed_payment | Recurring payment failed and the related recurring payment profile has been suspended. This transaction type is sent if:
|
send_money | Payment received; source is the Send Money tab on the PayPal website. |
subscr_cancel | Subscription canceled. |
subscr_eot | Subscription expired. |
subscr_failed | Subscription payment failed. |
subscr_modify | Subscription modified. |
subscr_payment | Subscription payment received. |
subscr_signup | Subscription started. |
virtual_terminal | Payment received; source is Virtual Terminal. |
web_accept | Payment received; source is any of the following:
|
Transaction and notification-related
The following variables identify the merchant that receives a payment or notification and include transaction-specific information.
Variable Name | Description |
---|---|
business | Email address or account ID of the payment recipient (that is, the merchant). Equivalent to the values of receiver_email (if payment is sent to primary account) and business set in the Website Payment HTML. Length: 127 characters. |
charset | Character set. |
custom | Custom value as passed by you, the merchant. These are pass-through variables that are never presented to your customer. Length: 255 characters. |
ipn_track_id | Internal; only for use by MTS. |
notify_version | Message's version number. |
parent_txn_id | In the case of a refund, reversal, or canceled reversal, this variable contains the txn_id of the original transaction, while txn_id contains a new ID for the new transaction. Length: 19 characters. |
receipt_id | Unique ID generated during guest checkout (payment by credit card without logging in). |
receiver_email | Primary email address of the payment recipient (the merchant). If the payment is sent to a non-primary email address on your PayPal account, the receiver_email is still your primary email. Length: 127 characters. |
receiver_id | Unique account ID of the payment recipient. For example, the merchant). This is the same as the recipient's referral ID. Length: 13 characters. |
resend | Whether this IPN message was resent (equals true ); otherwise, this is the original message. |
residence_country | ISO 3166 country code associated with the country of residence. Length: 2 characters. |
test_ipn | Whether the message is a test message. Value is: 1 — the message is directed to the sandbox. |
txn_id | The merchant's original transaction identification number for the payment from the buyer, against which the case was registered. |
txn_type | The kind of transaction for which the IPN message was sent. |
verify_sign | Encrypted string used to validate the authenticity of the transaction. |
Buyer information
Buyer information identifies the payer by payer ID or email address. Extra contact or shipping information may be provided.
Variable Name | Description |
---|---|
address_country | Country of customer's address. Length: 64 characters. |
address_city | City of customer's address. Length: 40 characters. |
address_country_code | ISO 3166 country code associated with customer's address. Length: 2 characters. |
address_name | Name used with address (included when the customer provides a Gift Address). Length: 128 characters. |
address_state | State of customer's address. Length: 40 characters. |
address_status | Whether the customer provided a confirmed address. Value is:
|
address_street | Customer's street address. Length: 200 characters. |
address_zip | Zip code of customer's address. Length: 20 characters. |
contact_phone | Customer's telephone number. Length: 20 characters. |
first_name | Customer's first name. Length: 64 characters. |
last_name | Customer's last name. Length: 64 characters. |
payer_business_name | Customer's company name, if customer is a business. Length: 127 characters. |
payer_email | Customer's primary email address. Use this email to provide any credits. Length: 127 characters. |
payer_id | Unique customer ID. Length: 13 characters. |
Payment information
Payment information identifies the amount and status of a payment transaction, including fees.
Variable Name | Description |
---|---|
auth_amount | Authorization amount. |
auth_exp | Authorization expiration date and time in the following format: HH:MM:SS DD Mmm YY, YYYY PST Length: 28 characters. |
auth_id | Authorization identification number. Length: 19 characters. |
auth_status | Status of authorization. |
discount | The total discount to be applied to a shopping cart in the currency of mc_currency . |
echeck_time_processed | The time an eCheck was processed; for example, when the status changes to Success or Completed. The format is: hh:mm:ss MM DD, YYYY ZONE . For example, 04:55:30 May 26, 2011 PDT . |
exchange_rate | Exchange rate used if a currency conversion occurred. |
fraud_management_pending_filters_x | One or more filters that identify a triggering action associated with one of the following payment_status values: Pending, Completed, Denied, where x is a number starting with 1 that makes the IPN variable name unique; x is not the filter's ID number. The filters and their ID numbers:
|
invoice | Pass-through variable you can use to identify your Invoice Number for this purchase. If omitted, no variable is passed back. Length: 127 characters. |
item_namex | Item name as passed by you, the merchant. Or, if not passed by you, as entered by your customer. If this is a shopping cart transaction, PayPal appends the number of the item. For example, item_name1 , item_name2 , and so on. Length: 127 characters. |
item_numberx | Pass-through variable for you to track purchases. It will get passed back to you at the completion of the payment. If omitted, no variable will be passed back to you. If this is a shopping cart transaction, PayPal will append the number of the item. For example, item_number1 , item_number2 , and so on. Length: 127 characters. |
mc_currency |
|
mc_fee | Transaction fee associated with the payment. mc_gross minus mc_fee equals the amount deposited into the receiver_email account. Equivalent to payment_fee for USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction fee. |
mc_gross | Full amount of the customer's payment, before transaction fee is subtracted. Equivalent to payment_gross for USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction. |
mc_gross_x | The amount of shopping cart detail item prior to discount. The amount is in the currency of mc_currency , where x is the shopping cart detail item number. The value of mc_gross_x is mc_gross minus discount . |
mc_handling | Total handling amount associated with the transaction. |
mc_shipping | Total shipping amount associated with the transaction. |
mc_shippingx | This is the combined total of shipping1 and shipping2 Website Payments Standard variables, where x is the shopping cart detail item number. The shippingx variable is only shown when the merchant applies a shipping amount for a specific item. Because profile shipping might apply, the sum of shippingx might not be equal to shipping . |
memo | Memo as entered by your customer in PayPal Website Payments note field. Length: 255 characters. |
num_cart_items | If this is a PayPal Shopping Cart transaction, number of items in cart. |
option_name1 | Option 1 name as requested by you. PayPal appends the number of the item where x represents the number of the shopping cart detail item. For example, option_name1 , option_name2 ). Length: 64 characters. |
option_name2 | Option 2 name as requested by you. PayPal appends the number of the item where x represents the number of the shopping cart detail item. For example, option_name2 , option_name2 ). Length: 64 characters. |
option_selection1 | Option 1 choice as entered by your customer. PayPal appends the number of the item where x represents the number of the shopping cart detail item. For example, option_selection1 , option_selection2 ). Length: 200 characters. |
option_selection2 | Option 2 choice as entered by your customer. PayPal appends the number of the item where x represents the number of the shopping cart detail item. For example, option_selection1 , option_selection2 ). Length: 200 characters. |
payer_status | Whether the customer has a verified PayPal account.
|
payment_date | The PayPal-generated time and date stamp in the format HH:MM:SS Mmm DD, YYYY PDT . Length: 28 characters. |
payment_fee | USD transaction fee associated with the payment. payment_gross minus payment_fee equals the amount deposited into the receiver email account. Is empty for non-USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction fee. |
payment_fee_x | If the payment is USD, then the value is the same as that for mc_fee_ x, where x is the record number; if the currency is not USD, then this is an empty string. |
payment_gross | Full USD amount of the customer's payment, before transaction fee is subtracted. Will be empty for non-USD payments. This is a deprecated field replaced by mc_gross . If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction. |
payment_gross_x | If the payment is USD, then the value for this is the same as that for the mc_gross_x , where x is the record number the mass pay item. If the currency is not USD, this is an empty string. |
payment_status | The status of the payment:
|
payment_type | echeck : This payment was funded with an eCheck. instant : This payment was funded with PayPal balance, credit card, or instant transfer. |
pending_reason | This variable is set only if payment_status is Pending :
|
protection_eligibility | The status of the seller's protection eligibility. Possible values: Eligible , Ineligible , Partially Eligible—Unauth Only , PartiallyEligible , None , Active Fraud Control—Unauth Premium Eligible . |
quantity | Quantity as entered by your customer or as passed by you, the merchant. If this is a shopping cart transaction, PayPal appends the number of the item. For example, quantity1 , quantity2 ). |
reason_code | This variable is set if payment_status is Reversed , Refunded , Canceled_Reversal , or Denied :
|
remaining_settle | Remaining amount that can be captured with Authorization and Capture. |
settle_amount | Amount that is deposited into the account's primary balance after a currency conversion from automatic conversion (through your Payment Receiving Preferences) or manual conversion (through manually accepting a payment). |
settle_currency | Currency of settle_amount . |
settlement_fee_amt | The transaction fee associated with the payment in the settlement currency. Applicable only for use cases where the PayPal fee is charged in the settlement currency. |
settlement_fee_currencycode | Currency of settlement_fee_amt . |
shipping | Shipping charges associated with this transaction. Format: unsigned, no currency symbol, two decimal places. |
shipping_method | The name of a shipping method from the Shipping Calculations section of the merchant's account profile. The buyer selected the named shipping method for this transaction. |
tax | Amount of tax charged on payment. PayPal appends the number of the item. For example, item_name1 , item_name2 ). The tax x variable is included only if there was a specific tax amount applied to a particular shopping cart item. Because total tax may apply to other items in the cart, the sum of taxx might not total to tax . |
transaction_entity | Authorization and Capture transaction entity. |
Auction
The following variables contain information about an auction.
Variable Name | Description |
---|---|
auction_buyer_id | The customer's auction ID. Length: 64 characters. |
auction_closing_date | The auction's close date in the format HH:MM:SS Mmm DD, YYYY PDT . Length: 28 characters. |
auction_multi_item | The number of items purchased in multi-item auction payments. It enables you to count the mc_gross or payment_gross for the first IPN you receive from a multi-item auction (auction_multi_item ), since each item from the auction will generate an Instant Payment Notification showing the amount for the entire auction. |
for_auction | This is an auction payment—payments made using Pay for eBay Items or Smart Logos—as well as Send Money/Money Request payments with the type eBay items or Auction Goods (non-eBay). |
Mass pay
The following variables contain information about mass payments, including transaction status, transaction amounts, and fees.
Variable Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
masspay_txn_id_x | For Mass Payments, a unique transaction ID generated by the PayPal system, where x is the record number of the mass pay item. Length: 19 characters. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mc_currency_x | For Mass Payments, the currency of the amount and fee, where x is the record number the mass pay item. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mc_fee_x | For Mass Payments, the transaction fee associated with the payment, where x is the record number the mass pay item. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mc_gross_x | The gross amount for the amount, where x is the record number the mass pay item. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mc_handlingx | The x is the shopping cart detail item number. The handling_cart cart-wide Website Payments variable is also included in the mc_handling variable; for this reason, the sum of mc_handlingx might not be equal to mc_handling . | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
payment_date | For Mass Payments, the first IPN is the date and time when the record set is processed in the format HH:MM:SS Mmm DD, YYYY PDT . Length: 28 characters. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
payment_status | Completed : For Mass Payments, this means that all of your payments have been claimed, or after a period of 30 days, unclaimed payments have been returned to you. Denied : For Mass Payments, this means that your funds were not sent and the Mass Payment was not initiated. This may have been caused by lack of funds. Processed : Your Mass Payment has been processed and all payments have been sent. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
reason_code_x | This variable is set only if status = Failed .
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
receiver_email_x | For Mass Payments, the primary email address of the payment recipient, where x is the record number of the mass pay item. Length: 127 characters. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
status_x | For Mass Payments, the status of the payment, where x is the record number:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
unique_id_x | For Mass Payments, the unique ID from input, where x is the record number. This allows the merchant to cross-reference the payment. Length: 13 characters. |
Recurring payments
The following variables identify the amounts and status associated with recurring transactions.
Variables | Profile created message | Recurring payment message |
---|---|---|
Basic Information | ||
business | X | |
receiver_email | X | X |
receiver_id | X | |
Transaction Information | ||
payment_status | X | |
payment_type | X | |
payment_date | X | |
txn_id | X | |
initial_payment_status | X | |
initial_payment_txn_id | X | |
txn_type | recurring_payment_profile_created | recurring_payment |
Currency and Exchange | ||
mc_gross | X | |
mc_fee | X | |
mc_currency | X | |
payment_gross | X | |
currency_code | X | X |
payment_fee | X | |
Buyer Information | ||
first_name | X | X |
last_name | X | X |
address_name | X | |
address_street | X | |
address_city | X | |
address_state | X | |
address_zip | X | |
address_country | X | |
payer_email | X | X |
payer_id | X | X |
payer_status | X | X |
residence_country | X | X |
address_country_code | X | |
address_status | X | |
Recurring Payment | ||
recurring_payment_id | X | X |
rp_invoice_id | X | X |
product_name | X | X |
product_type | X | X |
period_type | X | X |
payment_cycle | X | X |
outstanding_balance | X | X |
amount_per_cycle | X | X |
initial_payment_amount | X | X |
profile_status | X | X |
amount | X | X |
time_created | X | X |
next_payment_date | X | X |
Other Information | ||
notify_version | X | X |
charset | X | X |
Reference Transaction and Billing Agreements
Reference Transaction and Billing Agreements information identifies items about the transaction and billing agreement set by the merchant.
Variable Name | Description |
---|---|
address_country | Country of customer's address. Length: 64 characters. |
address_city | City of customer's address. Length: 40 characters. |
address_country_code | ISO 3166 country code associated with customer's address. Length: 2 characters. |
address_name | Name used with address (included when the customer provides a Gift Address). Length: 128 characters. |
address_state | State of customer's address. Length: 40 characters. |
address_status | Whether the customer provided a confirmed address. Possible values are confirmed and unconfirmed . |
address_street | Customer's street address. Length: 200 characters. |
address_zip | Zip code of customer's address. Length: 20 characters. |
business | Email address or account ID of the payment recipient (that is, the merchant). Equivalent to the values of receiver_email (if payment is sent to primary account) and business set in the Website Payment HTML. Length: 127 characters. |
charset | Character set. |
custom | Custom value as passed by you, the merchant. These are pass-through variables that are never presented to your customer. Length: 255 characters |
discount | The total discount to be applied to a shopping cart in the currency of mc_currency . |
first_name | Customer's first name. Length: 64 characters. |
invoice | Pass-through variable you can use to identify your invoice number for the purchase. If omitted, no variable is passed back. Length: 127 characters. |
item_namex | Item name as passed by you, the merchant. Or, if not passed by you, as entered by your customer. If this is a shopping cart transaction, PayPal will append the number of the item. For example, item_name1 , item_name2 . Length: 127 characters. |
item_numberx | Pass-through variable for you to track purchases. It will get passed back to you at the completion of the payment. If omitted, no variable will be passed back to you. If this is a shopping cart transaction, PayPal will append the number of the item. For example, item_number1 , item_number2 . Length: 127 characters. |
last_name | Account holder's last name. |
mc_currency |
|
mc_fee | Transaction fee associated with the payment. mc_gross minus mc_fee equals the amount deposited into the receiver_email account. Equivalent to payment_fee for USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction fee. |
mc_gross | Full amount of the customer's payment, before transaction fee is subtracted. Equivalent to payment_gross for USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction. |
mc_handling | Total handling amount associated with the transaction. |
mc_shipping | Total shipping amount associated with the transaction. |
memo | Memo as entered by your customer in PayPal Website Payments Pro note field. Length: 255 characters. |
mp_currency | The merchants primary currency. |
mp_custom | Custom text passed by the merchant during DoReferenceTransaction call at creation. |
mp_cycle_start | The month and day the agreement was created. |
mp_desc | The agreement description set in SetExpressCheckout call. |
mp_id | The encrypted billing agreement ID. |
mp_notification | Sent to the merchant when an account is locked. All billing agreements for the account are canceled. |
mp_pay_type | The accepted payment type. Possible values are INSTANT , ANY , and ECHECK . |
mp_status | The agreement status. Possible values are A for an active agreement and I for an inactive agreement (equivalent to canceled). |
notify_version | Message's version number. |
num_cart_items | If this is a PayPal Shopping Cart transaction, number of items in cart. |
payer_email | Customer's primary email address. Use this email to provide any credits. Length: 127 characters. |
payer_id | Unique customer ID. Length: 13 characters. |
payer_status | Whether the customer has a verified PayPal account. Possible values are verified or unverified . |
payment_date | The PayPal-generated time and date stamp in the format HH:MM:SS Mmm DD, YYYY PDT . Length: 28 characters. |
payment_fee | USD transaction fee associated with the payment. payment_gross minus payment_fee equals the amount deposited into the receiver email account. Is empty for non-USD payments. If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction fee. |
payment_type | echeck : This payment was funded with an eCheck. instant : This payment was funded with PayPal balance, credit card, or Instant Transfer. |
payment_gross | Full USD amount of the customer's payment, before transaction fee is subtracted. Will be empty for non-USD payments. This is a deprecated field replaced by mc_gross . If this amount is negative, it signifies a refund or reversal, and either of those payment statuses can be for the full or partial amount of the original transaction. |
protection_eligibility | The status of the seller's protection eligibility. Possible values: Eligible , Ineligible , Partially Eligible—Unauth Only , PartiallyEligible , None , Active Fraud Control—Unauth Premium Eligible . |
quantityx | Quantity as entered by your customer or as passed by you, the merchant. If this is a shopping cart transaction, PayPal appends the number of the item. For example, quantity1 , quantity2 ). |
receiver_email | Primary email address of the payment recipient (that is, the merchant). If the payment is sent to a non-primary email address on your PayPal account, the receiver_email is still your primary email. Length: 127 characters. |
receiver_id | Unique account ID of the payment recipient. For example, the merchant). This is the same as the recipient's referral ID. Length: 13 characters. |
residence_country | ISO 3166 country code associated with the country of residence. Length: 2 characters |
shipping_discount | The discount amount for shipping charges in amount, not percentage. |
shipping_method | The name of a shipping method from the Shipping Calculations section of the merchant's account profile. The buyer selected the named shipping method for this transaction. |
tax | Amount of tax charged on payment. PayPal appends the number of the item. For example, item_name1 , item_name2 ). The taxx variable is included only if there was a specific tax amount applied to a particular shopping cart item. Because total tax may apply to other items in the cart, the sum of taxx might not total to tax . |
transaction_subject | A note or memo for the transaction. Applicable only after notify_version >=2.6 . |
txn_id | The merchant's original transaction identification number for the payment from the buyer, against which the case was registered. |
txn_type | The type of transaction. Possible values are merch_pmt , mp_cancel , and mp_signup . |
verify_sign | Encrypted string used to validate the authenticity of the transaction. |
Subscription
Subscription information identifies the amounts and parameters associated with subscription transactions.
Variable Name | Description |
---|---|
amount1 | (Optional) Amount of payment for trial period 1 for USD payments; otherwise blank. |
amount2 | (Optional) Amount of payment for trial period 2 for USD payments; otherwise blank. |
amount3 | Amount of payment for regular subscription period for USD payments; otherwise blank. |
mc_amount1 | (Optional) Amount of payment for trial period 1, regardless of currency. |
mc_amount2 | (Optional) Amount of payment for trial period 2, regardless of currency. |
mc_amount3 | Amount of payment for regular subscription period, regardless of currency. |
password | (Optional) Password generated by PayPal and given to subscriber to access the subscription (password will be encrypted). Length: 24 characters. |
period1 | (Optional) Trial subscription interval in days, weeks, months, years (example: a 4 day interval is "period1: 4 D"). |
period2 | (Optional) Trial subscription interval in days, weeks, months, or years. |
period3 | Regular subscription interval in days, weeks, months, or years. |
reattempt | Indicates whether reattempts should occur upon payment failures. 1 is yes, blank is no. |
recurring | Indicates whether regular rate recurs. 1 is yes, blank is no. |
retry_at | Date PayPal will retry a failed subscription payment. |
subscr_date | Start date or cancellation date depending on whether transaction is subscr_signup or subscr_cancel . Time/Date stamp generated by PayPal in the format HH:MM:SS Mmm DD, YYYY PDT . |
subscr_effective | Date when the subscription modification will be effective (only for txn_type = subscr_modify ). Time/Date stamp generated by PayPal in the format HH:MM:SS Mmm DD, YYYY PDT |
subscr_id | ID generated by PayPal for the subscriber. Length: 19 characters. |
username | (Optional) Username generated by PayPal and given to subscriber to access the subscription. Length: 64 characters |
Summary of subscription variables
Variable | Signup | Cancel | Modify | USD Payment | Multi-CurrencyPayment | Refund | Failed | EOT |
---|---|---|---|---|---|---|---|---|
Basic Information | ||||||||
business | X | X | X | X | X | X | X | |
receiver_email | X | X | X | X | X | X | X | |
receiver_id | X | X | ||||||
item_name | X | X | X | X | X | X | X | |
item_number | X | X | X | X | X | X | X | |
Advanced and Custom Information | ||||||||
invoice | X | X | X | X | X | X | X | |
custom | X | X | X | X | X | X | X | |
option_name1 | X | X | X | X | X | X | X | |
option_selection1 | X | X | X | X | X | X | X | |
option_name2 | X | X | X | X | X | X | X | |
option_selection2 | X | X | X | X | X | X | X | |
Transaction Information | ||||||||
payment_status | X | X | X | |||||
pending_reason | X | X | ||||||
reason_code | X | X | ||||||
payment_date | X | X | ||||||
txn_id | X | X | ||||||
parent_txn_id | X | X | ||||||
txn_type | subscr_ | subscr_ | subscr_ | subscr_payment | subscr_ | subscr_eot | ||
Currency and Exchange information | ||||||||
mc_gross | X | X | ||||||
mc_fee | X | X | ||||||
mc_currency | X | X | X | X | X | X | X | |
settle_amount | X | X | ||||||
exchange_rate | X | X | ||||||
payment_gross | X | X | X | |||||
payment_fee | X | |||||||
Buyer Information | ||||||||
first_name | X | X | X | X | X | X | X | |
last_name | X | X | X | X | X | X | X | |
payer_business_name | X | X | X | X | X | X | ||
address_name | X | X | X | X | X | X | ||
address_street | X | X | X | X | X | X | ||
address_city | X | X | X | X | X | X | ||
address_state | X | X | X | X | X | X | ||
address_zip | X | X | X | X | X | X | ||
address_ | X | X | X | X | X | X | ||
payer_email | X | X | X | X | X | X | X | |
payer_id | X | X | X | X | X | X | X | |
payer_status | X | X | X | X | X | X | X | |
payment_type | X | X | ||||||
Subscription Information | ||||||||
subscr_date | X | X | X | |||||
subscr_ | X | |||||||
period1 | X | X | X | |||||
period2 | X | X | X | |||||
period3 | X | X | X | |||||
amount1 | X | X | X | |||||
amount2 | X | X | X | |||||
amount3 | X | X | X | |||||
mc_amount1 | X | X | X | |||||
mc_amount2 | X | X | X | |||||
mc_amount3 | X | X | X | |||||
recurring | X | X | X | |||||
reattempt | X | X | X | |||||
retry_at | X | |||||||
recur_times | X | X | X | |||||
username | X | X | X | X | X | X | X | |
password | X | X | X | X | X | X | X | |
subscr_id | X | X | X | X | X | X | X |
Dispute resolution
The following variables identify the case ID and status of a dispute.
Variable Name | Description |
---|---|
buyer_additional_information | Notes the buyer entered into the Resolution Center. |
case_creation_date | Date and time case was registered in the format HH:MM:SS Mmm DD, YYYY PDT . |
case_id | Case identification number.
|
case_type |
|
reason_code | Reason for the case. Values for case_type set to complaint or dispute :
case_type set to chargeback :
|
Global shipping program message
PayPal generates an IPN message for transactions related to eBay's Global Shipping Program. These messages relate to the third party logistics (3PL) domestic fulfillment center address where merchants should ship merchandise for buyers.
Variable | Description |
---|---|
fulfillment_address_country | Country of fulfillment center address. Length: 64 characters. |
fulfillment_address_city | City of fulfillment center address. Length: 40 characters. |
fulfillment_address_country_code | ISO 3166 country code associated with fulfillment center address. Length: 2 characters. |
fulfillment_address_name | Name used with fulfillment center address. Length: 128 characters. |
fulfillment_address_state | State of fulfillment center address. Length: 40 characters. |
fulfillment_address_street | Street of fulfillment center address. Length: 200 characters. |
fulfillment_address_zip | Zip code of fulfillment center address. Length: 20 characters. |
Pay message
PayPal generates an IPN message that contains information about the pay request or payment in response to the Adaptive Payments Pay
and ExecutePayment
API operations.
Variable | Description |
---|---|
transaction_type | The type of transaction. Value is:
|
status | The status of the payment. Value is:
|
sender_email | Sender's email address. |
action_type | Whether the Pay API is used with or without the SetPaymentOptions and ExecutePayment API operations. Value is:
|
payment_request_date | The date on which the payment request was initiated. |
reverse_all_parallel_payments_on_error | Whether the payment request specified to reverse parallel payments if an error occurs. Value is:
|
transaction[n].id | The transaction ID, where [n] is a number from 0 to 5. For simple, single receiver payments, this number will be 0. Numbers larger than 0 indicate the payment to a particular receiver in chained and parallel payments. |
transaction[n].status | The transaction status, where [n] is a number from 0 to 5. For simple single-receiver payments, this number will be 0. Numbers larger than 0 indicate the payment to a particular receiver in chained and parallel payments. Value is:
|
transaction[n].id_for_sender | The transaction ID for the sender, where [n] is a number from 0 to 5. For simple, single receiver payments, this number will be 0. Numbers larger than 0 indicate the payment to a particular receiver in chained and parallel payments. |
transaction[n].status_for_sender_txn | The transaction status, where [n] is a number from 0 to 5. For simple single-receiver payments, this number will be 0. Numbers larger than 0 indicate the payment to a particular receiver in chained and parallel payments. Value is:
|
transaction[n].refund_id | The identification number for the refund. |
transaction[n].refund_amount | The amount that was refunded. |
transaction[n].refund_account_charged | The email address of the debit account of the refund. |
transaction[n].receiver | The receiver's email address for the transaction. |
transaction[n].invoiceId | The invoice number for this transaction. |
transaction[n].amount | The payment amount of the transaction. |
transaction[n].is_primary_receiver | Whether there is a primary receiver for this transaction, which indicates whether the transaction is a chained payment. Value is:
|
return_url | The URL to which the sender's browser is redirected after approving a payment on paypal.com. Use the pay key to identify the payment: `payKey=$ payKey ` . |
cancel_url | The URL to which the sender's browser is redirected if the sender cancels the approval for a payment on paypal.com. Use the pay key to identify the payment: `payKey=$ payKey ` . |
ipn_notification_url | The URL to which all IPN messages for this payment are sent. |
pay_key | The pay key that identifies this payment. This is a token that is assigned by the Pay API after a PayRequest message is received and can be used in other Adaptive Payments APIs as well as the cancelURL and returnURL to identify this payment. The pay key is valid for 3 hours. |
memo | A note associated with the payment. |
fees_payer | The payer of PayPal fees. Value is:
|
trackingId | The tracking ID that was specified for this payment in the PaymentDetailsRequest message. |
preapproval_key | The preapproval key returned after a PreapprovalRequest , or the preapproval key that identifies the preapproval key sent with a PayRequest . |
reason_code | Whether this transaction is a chargeback, partial, or reversal. Value is:
|
Preapproval message
PayPal generates an IPN message that contains information about a preapproval in response to the Adaptive Payments Preapproval
API operation.
Variable | Description |
---|---|
transaction_type | The type of transaction. For a preapproval, this variable returns Adaptive Payment Preapproval . |
preapproval_key | The preapproval key returned after a PreapprovalRequest . |
approved | Whether the preapproval request was approved. Value is:
|
cancel_url | The URL to which the sender's browser is redirected if the sender decides to cancel the preapproval as requested. Use the preapproval key to identify the payment: preapprovalKey=`$ preapprovalKey ` . |
current_number_of_payments | The current number of payments made for this preapproval. |
current_total_amount_of_all_payments | The current total of payments made for this preapproval. |
current_period_attempts | The current number of attempts this period for this preapproval. |
currency_code | The currency code. Value is:
|
date_of_month | The day of the month on which a monthly payment is to be made. A number between 1 and 31 indicates the day of the month. A value of 0 indicates that the payment can be made on any day. |
day_of_week | The day of the week that a weekly payment is to be made. Value is:
|
starting_date | First date for which the preapproval is valid. |
ending_date | Last date for which the preapproval is valid. Time is currently not supported. |
max_total_amount_of_all_payments | The pre-approved maximum total amount of all payments. |
max_amount_per_payment | The pre-approved maximum amount of all payments. |
max_number_of_payments | The maximum number of payments that is pre-approved. |
payment_period | The payment period. Value is:
|
pin_type | Whether a personal identification number (PIN) is required. Value is:
|
sender_email | The sender's email address. |
PDT-specific
PDT variables have the same names as IPN variables. Some variables, however, apply only to PDT.
Variable | Description |
---|---|
amt | Amount of the transaction. |
cc | Currency code. |
cm | Custom message. |
sig | |
st | Transaction status. |
tx | Transaction ID/PDT token. |