Network Transaction Events
All webhooks for network transaction events use the same format. For definitions of the meaning of these fields, please refer to the API Documentation for GET /Details/TransactionDetails.
Note that each type of network transaction event webhook can be subscribed to independently.
Sample transaction webhook:
{
"CallbackTime": "2017-09-07T11:11:12.9622559-04:00",
"Data": {
"NetworkTransactionId": 127348106,
"TransactionId": null,
"AcctId": 660702,
"TransactionTime": "2017-09-07T11:11:12",
"HoldTime": null,
"SettlementTime": null,
"MerchantLocalTime": "2017-09-07T11:11:11",
"AuthTransactionId": null,
"TransactionAmount": 3.75,
"PaddingAmount": 0.0,
"AvailableBalance": 30.0,
"LedgerBalance": 30.0,
"TransactionType": "NETWORK",
"Description": "Pending",
"TransactionNotes": null,
"ReferencedTranId": null,
"ReferencedTransactionTime": null,
"MerchantName": "STARBUCKS STORE 05642",
"MerchantCity": "NORTH HOLLYWO",
"MerchantState": "CA",
"MerchantZip": "91601 ",
"MerchantCountry": "US",
"MCCCode": "5814",
"AuthIdentityResponseCode": "274526",
"MerchantId": "260000097015002",
"TerminalId": "002 ",
"NetworkType": "Auth",
"NetworkStatus": "Approved",
"IsCardPresent": true,
"Message": null,
"MessageCode":null
}
}
}
Types of Network Transactions
PEX currently provides webhooks for 5 types of network transaction events. Network transaction events are identified by "TransactionType": "NETWORK". The type of transaction can be identified by using the NetworkType and NetworkStatus fields. NetworkType can be one of four values: Auth, Pin, Settlement, Reversal. NetworkStatus can be one of two values: Approved, Declined. All Reversal events will have a default NetworkStatus value of "Approved".
You can subscribe to receive each type of event on separate endpoints: Authorization (Signature Transactions;Type 0100), Reversal (Type 0420), Settlement (Type 0220), PIN Transaction (Type 0200), Decline (Note the decline endpoint will receive both declined (signature) Authorization Transaction decline events and PIN Transaction decline events.)
Although the "Description" field may contain information about the kind of transaction, this field should not be relied upon to identify the type of transaction.
Timestamp Fields
All date/time values are in EST (eastern standard time) unless otherwise noted.
TransactionTime: The date/time when authorization request was received from the network.
HoldTime: Date/time a hold was placed on the card account balance. HoldTime will be "null" for Authorizations as the hold is placed concurrently with the webhook event.
SettlementTime: Funds have been transferred to the merchant and the transaction is final. Use this for reconciliation purposes. SettlementTime will be "null" for Authorizations and any transactions where "NetworkStatus"="Declined".
MerchantLocalTime: Local time for the POS used for the transaction. The date/time is provided by the merchant and does not include time zone information. As this value is set on the POS, it may not be accurate.