Skip to main content
knowledgecenter.avangate.com

IPN parameters

Depending on your IPN settings, notifications contain all or a subset of the available parameters. Avangate sends IPN parameters in the exact order exemplified in this article. Note: Avangate continues to add new IPN parameters on an ongoing basis. To include additional information in the notifications, enable new parameters in the IPN settings page.

ORDER PROCESSING INFORMATION

Type/Max 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 Avangate 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 (Avangate 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 Avangate 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.

 

ORDERSTATUS

Current order status. Possible values are:

• PENDING - Order placed, waiting bank authorization.

• PAYMENT_AUTHORIZED – The bank authorized the payment.

• SUSPECT – Avangate is reviewing the order having flagged it as a potential fraud attempt. Note: Not available by default. Contact Avangate directly to start receiving this order status.

• INVALID – Invalid Billing/Delivery information.

• COMPLETE – Avangate marked the order as complete.

• REFUND – Avangate refunded the money paid back to the shopper. Avangate can only refund complete orders.

• REVERSED – Avangate reversed a transaction and released the money back to the customer. Avangate 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. Avangate is waiting for the customer to make the payment.

• PAYMENT_RECEIVED – Avangate sends this notification when it received payment for orders with offline payment methods such as bank/wire transfer.

• CANCELED - The Avangate system sends out notifications when:

  • Avangate 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 - Avangate has yet to approve this order.

String/22

PAYMETHOD

Order payment method.

String/255

PAYMETHOD_CODE

Payment method code.

Possible values:

CCVISAMC

Visa/MasterCard/Eurocard

WIRE

Wire transfer

CCAMEX

American Express

CCDINERS

Diners Club

CCJCB

JCB

PAYPAL

PayPal

FAX

Payment information by Fax

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

GIROPAY

Giropay

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 Bancario

YAHOOWALLET

Yahoo Wallet

DANKORT

Dankort

KONBINI

KONBINI

QIWI

Qiwi Wallet

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 Danshke
TRUSTLY Trustly
POLI POLi
WE_CHAT_PAY WeChat Pay
TRUSTPAY Trustpay
SKRILL_WALLET Skrill Wallet
NETELLER Neteller

String/250

CARD_TYPE

Shopper card type. When shoppers use multiple cards, Avangate 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, Avangate 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.  

Float/100

FX_MARKUP

Avangate exchange rate markup. Includes the Avangate mark-up.

Float/100

PAYABLE_AMOUNT

Order value in payout currency.

Float/100

PAYOUT_CURRENCY

Your account's default payout currency.

String/3

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 Account settings, click to Edit System settings and select the IPN settings tab on the next screen.

In the Notification Settings area make sure to check the checkboxes next to the following options:

· chargeback open (Avangate sends a IPN when shoppers open a chargeback dispute).

· chargeback closed - (Avangate sends a IPN when a the parties involved resolve a chargeback dispute).

Also check the checkbox next to the CHARGEBACK_RESOLUTION parameter featured in the Notification Details area.

String/8

CHARGEBACK_REASON_CODE

Identifier for the chargeback dispute reason from the Avangate 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/unfunctional
  • 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

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 Avangate directly if the GATEWAY_RESPONSE parameter is not available in the list under the Notification Details area on the IPN settings page. A list with gateway responses is available here.

String/255

 

CUSTOMER BILLING INFORMATION

 

FIRSTNAME

Customer first name

String/40

LASTNAME

Customer last name

String/40

COMPANY

Company Name

String/40

REGISTRATIONNUMBER

Company registration number

String/50

FISCALCODE

Company VAT ID / Tax ID

String/50

CBANKNAME

Company bank name

String/40

CBANKACCOUNT

Company bank account

String/50

ADDRESS1

Address

String/100

ADDRESS2

More address information

String/100

CITY

City

String/30

STATE

State/County

String/30

ZIPCODE

Zip code

String/30

COUNTRY

Country

String/50

COUNTRY_CODE

Country code

String/2

PHONE

Phone number

String/40

FAX

Fax number

String/40

CUSTOMEREMAIL

Customer email address

String/40

 

CUSTOMER DELIVERY INFORMATION

 

FIRSTNAME_D

First name

String/40

LASTNAME_D

Last name

String/40

COMPANY_D

Company name

String/50

ADDRESS1_D

Address

String/100

ADDRESS2_D

Extra address information

String/100

CITY_D

City

String/30

STATE_D

State/County

String/30

ZIPCODE_D

Zip code

String/20

COUNTRY_D

Country

String/50

COUNTRY_D_CODE

Country code

String/2

PHONE_D

Telephone number

String/40

EMAIL_D

Email address for delivery

String/80

IPADDRESS

Customer IP address

String/250

IPCOUNTRY

Country name, based on the user IP address

String/50

 

CUSTOM ORDER INFORMATION

 

TIMEZONE_OFFSET

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

String/9

CURRENCY

Currency used in order.

Possible values:

• USD 
• EUR 
• GBP

Depending on your account settings, other currencies might be available.

String/3

LANGUAGE

Payment interface language. Current possible values:

  • ar العربية Arabic
  • bg български език Bulgarian
  • cs Česky Czech
  • da Dansk Danish
  • de Deutsch German
  • el Ελληνικά Greek
  • en English
  • es Español Spanish
  • fa فارسی Persian
  • fi Suomi Finnish
  • fr Français French
  • he Hebrew עִבְרִית
  • hi Hindi
  • hr Hrvatski jezik Croatian
  • hu Magyar Hungarian
  • it Italiano Italian
  • ja 日本語 Japanese
  • ko 한국어 Korean
  • nl Nederlands Dutch
  • no Norsk Norwegian
  • pl Polski Polish
  • pt Português Portuguese
  • pt-br Português do Brasil Brazilian Portuguese
  • ro Română Romanian
  • ru Русский Russian
  • sk Slovenčina Slovak
  • sl Slovène Slovenian
  • sr Serbian
  • sv Svenska Swedish
  • th ไทย Thai
  • tr Türkçe Turkish
  • zh 中文 Chinese Simplified(Cantonese)
  • zy 繁体中文 Chinese Mandarin Traditional

String/2

ORDERFLOW

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

• PURCHASE_ORDER (when customers use a Purchase Order).

• REGULAR (default, with the exception of scenarios in which customers use POs).

String/30

IPN_PID[]

Array of products identifiers, within current order, from Avangate system (unique, system-generated product reference codes).

Integer/11

IPN_PNAME[]

Array with products names.

String/155

IPN_PCODE[]

Array with the reference codes you configure and control for products. (seller reference)

Array of Strings/100

IPN_INFO[]

Array with extra information for each product within current order.

Array of Strings/100

IPN_QTY[]

Array with the number of units purchased.

Array of Integers /3

IPN_PRICE[]

Array with prices for each product (excluding tax), with dot as float separator.

Array of Float Numbers

IPN_VAT[]

Array with the tax values for each product.

Array of Float Numbers

IPN_VAT_RATE[]

Array with the tax rate as percentages for each product.

Array of Float Numbers/100

IPN_VER[]

Array with the version of each product.

Array Of Strings/50

IPN_DISCOUNT[]

Array with discount values within a promotion, including taxes.

Array of Float Numbers

IPN_PROMONAME[]

Array with names you configured for promotions.

Array of Strings/100

IPN_SKU[]

Array with product SKU codes.

Array of Strings/255

IPN_LICENSE_PROD[]

Array with unique, system-generated product references for which Avangate generates subscription for a purchase (either new subscriptions or renewals).

Array of Integers/11

IPN_LICENSE_TYPE[]

Array with the type of subscription purchased for each product. Possible values:

• REGULAR (new license)
• RENEWAL (renewal for an old license) 
• UPGRADE (an upgrade to an existing license) 
• TRIAL

Array of Strings/7

IPN_LICENSE_REF[]

Array with unique, system-generated subscription references. You can use them to build renewal links.

Array of Strings/10

IPN_LICENSE_EXP[]

Array with subscription expiration dates.

Array of Strings/19

IPN_DELIVEREDCODES[]

Array with codes delivered to customers when using Avangate Delivery.

Array of Strings/256

IPN_DOWNLOAD_LINK

Download link delivered to customers.

String/50

IPN_BUNDLE_DETAILS_1234_PID

Array with the unique identifiers of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Integers/11

IPN_BUNDLE_DETAILS_1234_PNAME

Array with the names of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Strings/155

IPN_BUNDLE_DETAILS_1234_PCODE

Array with the codes you control of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Strings/100

IPN_BUNDLE_DETAILS_1234_QTY

Array with the quantity of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Integers/3

IPN_BUNDLE_DETAILS_1234_SKU

Array with the SKUs of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Strings/255

IPN_BUNDLE_DETAILS_1234_PGROUP

Array with the group IDs of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Integers/11

IPN_BUNDLE_DETAILS_1234_PGROUP_NAME

Array with the names of the products included in the bundle, where 1234 represents the Avangate product ID.

Array of Strings/100

IPN_BUNDLE_DELIVEREDCODES_1234[]

Array with delivery information for each product included in the bundle.

Array of Strings/30

IPN_ORDER_COSTS[]

Array with DIS and Backup Media costs per each product in the order (in the order currency).

Array of Float Numbers

IPN_PCOMMISSION[]

Affiliate product commission, using dot (.) as float separator.

Array of Float Numbers

IPN_TOTAL[]

Partially total on order line (including taxes), using dot (.) as float separator.

Array of Float Numbers

IPN_TOTALGENERAL

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

Float

IPN_SHIPPING

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

Float

IPN_GLOBALDISCOUNT

Global order discount. It is an optional field that is sent only for values greater than 0.

Float

IPN_COMMISSION

Avangate commission, using dot (.) as float separator.

Float

IPN_CUSTOM_TEXT[]

Array with all the custom fields texts set per order.

Array of Strings/30

IPN_CUSTOM_VALUE[]

Array with all client input corresponding for the text.

Array of Strings/30

IPN_CUSTOM_1234_TEXT[]

Array with all the custom fields texts set per product, where1234 represents the product ID.

Array of Strings/30

IPN_CUSTOM_1234_VALUE[]

Array with all client input corresponding for the text, where 1234 represents the product ID.

Array of Strings/30

IPN_PRODUCT_OPTIONS_1234_TEXT[]

Array with the names of all the price options, where 1234 represents the Avangate product ID.

For usage scale pricing option groups, Avangate returns the name of the pricing options as well as the number of units of metered resources consumed by the customer. Format: 'PricingOptionsGroupName: NumberOfUnitsConsumed', for example 'GBs: 100'.

Array of Strings/250

IPN_PRODUCT_OPTIONS_1234_VALUE[]

Array with unique codes set up for the pricing option groups, where1234 represents the product ID.

In the case of usage scale pricing options groups, Avangate return both the unique code of the group as well as the number of units of metered resources consumed by the customer. Format: 'UniqueCode: NumberOfUnitsConsumed', for example 'meteredGBs: 100'.

Array of Strings/250

IPN_PRODUCT_OPTIONS_1234_OPTIONAL_VALUE[]

Array with optional codes (unique for pricing option group), where 1234 represents the product ID.

In the case of usage scale pricing options groups, Avangate returns both the unique code of the group as well as the number of units of metered resources consumed by the customer. Format: 'UniqueCode: NumberOfUnitsConsumed', for example 'meteredGBs: 100'.

Array of Strings/250

IPN_PRODUCT_OPTIONS_1234_PRICE[]

Array with all prices corresponding to each option (prices are in the order currency), where 1234 represents the product ID.

In the case of usage scale pricing options groups, it will return the price of the metered resources consumed by the customer in the order currency.

Array of Float Numbers

IPN_PRODUCT_OPTIONS_1234_OPERATOR[]

Array with all price operators corresponding to each price option, where 1234 represents the product ID 
Possible values:

• ADD 
• SUBSTRACT

Array of Strings/9

IPN_PRODUCT_OPTIONS_1234_USAGE[]

Designed to differentiate usage pricing options groups from non-usage pricing options groups.

Possible values:

• PREPAID - for orders involving products with pricing options groups of the following type: Radio, Dropdown, Checkbox and Scale (but without a metered cost component (usage scale pricing)). 
• POSTPAID - for orders involving products with a metered cost component (usage scale pricing).

String/8

IPN_REFERRER

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

String/255

IPN_LINK_SOURCE

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

String/255

IPN_ ORIGINAL_LINK_SOURCE[]

Array of IPN_LINK_SOURCE (link source, the SRC parameter) values for the initial orders when the subscriptions were first acquired. Available for subscription renewals.

Array of Strings/255

IPN_RESELLER_ID

Affiliate ID that referred the sale.

Integer/9

IPN_RESELLER_NAME

Affiliate name

String/50

IPN_RESELLER_URL

Affiliate website

String/100

IPN_RESELLER_COMMISSION

Affiliate total commission, using dot(.) as float separator.

Float Number

IPN_LICENSE_LIFETIME[]

Array indicating the products shoppers purchased opting for the lifetime/evergreen option.

Possible values:

• YES = lifetime subscription
• NO

Array of Strings/3

IPN_PARTNER_CODE

Possible values:

  • Empty = ecommerce order
  • Partner code

String/255

AVANGATE_CUSTOMER_REFERENCE

Default customer numerical (integer) IDs generated automatically by the Avangate system. Read more here.

Integer/11

EXTERNAL_CUSTOMER_REFERENCE

Unique customer alphanumeric (string) identifiers that you control. Read more here.

String/255

REFUND_TYPE

This parameter, sent along with the notifications provided for orders placed in the Avangate system, offers additional info for refunds processed. REFUND_TYPE describes the type of the refund, total or partial. As such, the parameter can have two possible values:

  • TOTAL – Avangate paid back the entire sum paid for the initial order.
  • PARTIAL – Avangate paid back only a percentage of the amount paid for the initial order.

REFUND_TYPE is empty for orders that are not refunds.

String/7

IPN_PARTNER_MARGIN_PERCENT

Percentage configured as margin for partners.

Float

IPN_PARTNER_MARGIN

Value deducted from the cost of orders, corresponding to the margin configured for partners.

Float

IPN_EXTRA_MARGIN

Value deducted from the cost of the order corresponding to the extra margin offered to a partner for the purchase.

Float

IPN_EXTRA_DISCOUNT

The value deducted from the cost of the order, corresponding to the extra discount offered to the partner for the purchase.

Float

IPN_COUPON_DISCOUNT

The value of the discount deducted from the cost of the order, corresponding to the promotion coupon used by the partner for the purchase.

Float

VALIDATION INFORMATION

 

IPN_DATE

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

Date/14

HASH

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

String/32