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"}| Field | Description |
|---|---|
clientReferenceInformation.code | — |
clientReferenceInformation.partner.thirdPartyCertificationNumber | provides the value for this field. |
clientReferenceInformation.transactionId | — |
orderInformation.amountDetails.currency | — |
orderInformation.amountDetails.totalAmount | — |
paymentInformation.card.sourceAccountType | Set the value to UA. |
paymentInformation.card.useAs | Leave this field blank. |
paymentInformation.paymentType.name | Set the value to CARD. |
paymentInformation.paymentType.subTypeName | Set the value to DEBIT. |
pointOfSaleInformation.encryptedKeySerialNumber | — |
pointOfSaleInformation.encryptedPin | — |
pointOfSaleInformation.entryMode | Set the value to swiped. |
pointOfSaleInformation.pinBlockEncodingFormat | Set the value to 1. |
pointOfSaleInformation.terminalCapability | — |
pointOfSaleInformation.trackData | — |
processingInformation.authorizationOptions.balanceInquiry | Set the value to true. |
processingInformation.commerceIndicator | Set the value to retail. |
processingInformation.electronicBenefitsTransfer.category | Set the value to FOOD. |
processingInformation.purchaseOptions.isElectronicBenefitsTransfer | Set the value to true. |
processingInformation.networkRoutingOrder | Set the value to K. |
Thanks for your feedback!
Last published: September 29, 2026