Skip to main content

EBT Purchase with SNAP Account Swiped Track Data and Balance Response


This use case processes a PIN debit Electronic Benefits Transfer (EBT) purchase with SNAP account swiped track data and balance response data. The issuer returns balance fields under paymentInformation.accountFeatures in the response. Set processingInformation.authorizationOptions.balanceInquiry to true, processingInformation.electronicBenefitsTransfer.category to FOOD, and processingInformation.purchaseOptions.isElectronicBenefitsTransfer to true.

Endpoints

POST /pts/v2/payments

POST /pts/v2/payments

Example

{  "clientReferenceInformation": {    "code": "ABC123",    "partner": {      "thirdPartyCertificationNumber": "PTP1234"    },    "transactionId": "UniqueTranID111"  },  "processingInformation": {    "commerceIndicator": "retail",    "purchaseOptions": {      "isElectronicBenefitsTransfer": true    },    "electronicBenefitsTransfer": {      "category": "FOOD"    },    "networkRoutingOrder": "K"  },  "paymentInformation": {    "paymentType": {      "name": "CARD",      "subTypeName": "DEBIT"    },    "card": {      "useAs": "",      "sourceAccountType": "UA"    }  },  "orderInformation": {    "amountDetails": {      "totalAmount": "6022.00",      "currency": "USD"    }  },  "pointOfSaleInformation": {    "entryMode": "swiped",    "terminalCapability": 4,    "trackData": "%B4xxxxxxxxxxx1111^JONES/JONES^3112101976110000868000000?;4xxxxxxxxxxx1111=33121019761186800000?",    "pinBlockEncodingFormat": 1,    "encryptedPin": "52F20658C04DB351",    "encryptedKeySerialNumber": "FFFF1B1D140000000005"  }}
{  "_links": {    "void": {      "method": "POST",      "href": "/pts/v2/payments/7588173885706895303813/voids"    },    "self": {      "method": "GET",      "href": "/pts/v2/payments/7588173885706895303813"    }  },  "clientReferenceInformation": {    "code": "ABC123",    "transactionId": "UniqueTranID111"  },  "id": "7588173885706895303813",  "orderInformation": {    "amountDetails": {      "authorizedAmount": "6022.00",      "currency": "usd"    }  },  "paymentInformation": {    "tokenizedCard": {      "requestorId": "41111111111",      "assuranceLevel": "AB"    },    "accountFeatures": {      "accountStatus": "R",      "balances": [        {          "amountType": "03",          "amount": "+30.00",          "accountType": "98",          "currency": "usd"        },        {          "amountType": "03",          "amount": "+50.00",          "accountType": "98",          "currency": "usd"        }      ]    },    "card": {      "suffix": "1234"    }  },  "processingInformation": {    "reconciliationId": "7588173885706895303813"  },  "processorInformation": {    "systemTraceAuditNumber": "343709",    "routing": {      "network": "0029"    },    "approvalCode": "831000",    "retrievalReferenceNumber": "123456343709",    "transactionId": "016153570198200",    "responseCode": "00"  },  "reconciliationId": "7588173885706895303813",  "status": "AUTHORIZED",  "submitTimeUtc": "2025-09-25T16:23:08Z"}
FieldDescription
clientReferenceInformation.code—
clientReferenceInformation.partner.thirdPartyCertificationNumber provides the value for this field.
clientReferenceInformation.transactionId—
orderInformation.amountDetails.currency—
orderInformation.amountDetails.totalAmount—
paymentInformation.card.sourceAccountTypeSet the value to UA.
paymentInformation.card.useAsLeave this field blank.
paymentInformation.paymentType.nameSet the value to CARD.
paymentInformation.paymentType.subTypeNameSet the value to DEBIT.
pointOfSaleInformation.encryptedKeySerialNumber—
pointOfSaleInformation.encryptedPin—
pointOfSaleInformation.entryModeSet the value to swiped.
pointOfSaleInformation.pinBlockEncodingFormatSet the value to 1.
pointOfSaleInformation.terminalCapability—
pointOfSaleInformation.trackData—
processingInformation.authorizationOptions.balanceInquirySet the value to true.
processingInformation.commerceIndicatorSet the value to retail.
processingInformation.electronicBenefitsTransfer.categorySet the value to FOOD.
processingInformation.purchaseOptions.isElectronicBenefitsTransferSet the value to true.
processingInformation.networkRoutingOrderSet the value to K.

Last published: September 29, 2026