AFT Funding Transactions
AFT Funding
Overview
AFT Funding Transactions initiate an instant debit from the user's debit card account to the Payer's merchant account. Funds are generally available within 30 minutes.
API Workflow
- Create Recipient (referred to as "user")
- Add Card Account
- Create Transaction with
INSTANT_FUNDING
Widget Workflow
- Create Recipient (referred to as "user")
- Add Card Account via Widget
- Verify Card Account
- Create Transaction with
INSTANT_FUNDING
Card Account Verification
Card account ownership will be verified using the card PAN, expiration date, security code, address, and name if applicable. Cards must pass verification to be eligible for AFT Funding transactions. Review the Verify Card Account details for data requirements, definitions, and errors.
API Workflow
The Add Card Account API call requires the account address for verification at the time of receiving the request. The API response will contain the result of each item matched and a verification_status
to indicate account eligibility.
Widget Workflow
The Create Card Widget UI interface will accept the card number, expiration date, and security code. The verification process will first verify the data present. If a user's address has been added (Add Address), it will be included in the verification process.
A successful match results in a card account being created, but not yet eligible for AFT Funding. The Verify Card Account endpoint allows a secondary verification to be performed against a name and address. A MATCH
value indicates the avs
and ani
data was verified. If any field is a not aMATCH
, the error code will be present in the response. Name verification (ani
) is only supported for Visa cards.
{
"verification_id": "PAV-V5jn9KH5RDWWxdX4AkzMdA==",
"network": "VISA",
"pan": "MATCH",
"cvv": "NOT_PROCESSED",
"avs": {
"street": "MATCH",
"zip": "MATCH"
},
"ani": {
"first_name": "MATCH",
"last_name": "MATCH"
},
"created_date": "2024-03-01T15:18:57.464Z"
}
{
"http_status": 200,
"error_code": "ERR_CARD_PAV_FAILURE",
"error_message": "Card account validation failed",
"verification_id": "PAV-V5jn9KH5RDWWxdX4AkzMdA==",
"network": "VISA",
"pan": "MATCH",
"cvv": "NOT_PROCESSED",
"avs": {
"street": "MATCH",
"zip": "NO_MATCH"
},
"ani": {
"first_name": "MATCH",
"last_name": "MATCH"
},
"created_date": "2024-03-01T15:18:57.464Z"
}
The Get Card Account response will now indicate the verification_status
as VERIFIED
. The verification_result
will contain the first match result.
{
"account_id": "RPA-f9Qe4Pm_THaw7uDTqck4IQ==",
"description": "Visa Debit 0167",
"created_date": "2021-11-09T14:47:42.843Z",
"bank_name": "Banco Popular",
"card_number": "451530XXXXXX0167",
"card_type": "DEBIT",
"exp_date": "2026-08",
"verification_status": "VERIFIED",
"verification_result": {
"network": "VISA",
"pan": "MATCH",
"cvv": "MATCH",
"avs": {
"street": "NOT_PROCESSED",
"zip": "NOT_PROCESSED"
},
"ani": {
"first_name": "MATCH",
"last_name": "MATCH"
}
}
}
Address Updates
Address updates should be processed through the Verify Card Account endpoint. A non-matching result will disable the card for AFT Funding until a successful address match can be performed.
Transaction
About Transactions and Create Transaction contain details on request and response structures, transaction status, and HTTP response codes. Sample request and response specific to AFT Funding (INSTANT_FUNDING
) shown below.
{
"recipient_id" : "REejizS5fnTLiQYhGTKYXZaQ==",
"account_id" : "RPA-lOt8vNX9QweylLYpzrFiVQ==",
"reference_id" : "abc-123",
"method" : "INSTANT_FUNDING",
"type" : "DEBIT",
"amount" : 10.00
}
{
"transaction_id": "ICTN-435-21313-73757-ETE",
"method": "INSTANT_FUNDING",
"fee": 0.00,
"amount": 10.00,
"status": "PAID",
"created_date": "2021-11-09T20:29:17.758Z",
"detail": "VISA DEBIT 0167",
"account_id": "RPA-lOt8vNX9QweylLYpzrFiVQ==",
"recipient_id" : "REejizS5fnTLiQYhGTKYXZaQ==",
"paid_date": "2025-08-09T20:29:18.711Z",
"network_approval_code": "ABC12345",
"provider_reference_id": "987654321"
}
{
"http_status": 422,
"error_code": "ERR_INELIGIBLE_RECIPIENT_ACCOUNT",
"error_message": "Ineligible account for transaction method"
}
The following Action codes should not be retried within 5 minutes. Retrying a transaction could result in additional transaction fees per network requirements.
Action Code | Description |
---|---|
04 | Pickup Card (no fraud) |
07 | Pick up card, special condition (fraud account) |
12 | Invalid Transaction |
15 | No such issuer |
41 | Lost card, pick up (fraud account) |
43 | Stolen card, pick up (fraud account) |
46 | Closed account |
57 | Transaction not permitted to cardholder |
Updated 28 days ago