IPG Response Fields
Overview
This page explains the IPG transaction response fields and how merchants can use them to determine whether a transaction was processed using a payment card or a network token.
Response Fields

Transaction Authorization Identification
Use the following rules to identify whether the transaction was authorized using the payment card or a network token.
-
Payment Card Authorization
If the transaction is authorized using the payment card, the following fields will contain the same values:- Bin = FundingCardNumberBin
- Last4 = FundingCardNumberLast4
-
Network Token Authorization
If the transaction is authorized using a Network Token:
- Bin = Network Token first 6 digits
- FundingCardNumberBin = Payment Card first 6 digits
- Last4 = Network Token last 4 digits
- FundingCardNumberLast4 = Payment Card last 4 digits
Identifying Payment Card Authorization
If the merchant has access to the original card details used in the request, the authorization source can be identified by comparing the following response fields.
When the transaction is authorized using the payment card, the values below will be identical:
- Bin = FundingCardNumberBin
- Last4 = FundingCardNumberLast4
Example:
- Bin = FundingCardNumberBin = 123456
- Last4 = FundingCardNumberLast4 = 1234
Identifying Network Token Authorization
If the merchant has access to the original card details used in the request, the authorization source can be identified by comparing the following response fields.
When the transaction is authorized using a network token, the values returned for the token and the underlying payment card will differ.
Example:
- Bin = 520000 and FundingCardNumberBin = 411111
- Last4 = 9999 and FundingCardNumberLast4 = 1111
Note: Bin and FundingCardNumberBin may be identical or different depending on the token configuration and issuer implementation.
{
"requestType": "PaymentCardSaleTransaction",
"transactionAmount": {
"total": "10.00",
"currency": "XXX"
},
"paymentMethod": {
"paymentCard": {
"number": "411111******1111",
"securityCode": "***",
"expiryDate": {
"month": "MM",
"year": "YY"
}
}
}
}
{
"type": "transactionResponse",
"clientRequestId": "CLIENT_REQUEST_ID",
"apiTraceId": "API_TRACE_ID",
"ipgTransactionId": "IPG_TRANSACTION_ID",
"orderId": "ORDER_ID",
"transactionType": "SALE",
"paymentToken": {
"reusable": true,
"declineDuplicates": false,
"brand": "CARD_BRAND",
"type": "PAYMENT_CARD"
},
"transactionOrigin": "ECOM",
"paymentMethodDetails": {
"paymentCard": {
"expiryDate": {
"month": "MM",
"year": "YYYY"
},
"fundingCardNumber": {
"bin": "411111",
"last4": "1111"
},
"bin": "520000",
"last4": "9999",
"brand": "CARD_BRAND"
},
"paymentMethodType": "PAYMENT_CARD",
"paymentMethodBrand": "CARD_BRAND"
},
"terminalId": "TERMINAL_ID",
"merchantId": "MERCHANT_ID",
"transactionTime": 0000000000,
"approvedAmount": {
"total": 10.00,
"currency": "XXX",
"components": {
"subtotal": 10.00
}
},
"transactionAmount": {
"total": 10.00,
"currency": "XXX",
"components": {
"subtotal": 10.00
}
},
"transactionStatus": "APPROVED",
"transactionResult": "APPROVED",
"approvalCode": "APPROVAL_CODE",
"processor": {
"referenceNumber": "REFERENCE_NUMBER",
"authorizationCode": "AUTHORIZATION_CODE",
"responseCode": "00",
"responseMessage": "APPROVED_RESPONSE",
"avsResponse": {
"streetMatch": "NO_INPUT_DATA",
"postalCodeMatch": "NO_INPUT_DATA",
"associationAvsResponse": "A"
},
"taxRefundData": {}
},
"additionalDetails": {
"additionalResponseData": {
"schemeECI": "00"
}
}
}
Conclusion
The same identification logic applies to other network token request methods, including Hosted Data ID and Passthrough.
Merchants can use the response fields described above to identify whether the authorization was performed using the original payment card or a network token.
Updated 4 days ago