Account Funding Transactions
Account Funding Transactions (AFT) are required for merchants operating in specific money movement and financial services categories, as defined by card schemes.
For these merchants, additional data must be included in the payment sessionpayment session and payment requests to ensure transactions are processed in line with scheme and acquirer requirements.
Failure to provide the required AFT fieldsrequired fields may result in transactions being declined, flagged, or subject to additional scrutiny.
For more information on your integration, see:
- Transaction API (Version 6.25 is required, or higher).
- .NET SDK.NET SDK
- Virtual Terminal (MOTO)Virtual Terminal
- PayByLink via Judopay PortalPay By Link via Portal
- Mobile and Web SDKs: No changes are needed to be made to the SDK, however additional AFT information must be provided when creating the payment session.payment session
Important to Consider.
- AFT requirements apply only to merchants with supported MCCs. For more information, see Applicable MerchantsApplicable Merchants.
- These requirements are defined by the card schemes and acquirers, and apply across all supported gateways.
- Missing or invalid AFT data may result in:
- Transaction declines
- Validation errors
- Acquirer flags
- To submit AFT data, merchants must upgrade to Judopay's Transaction API Version 6.25 or higher.
- For more information, see Transaction API.
Applicable Merchants.
These requirements apply only to merchants configured with one of the following Merchant Category Codes (MCCs):
Merchant Category Code | Description |
|---|---|
4829 | Money Transfer |
6012 | Financial Institutions – Money Orders / Foreign Currency |
6051 | Financial Institutions – Merchandise / Services / Debt Repayment |
6211 | Securities Brokers / Dealers |
6540 | Stored Value Card Purchase |
If your account uses one of the above MCCs, you must include the AFT fields described below.
Required Request Fields.
The following request fields are used to support AFT transactions:
Field | Description |
|---|---|
businessApplicationId String Optional | Identifies the type / purpose of the transaction. Format:
Note: If businessApplicationId is provided, aftRecipientInformation must also be provided. For more information, see Business Application ID Values.businessApplicationId values. |
aftRecipientInformation Object Optional | Required for AFT transactions. Contains recipient details. Note: If aftRecipientInformation is provided, businessApplicationId must also be provided. For more information, see Recipient InformationRecipient Information. |
Business Application ID Values.
The businessApplicationId defines the type / purpose of the AFT transaction:
Value | Description | Constraints |
|---|---|---|
AA | Account-to-account transfer | accountType must be any of the following:
|
FD | Funds disbursement | Visa only. |
FT | Funds transfer | accountType can be any of the following:
|
PD | Payroll disbursement | accountType must be:
|
TU | Prepaid top-up | accountType must be any of the following:
|
WT | Wallet funding | accountType can be any of the following:
|
Determining the Values.
AFT is not only about providing additional fields. It also requires selecting the correct values based on the transaction context.
When constructing a request, determine the following values based on the nature of the transaction and the destination of funds:
What is the purpose of the transaction? Select the correct businessApplicationId
Where are the funds going? Select the correct accountType
What identifier represents that destination? Provide the correct accountId information
If you are unsure which:
- businessApplicationId
- accountType
- accountId values to use for your transaction, contact your acquirer.
The correct values depend on your specific business use case, how funds are being transferred, and scheme-specific rules.
Your acquirer is responsible for confirming the appropriate configuration for your transaction scenarios.
Select the Correct Business Application ID Value.
The businessApplicationId must reflect the purpose of the transaction.
Select the value that best describes the business context:
- AA (Account-to-account)
- Transfers between accounts belonging to the same person.
- FT (Funds transfer)
- General transfers where no specific category applies.
- FD (Funds disbursement)
- Payouts such as insurance claims (Visa only).
- PD (Payroll disbursement)
- Salary or wage payments.
- TU (Top-up)
- Loading funds onto a prepaid account.
- WT (Wallet funding)
- Funding a digital wallet.
Select the Correct Account Type.
accountType | Description | What to provide in accountId |
|---|---|---|
00 | Other / unspecified account type | Depends on use case |
01 | Bank account using routing number + account number | Routing number + account number |
02 | IBAN-based bank account | IBAN |
03 | Card account | Use the card number:
|
06 | Bank account number + BIC / SWIFT | Account number + BIC / SWIFT |
Business Application ID and Account Type.
Some combinations of the businessApplicationId and accountType are restricted by the card schemes.
For example:
- PD (Payroll)
- Must use accountType = 03 (card account).
- AA (Account-to-account)
- Must use accountType 01, 02, 03, or 06.
- TU (Top-up)
- Must use accountType 01, 02, 03, or 06.
- FT (Funds transfer)
- Most flexible option.
- WT (Wallet funding)
- May allow accountType to be omitted.
Merchants must ensure that:
- The selected businessApplicationId is valid for the chosen accountType.
- The accountId format matches the selected accountType.
Recipient Information.
The following recipient details must be provided in the aftRecipientInformation object when submitting AFT transactions:
Field | Description |
|---|---|
firstName Required | Recipient’s first name |
addressLine1 Required | Recipient’s address line 1 |
state Optional | Required when countryCode is US or CA (2-character code) |
countryCode Required | ISO 3166-1 alpha-2 country code |
accountId Required | Unique identifier of the recipient account |
accountType Required | Type of recipient account |
Sender Information (Visa only)
Mastercard does not require sender information for AFT transactions.
For Visa AFT transactions, the following sender details are required. These are derived from the billingDetails object in the request:
Field | Description |
|---|---|
firstName Required | Sender’s first name |
lastName Required | Sender’s last name |
addressLine1 Required | Sender’s address |
countryCode Required | ISO 3166-1 alpha-2 country code |
state Optional | Required when countryCode is US or CA (2-character code) |
Putting it all Together.
Example Request.
{
"cardNumber": "4111111111111111",
"cv2": "123",
"expiryDate": "01/28",
"cardAddress": {
"address1": "Smith House",
"address2": "1 Example Street",
"town": "London",
"postCode": "SW1A 1AA",
"countryCode": "826"
},
"judoId": "100100100",
"yourConsumerReference": "consumer-12345",
"yourPaymentReference": "payment-12345",
"yourPaymentMetaData": {
"internalLocationRef": "Example",
"internalId": 99
},
"amount": 1.01,
"currency": "GBP",
"cardHolderName": "John Smith",
"mobileNumber": "7999999999",
"phoneCountryCode": "44",
"emailAddress": "[email protected]",
"shippingAddress": {
"isBillingAddress": true
},
"threeDSecure": {
"authenticationSource": "Browser",
"methodNotificationUrl": "https://api.judopay.com/order/3ds/methodNotification",
"challengeNotificationUrl": "https://api.judopay.com/order/3ds/challengeNotification",
"challengeRequestIndicator": "challengePreferred"
},
"businessApplicationId": "AA",
"aftRecipientInformation": {
"firstName": "John Smith",
"addressLine1": "Smith House",
"countryCode": "GB",
"accountId": "5432101111",
"accountType": "03"
},
"primaryAccountDetails": {
"name": "John Smith",
"accountNumber": "12345678",
"dateOfBirth": "1980-01-31",
"postCode": "SW1A 1AA"
}
}Field | Description |
|---|---|
businessApplicationId String Optional | Identifies the type / purpose of the transaction. Format:
Note: If businessApplicationId is provided, aftRecipientInformation must also be provided. |
aftRecipientInformation Object Optional | Required for AFT transactions. Contains recipient details. Note: If aftRecipientInformation is provided, businessApplicationId must also be provided. Values:
|