For the complete documentation index, see llms.txt. This page is also available as Markdown.

IPN parameters

Overview

Depending on your IPN settings, notifications contain all or a subset of the available parameters.

2Checkout sends IPN parameters exemplified in this article.

2Checkout continues to add new IPN parameters on an ongoing basis. To include additional information in the notifications, enable the new parameters in the IPN settings page, in your Merchant Control Panel.

Some parameters might behave differently depending on the payment method. For example, parameter MESSAGE_TYPE behaves differently on the SEPA Direct debit flow, therefore the values for the parameters received are different than those in the table below. Parameter values for the Credit card flow: "ORDERSTATUS": "PAYMENT_RECEIVED" / "MESSAGE_TYPE": "APPROVED". Parameter values for the SEPA Direct debit flow: "ORDERSTATUS": "PAYMENT_RECEIVED" / "MESSAGE_TYPE": "PROCESSING".

IPN Parameters

Parameter
Description
Type/Length

GIFT_ORDER

Allows shoppers to gift the subscription/product acquired to the recipient specified using the delivery details during the purchase process. Possible values: - 0 – Not a gift order. - 1 – Gift order. The subscription/product is a gift.

Integer/1

SALEDATE

Y-m-d H:i:s. The datetime stamp when shoppers place orders (e.g.: 2008-06-22 19:33:28) (e.g.: 2013-12-01 01:00:24)

String/19

PAYMENTDATE

Y-m-d H:i:s. The datetime stamp when payment processors authorize a transaction for an order 2Checkout approved (e.g.: 2008-06-22 14:30:24) (e.g.: 2013-12-01 01:00:24)

String/19

COMPLETE_DATE

Y-m-d H:i:s. The datetime stamp when orders reach Complete status (2Checkout received payments and marked the order as fulfilled, if necessary). (e.g.: 2008-06-22 14:41:30) (e.g.: 2013-12-01 01:00:24)

String/19

REFNO

Unique, system-generated 2Checkout order reference.

Integer/9

REFNOEXT

The order reference code (max. 100 chars) you control. You can attach an external reference number to orders during the purchase process.

String/100

SHOPPER_REFERENCE_NUMBER

The internal reference number your customers assign to orders during the checkout process. Customers using Purchase Orders (POs) as the payment method during the ordering process have the option of setting identifiers for their orders to track and manage purchases in their own system.

String/255

ORIGINAL_REFNOEXT

Available for subscription renewals. Array of REFNOEXT (the external order reference - max. 100 chars) values set for the initial orders when the subscriptions were first acquired.

String/100

ORDERNO

Order counter (numeric, incremental). Visible in your account in the Order search area.

Integer

ORDERSTATUS

Current order status. Possible values are: • PENDING - Order placed, waiting bank authorization. • PAYMENT_AUTHORIZED – The bank authorized the payment. • SUSPECT – 2Checkout is reviewing the order having flagged it as a potential fraud attempt. Note: Not available by default. Contact 2Checkout directly to start receiving this order status. • INVALID – Invalid Billing/Delivery information. • COMPLETE – 2Checkout marked the order as complete. • REFUND – 2Checkout refunded the money paid back to the shopper. 2Checkout can only refund complete orders. • REVERSED – 2Checkout reversed a transaction and released the money back to the customer. 2Checkout can only reverse authorized orders that never reach the complete status. • PURCHASE_PENDING – Sent for orders placed using Purchase Orders after you approve the PO. 2Checkout is waiting for the customer to make the payment. • PAYMENT_RECEIVED – 2Checkout sends this notification when it received payment for orders with offline payment methods such as bank/wire transfer. • CANCELED - The 2Checkout system sends out notifications when: - 2Checkout representatives cancel eStore orders (only for orders that are not authorized/paid, otherwise a reverse or refund action is required). - Partner (Channel Manager) orders you cancel yourself. • PENDING_APPROVAL - 2Checkout has yet to approve this order.

String/22

PAYMETHOD

Order payment method.

String/255

PAYMETHOD_CODE

Payment method code. Possible values: (see table below)

String/250

CARD_TYPE

Shopper card type. When shoppers use multiple cards, 2Checkout includes the type of the last card used in the IPN - e.g. "Visa". Empty for non-card transactions.

String/255

CARD_LAST_DIGITS

The last 4 digits of the shopper credit/debit card. When shoppers use multiple cards, 2Checkout includes the last four digits of the last card used in the IPN - e.g. "Visa". Empty for non-card transactions.

String/4

CARD_EXPIRATION_DATE

MM/YY. Card expiration month and the year.

String/5

FX_RATE

Value of the exchange rate locked when the order reaches the Complete status. Includes the 2Checkout markup.

Float Number/100

FX_MARKUP

2Checkout exchange rate markup.

Float Number/100

PAYABLE_AMOUNT

Net profit in payout currency.

Float Number/100

PAYOUT_CURRENCY

Your account's default payout currency.

String/3

SHIPPING_TRACKING_NO

The tracking number requested as optional information when the order was marked as shipped.

String

SHIPPING_COMMENTS

Additional information requested as optional when the order was marked as shipped.

String

SHIPPING_TRACKING_URL

The Tracking URL defined when creating a shipping method.

String

SHIPPING_METHOD_NAME

Name of the shipping method used during the order.

String

SHIPPING_STATUS

Order shipment status. Possible values: - TRUE - for shipped orders - FALSE - for orders that are not shipped

String

CHARGEBACK_RESOLUTION

Chargeback status information. Possible values: · OPEN (chargeback is in progress) · WON (chargeback won by you) · LOST (chargeback won by the customer) · ACCEPTED (you agreed to repay the value of the order to the customer) · NONE (no chargeback initiated for the order) To manage chargeback notifications navigate to Control Panel Dashboard →Integrations → Webhooks and API, and click on the IPN settings tab: https://secure.avangate.com/cpanel/ipn_settings.php. In the General IPN Settings section, under Triggers, make sure to check the boxes next to the following options: · chargeback open (2Checkout sends an IPN when shoppers open a chargeback dispute). · chargeback closed - (2Checkout sends an IPN when the parties involved resolve a chargeback dispute). Also, check the checkbox next to the CHARGEBACK_RESOLUTION parameter featured in the Response tags area.

String/8

CHARGEBACK_REASON_CODE

Identifier for the chargeback dispute reason from the 2Checkout system. Empty for orders with no chargeback dispute initiated. Possible values: - MERCHANDISE_NOT_RECEIVED - Order not fulfilled/not delivered - NOT_AS_DESCRIBED - Product(s) not as described/not functional - DUPLICATE_TRANSACTION - Duplicate order - FRAUD / NOT_RECOGNIZED - Fraud/Order not recognized - CREDIT_NOT_PROCESSED - Agreed refund not processed - NOT_RECOGNIZED - New/renewal order not recognized - AUTHORIZATION_PROBLEM - Authorization problem - INFO_REQUEST - Information request - UNKNOWN - Unknown - CANCELED_RECURRING - Recurring payment was canceled

String/24

TEST_ORDER

Possible values: • 1 - for test orders • 0 - for real orders

Integer/1

GATEWAY_RESPONSE

Forwards the payment gateway response received as a part of the card authorization process. Contact 2Checkout directly if the GATEWAY_RESPONSE parameter is not available in the list under the Notification Details area on the IPN settings page. Log into your Control Panel account and access this link to download a list of all gateway responses: https://secure.avangate.com/cpanel/help.php?view=resources&download=2Xrl83GnmbOBuXG1kb%2B2YQ%3D%3D

String/255

IPN_ORDER_ORIGIN

Source of the order placed. Possible values: - Automatic Billing - WEB - Mobile - API

String/17

REFUND_REASON

Refund reason. Possible values can be one of the refund reasons defined in the platform: - Chargeback - Duplicate order - Not satisfied with the product - Product not received - Unwanted auto-renewal - Technical issue with the product - Other - No reason If you have set your own refund reasons, the value corresponds to the reasons selected in the refund process from your customized reasons. Click here to learn how to customize your refund reasons: https://verifone.cloud/docs/2checkout/Documentation/27Refunds_and_chargebacks/Refunds/

String

FRAUD_STATUS

Possible values: - APPROVED for orders with a low fraud risk that passed the fraud screening. - DENIED for orders with high score risk that were automatically rejected by the fraud engine. - UNDER REVIEW for orders with a high fraud risk that require manual review and approval before the charge can be collected. - PENDING for orders that are yet to enter the fraud screening.

String/12

MESSAGE_ID

The number generated incrementally for each sequence of message type sent to a seller.

Integer

MESSAGE_TYPE

The name of the event triggering the notification. See the MESSAGE_TYPE possible values table below.

String

VENDOR_CODE

Unique merchant identifier generated by the 2Checkout system.

String

PROPOSAL_ID

The unique identifier of the proposal generating the order. Can be found in Order additional information as text.

String

TAX_EXEMPT_ID

The tax exempt ID issued by 2Checkout.

String

PAYMETHOD_CODE possible values:

Code
Description

CCVISAMC

Visa/MasterCard/Eurocard

WIRE

Wire transfer

CCAMEX

American Express

CCDINERS

Diners Club

CCJCB

JCB

CC_APPLE_PAY

Apple Pay

PAYPAL

PayPal

VENDOR2VENDOR

Vendor to vendor

PURCHASE_ORDER

Purchase order

DISCOVER

Discover/Novus

CHECK

Check

DIRECT_EBANKING

DIRECTebanking.com

CARTE_BLEUE

Carte Bleue

FREE

Payment not required

ALIPAY

支付宝 (Alipay)

DIRECT_DEBIT

Direct Debit

IDEAL

iDEAL

WEBMONEY

Webmoney

PAYNEARME

Cash at 7-Eleven/Family Dollar/ACE

WIRE_ARMS_RS

Bank/Wire transfer - Channel Manager

CCVISAMC_ARMS_RS

Visa/MasterCard/Eurocard - Channel Manager

CCAMEX_ARMS_RS

American Express - Channel Manager

PAYPAL_ARMS_RS

PayPal - Channel Manager

CHECK_ARMS_RS

Check - Channel Manager

BOLETO

Boleto/Pix

DANKORT

Dankort

ACH

ACH

CC_INSTALLMENTS

Installments

DIRECT_DEBIT_UK

Direct Debit UK

UNIONPAY

UnionPay

TRIALPAY

TrialPay Checkout

CCELO

Elo Card

CCHIPERCARD

Hipercard

OPPOHJOLA

OP-Pohjola

NORDEA

Nordea

DANSKE

Danske

TRUSTLY

Trustly

WE_CHAT_PAY

WeChat Pay

TRUSTPAY

Trustpay

SKRILL_WALLET

Skrill Wallet

NETELLER

Neteller

CUSTOMER BILLING INFORMATION

Field
Type/Length

FIRSTNAME

Customer first name

LASTNAME

Customer last name

COMPANY

Company Name

REGISTRATIONNUMBER

Company registration number

FISCALCODE

Company VAT ID / Tax ID

CBANKNAME

Company bank name

CBANKACCOUNT

Company bank account

ADDRESS1

Address

ADDRESS2

More address information

CITY

City

STATE

State/County

ZIPCODE

Zip code

COUNTRY

Country

COUNTRY_CODE

Country code

PHONE

Phone number

FAX

Fax number

CUSTOMEREMAIL

Customer email address

CUSTOMER DELIVERY INFORMATION

Field
Type/Length

FIRSTNAME_D

First name

LASTNAME_D

Last name

COMPANY_D

Company name

ADDRESS1_D

Address

ADDRESS2_D

Extra address information

CITY_D

City

STATE_D

State/County

ZIPCODE_D

Zip code

COUNTRY_D

Country

COUNTRY_D_CODE

Country code

PHONE_D

Telephone number

EMAIL_D

Email address for delivery

IPADDRESS

Customer IP address

IPCOUNTRY

Country name, based on the user IP address

CUSTOM ORDER INFORMATION (selected highlights)

Parameter
Description

TIMEZONE_OFFSET

The time zone you selected or the default GMT+02:00 time zone of the 2Checkout system.

CURRENCY

Currency used in order. Possible values: USD, EUR, GBP. Depending on your account settings, other currencies might be available.

CUSTOM_PRICE

Array of strings. Allows you to see how the custom price is calculated and is included in the IPN message you receive after an order. It contains variables such as Product ID, License code, TYPE (GROSS/NET/empty), SOURCE_NAME, SOURCE_TYPE, DISCOUNT_VALUE, DISCOUNT_TYPE (PERCENT/FIXED), DISCOUNT_CURRENCY. Example: apache<br>[CUSTOM_PRICE] => Array<br>(<br>[31029265] => Array<br>(<br>[H17120HBAY] => Array<br>(<br>[AMOUNT] => 80<br>[TYPE] => NET<br>[CURRENCY] => USD<br>[SOURCE_NAME] => custom price regular<br>[SOURCE_TYPE] => PROMOTION<br>[DISCOUNT_VALUE] => 20<br>[DISCOUNT_TYPE] => FIXED<br>[DISCOUNT_CURRENCY] => USD<br>)<br>)<br>)<br>

LANGUAGE

Payment interface language. Current possible values include: ar, bg, cs, da, de, el, en, es, fa, fi, fr, he, hi, hr, hu, it, ja, ko, nl, no, pl, pt, pt-br, ro, ru, sk, sl, sr, sv, th, tr, zh, zy.

ORDERFLOW

The type of ordering flow used for placing the order. Available values: PURCHASE_ORDER, REGULAR.

IPN_PID[] / IPN_PNAME[] / IPN_PCODE[] / IPN_QTY[] / IPN_PRICE[] / IPN_VAT[] / IPN_VAT_RATE[]

Arrays describing products and pricing per-order line.

IPN_TOTALGENERAL

Total transacted sum, including shipping and VAT, using dot (.) as float separator, expressed in the same currency as the CURRENCY field.

IPN_SHIPPING

Shipping costs, expressed in the same currency as the CURRENCY field, using dot (.) as float separator.

IPN_GLOBALDISCOUNT

Global order discount. Optional, sent only for values greater than 0.

IPN_COMMISSION

2Checkout commission, using dot (.) as float separator.

IPN_CUSTOM_TEXT[] / IPN_CUSTOM_VALUE[]

Custom fields set per order and corresponding client input.

IPN_PRODUCT_OPTIONS_1234_*

Product option fields per product where 1234 represents the 2Checkout product ID. For usage scale pricing options groups, responses include units consumed (format examples provided in descriptions).

IPN_REFERRER

The last URL accessed by the shopper before landing in the 2Checkout cart.

IPN_LINK_SOURCE

The link source for the sales. The SRC parameter used to track every sale point generator.

IPN_RESELLER_ID / IPN_RESELLER_NAME / IPN_RESELLER_URL / IPN_RESELLER_COMMISSION

Affiliate/referrer information.

IPN_LICENSE_LIFETIME[]

Array indicating products purchased with lifetime/evergreen option. Values: YES/NO.

IPN_PARTNER_CODE

Empty = ecommerce order; otherwise partner code.

2CHECKOUT_CUSTOMER_REFERENCE

Default customer numerical (integer) IDs generated automatically by the 2Checkout system. See: https://secure.2checkout.com/cpanel/ipn_settings.php.

EXTERNAL_CUSTOMER_REFERENCE

Unique customer alphanumeric (string) identifiers that you control. See: https://secure.2checkout.com/cpanel/ipn_settings.php.

REFUND_TYPE

Describes refund type: TOTAL (entire sum) or PARTIAL (partial refund). Empty for non-refunds.

Various partner/margin/discount fields

IPN_PARTNER_MARGIN_PERCENT, IPN_PARTNER_MARGIN, IPN_EXTRA_MARGIN, IPN_EXTRA_DISCOUNT, IPN_COUPON_DISCOUNT, etc.

IPN_PROMOTION_CATEGORY[]

Array with the category of the promotions included in the order. Possible values: CROSS_SELLING, UPSELL, PROMOTION.

VALIDATION INFORMATION

Field
Description

IPN_DATE

IPN notification date in the YmdHis format. (ex: 20081117145935) (ex: 20131201010024)

HASH

Calculated HMAC_MD5 signature based on the sent IPN fields and the secret key. (Note: This parameter won't be used anymore for IPN validation as of 15th of August, 2024.)

SIGNATURE_SHA2_256

Calculated HMAC_SHA2_256 signature based on the sent IPN fields and the secret key.

SIGNATURE_SHA3_256

Calculated HMAC_SHA3_256 signature based on the sent IPN fields and the secret key.

IPN_PURCHASE_ORDER_INFO

Order status and details for Purchase order acquisitions.

IPN_ORIGINAL_LINK_SOURCE[]

Array of IPN_LINK_SOURCE values for the initial orders when the subscriptions were first acquired. Available for subscription renewals.

CUSTOM_FIELDS

Additional order fields (dynamic variables). In your Merchant Control Panel, navigate to Setup - Ordering options - Additional order fields: https://secure.2checkout.com/cpanel/additional_fields.php

MESSAGE_TYPE possible values

MESSAGE_TYPE
Trigger name (according to Merchant Control Panel)

PENDING

Pending orders.

PROCESSING

Orders waiting to be processed by 2Checkout system.

APPROVED

Authorized and approved orders (sent before electronic delivery).

AUTH

Authorized and approved orders (sent after electronic delivery).

APPROVED_DELIVERY

Order approved for delivery.

COMPLETE

Completed orders.

ORDER_UNDER_REVIEW

Orders under 2Checkout review.

SHOPPER_INVOICE

Invoice generated.

SUSPECT

Fraud suspect.

CANCELED

Canceled orders.

CHARGEBACK_OPEN

Chargeback open.

CHARGEBACK_CLOSED

Chargeback closed.

REFUND

Reversed and refund orders.

SEPA_REFUSAL

Direct Debit payment refused.

PURCHASE_PENDING

Approved

PURCHASE_REJECTED_BY_VENDOR

Rejected

PURCHASE_COMPLETE

Completed

PURCHASE_EXPIRED_NOT_PAID

Expired, not paid

PURCHASE_CANCELED_TIMEOUT

Canceled

PENDING_APPROVAL_ORDER_FOR_PARTNER

Pending approval orders from partners.

VENDOR_APPROVED

Approved orders from partners.

DELIVERED_ORDER_FOR_PARTNER

Delivered orders from partners.

Related links

Last updated

Was this helpful?