Webhook Overview
Our API can push real‑time notifications to your application every time a transaction is created, updated, or otherwise changes state. These event callbacks---webhooks ---eliminate the need for constant polling and let you trigger downstream business logic (e.g., ledger updates, email receipts, or risk checks) the moment they happen.
How it works 🚀
Receive
When a qualifying event occurs, we send a signed POST
request containing a JSON payload like the samples shown below.
Acknowledge
Return an HTTP 2xx
status within 10 seconds. Any non‑2xx code triggers an automatic retry with exponential back‑off (up to 24 hours).
Verify (recommended)
Use the X‑Signature
header to validate the payload's HMAC‑SHA256 signature against your webhook secret.
Need a sandbox?
Point your endpoint to https://webhook.site/...
(or any catcher) to inspect payloads while you build.
The sections that follow contain de‑identified sample payloads for each transaction type---purchase authorizations, reloads, ATM withdrawals, balance inquiries, and more. Copy them into your tests or monitoring tools to simulate live traffic and ensure your integration is production‑ready.
Purchase (Internet / Phone Authorization) — PP80DS
Copy {
"MessageType": "Transaction",
"Amount": "114013",
"ApprovalCode": "377907",
"CalculatedFeeAmount": "",
"CardNumber": "6970",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:55:28",
"PostTransactionCardBalance": "0",
"PostTransactionHoldsBalance": "114013",
"TerminalAddress": "BIOPLUS SP PHARMACYINDIA",
"TerminalCity": "INDIANAPOLIS",
"TerminalCountry": "US",
"TerminalID": "0001",
"TerminalNameLocation": "",
"TerminalOwner": "Sample Pharmacy",
"TransactionCode": "PP80DS",
"TransactionDescription": "Purchase (Internet / Phone Authorization)",
"TransactionId": "967297ae-e208-4268-a0ea-e1bea1d1b75d",
"TransactionOrigin": "POS",
"UniqueRequestId": "",
"MCC": "5912",
"RetailPackId": "1000000001",
"IssuerName": "HealthCo Rx",
"ProductType": "Virtual Rx Sample Plan",
"ISOFullMessage": "ISO0260…(truncated)",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "Credit",
"AdditionalFee": "0",
"BusinessProcessId": "29342e21:19649b139bd:-4f4c"
}
Authorization — PP00DS
Copy {
"MessageType": "Transaction",
"Amount": "39625",
"ApprovalCode": "339792",
"CalculatedFeeAmount": "",
"CardNumber": "3803",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:52:36",
"PostTransactionCardBalance": "0",
"PostTransactionHoldsBalance": "39625",
"TerminalAddress": "OPTUM ",
"TerminalCity": "+18000000000",
"TerminalCountry": "US",
"TerminalID": "SSVQDG73",
"TerminalNameLocation": "",
"TerminalOwner": "Sample Specialty Pharma",
"TransactionCode": "PP00DS",
"TransactionDescription": "Authorization",
"TransactionId": "7b7a0b2e-dbc2-4243-957b-26f535d8655c",
"TransactionOrigin": "POS",
"UniqueRequestId": "",
"MCC": "5912",
"RetailPackId": "1000000002",
"IssuerName": "HealthCo Rx",
"ProductType": "Juice Payroll 1",
"ISOFullMessage": "ISO0260…(truncated)",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "Credit",
"AdditionalFee": "0",
"BusinessProcessId": "-3c9fb275:19649a97fa3:-4d74"
}
Balance Inquiry — XP31DS
Copy {
"MessageType": "Transaction",
"Amount": "0",
"ApprovalCode": "NA",
"CalculatedFeeAmount": "",
"CardNumber": "2675",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:52:34",
"PostTransactionCardBalance": "226302",
"PostTransactionHoldsBalance": "0",
"TerminalAddress": "",
"TerminalCity": "Glendale",
"TerminalCountry": "US",
"TerminalID": "user",
"TerminalNameLocation": "",
"TerminalOwner": "AgriTech Payments",
"TransactionCode": "XP31DS",
"TransactionDescription": "Balance Inquiry",
"TransactionId": "bc21cfa6-d6a0-437c-8c59-c913d6f3de86",
"TransactionOrigin": "PRX",
"UniqueRequestId": "a48d8f62-0951-49d9-8557-2fe993ed4a0c",
"MCC": "",
"RetailPackId": "1000000003",
"IssuerName": "AgriTech Payments",
"ProductType": "AgriCard EMV Sample",
"ISOFullMessage": "",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "",
"AdditionalFee": "",
"BusinessProcessId": "-670803ed:19649aeffa9:-4f9e"
}
VRX Reload — XP20DS
Copy {
"MessageType": "Transaction",
"Amount": "39625",
"ApprovalCode": "NA",
"CalculatedFeeAmount": "",
"CardNumber": "3803",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:52:33",
"PostTransactionCardBalance": "39625",
"PostTransactionHoldsBalance": "0",
"TerminalAddress": "",
"TerminalCity": "Scottsdale",
"TerminalCountry": "US",
"TerminalID": "User",
"TerminalNameLocation": "",
"TerminalOwner": "HealthCo Rx",
"TransactionCode": "XP20DS",
"TransactionDescription": "VRX Reload",
"TransactionId": "81cf8891-5548-455d-a8d1-bb0b9943885e",
"TransactionOrigin": "PRX",
"UniqueRequestId": "aaf922b8-a590-a16b-0cf4-4f2583c54418",
"MCC": "",
"RetailPackId": "1000000002",
"IssuerName": "HealthCo Rx",
"ProductType": "Virtual Rx Sample Plan",
"ISOFullMessage": "",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "",
"AdditionalFee": "",
"BusinessProcessId": "-3c9fb275:19649a97fa3:-4d86"
}
VRX Unload — XP25DS
Copy {
"MessageType": "Transaction",
"Amount": "119843",
"ApprovalCode": "NA",
"CalculatedFeeAmount": "",
"CardNumber": "3905",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:52:26",
"PostTransactionCardBalance": "0",
"PostTransactionHoldsBalance": "0",
"TerminalAddress": "",
"TerminalCity": "Scottsdale",
"TerminalCountry": "US",
"TerminalID": "User",
"TerminalNameLocation": "",
"TerminalOwner": "HealthCo Rx",
"TransactionCode": "XP25DS",
"TransactionDescription": "VRX Unload",
"TransactionId": "44e4c517-222a-4cce-91b6-4f23dd58867d",
"TransactionOrigin": "PRX",
"UniqueRequestId": "3299d8f1-083b-554b-85af-dfd4ccca453b",
"MCC": "",
"RetailPackId": "1000000004",
"IssuerName": "HealthCo Rx",
"ProductType": "Virtual Rx Sample Plan",
"ISOFullMessage": "",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "",
"AdditionalFee": "",
"BusinessProcessId": "-3c9fb275:19649a97fa3:-4d94"
}
ATM Withdrawal — AP01DS
Copy {
"MessageType": "Transaction",
"Amount": "40400",
"ApprovalCode": "879913",
"CalculatedFeeAmount": "",
"CardNumber": "5352",
"CardStatus": "ACT",
"TimeStamp": "2025-04-18 14:54:58",
"PostTransactionCardBalance": "311",
"PostTransactionHoldsBalance": "22785",
"TerminalAddress": "HAPO COMMUNITY CUPascoWA",
"TerminalCity": "Pasco",
"TerminalCountry": "US",
"TerminalID": "G8814A",
"TerminalNameLocation": "",
"TerminalOwner": "Sample Community CU",
"TransactionCode": "AP01DS",
"TransactionDescription": "ATM Withdrawal",
"TransactionId": "a132aba2-a461-4fa7-85e7-847377ce6dc0",
"TransactionOrigin": "ATM",
"UniqueRequestId": "",
"MCC": "6011",
"RetailPackId": "1000000008",
"IssuerName": "AgriTech Payments",
"ProductType": "AgriCard EMV Sample",
"ISOFullMessage": "ISO0160…(truncated)",
"AdditionalDataCode": "",
"AdditionalDataCodeDesc": "",
"AdditionalFeeOperation": "Debit",
"AdditionalFee": "2",
"BusinessProcessId": "-3c9fb275:19649a97fa3:-4cc0"
}