---
title: Account Funding Transactions
slug: account-funding-transactions
docTags: 
createdAt: 2026-04-02T15:37:44.961Z
---

Account Funding Transactions (AFT) are **required&#x20;**&#x66;or 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 session](docId\:ylKW5coh5NQnfQ3j_Wjk2) and payment requests to ensure transactions are processed in line with scheme and acquirer requirements.

Failure to provide the [required AFT fields](docId:5ol_pTSGBHVGKwJwD0gHg) may result in transactions being **declined, flagged, or subject to additional scrutiny**.

For more information on your integration, see:

- [Transaction API](https://docs.judopay.com/api-reference) (**Version** **6.25 is required,&#x20;**&#x6F;r higher).
- [.NET SDK](docId\:hNgLLJxESInHS7PtfEvTN)
- [Virtual Terminal (MOTO)](docId\:VTwytVhCNkqBRccOpdHfm)
- [PayByLink via Judopay Portal](docId\:FR-wtitYYgtkcxLuDdma8)
- **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.](docId\:ylKW5coh5NQnfQ3j_Wjk2)

***

## Important to Consider.

- AFT requirements apply only to merchants with supported MCCs.&#x20;
  For more information, see ***[Applicable Merchants](docId:5ol_pTSGBHVGKwJwD0gHg).***
- 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&#x20;**&#x75;pgrade to Judopay's **Transaction** **API** **Version** **6.25&#x20;**&#x6F;r higher.
  - For more information, see [Transaction API](https://docs.judopay.com/api-reference/api-reference).

***

## Applicable Merchants.

These requirement&#x73;**&#x20;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&#x20;**&#x69;nclude the AFT fields described below.

***

## Required Request Fields.

The following request fields are used to support AFT transactions:

| **Field**                                                                        | **Description**                                                                                                                                                                                                                                                                                                       |
| -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `businessApplicationId`<br />String<br /><font color="#A5F3FC">Optional</font>   | Identifies the type / purpose of the transaction.<br />Format:<br />- Maximum 2 characters<br />**Note**: If `businessApplicationId` is provided, `aftRecipientInformation` **must&#x20;**&#x61;lso be provided.<br /><br />For more information, see [Business Application ID Values..](docId:5ol_pTSGBHVGKwJwD0gHg) |
| `aftRecipientInformation`<br />Object<br /><font color="#A5F3FC">Optional</font> | **Required for AFT transactions**.<br />Contains recipient details.<br /><br />**Note**: If `aftRecipientInformation` is provided, `businessApplicationId` **must&#x20;**&#x61;lso be provided.<br /><br />For more information, see [Recipient Information](docId:5ol_pTSGBHVGKwJwD0gHg)***.***                      |

***

## Business Application ID Values.

The `businessApplicationId` defines the type / purpose of the AFT transaction:

| **Value** | **Description**             | **Constraints**                                                                                             |
| --------- | --------------------------- | ----------------------------------------------------------------------------------------------------------- |
| `AA`      | Account-to-account transfer | `accountType` **must&#x20;**&#x62;e any of the following:<br />- 01<br />- 02<br />- 03<br />- 06           |
| `FD`      | Funds disbursement          | Visa only.                                                                                                  |
| `FT`      | Funds transfer              | `accountType` can be any of the following:<br />- 00<br />- 01<br />- 02<br />- 03<br />- 06                |
| `PD`      | Payroll disbursement        | `accountType` **must&#x20;**&#x62;e:<br />- 03                                                              |
| `TU`      | Prepaid top-up              | `accountType`**&#x20;must&#x20;**&#x62;e any of the following:<br />- 01<br />- 02<br />- 03<br />- 06      |
| `WT`      | Wallet funding              | `accountType` can be any of the following:<br />- 00<br />- 01<br />- 02<br />- 03<br />- 06<br />- omitted |

***

## Determining the Values.

:::hint{type="warning"}
AFT is not only about providing additional fields.&#x20;
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:

::::WorkflowBlock
:::WorkflowBlockItem
**What is the purpose of the transaction?**
Select the correct `businessApplicationId`
:::

:::WorkflowBlockItem
**Where are the funds going?**
Select the correct `accountType`
:::

:::WorkflowBlockItem
**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.&#x20;

:::hint{type="warning"}
Your acquirer is responsible for confirming the appropriate configuration for your transaction scenarios.
:::

***

### Select the Correct Business Application ID Value.

The `businessApplicationId` **must&#x20;**&#x72;eflect the **purpose&#x20;**&#x6F;f 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.&#x20;
- **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:<br />- First 6 digits (BIN) + last 4 digits. |
| `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)**&#x20;
  - Most flexible option.
- **WT (Wallet funding)**
  - May allow `accountType` to be omitted.

Merchants **must&#x20;**&#x65;nsure that:

- The selected `businessApplicationId` is valid for the chosen `accountType`.
- The `accountId` format matches the selected `accountType`.

***

## Recipient Information.

The following recipient details **must&#x20;**&#x62;e provided in the `aftRecipientInformation` object when submitting AFT transactions:

| Field                                                     | Description                                                |
| --------------------------------------------------------- | ---------------------------------------------------------- |
| `firstName`<br /><font color="#C2410C">Required</font>    | Recipient’s first name                                     |
| `addressLine1`<br /><font color="#C2410C">Required</font> | Recipient’s address line 1                                 |
| `state`<br /><font color="#A5F3FC">Optional</font>        | Required when `countryCode` is US or CA (2-character code) |
| `countryCode`<br /><font color="#C2410C">Required</font>  | ISO 3166-1 alpha-2 country code                            |
| `accountId`<br /><font color="#C2410C">Required</font>    | Unique identifier of the recipient account                 |
| `accountType`<br /><font color="#C2410C">Required</font>  | Type of recipient account                                  |

***

## Sender Information (Visa only)

:::hint{type="info"}
Mastercard does **not&#x20;**&#x72;equire sender information for AFT transactions.
:::

For **Visa AFT** transactions, the following sender details are **required**.&#x20;
These are derived from the `billingDetails` object in the request:

| Field                                                     | Description                                                |
| --------------------------------------------------------- | ---------------------------------------------------------- |
| `firstName`<br /><font color="#C2410C">Required</font>    | Sender’s first name                                        |
| `lastName`<br /><font color="#C2410C">Required</font>     | Sender’s last name                                         |
| `addressLine1`<br /><font color="#C2410C">Required</font> | Sender’s address                                           |
| `countryCode`<br /><font color="#C2410C">Required</font>  | ISO 3166-1 alpha-2 country code                            |
| `state`<br /><font color="#A5F3FC">Optional</font>        | Required when `countryCode` is US or CA (2-character code) |

***

## Putting it all Together.

### Example Request.

:::CodeblockTabs
Example AFT Transaction Request

```json
{
  "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": "test.user@judopay.com",
  "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`<br />String<br /><font color="#A5F3FC">Optional</font>   | Identifies the type / purpose of the transaction.<br />Format:<br />- Maximum 2 characters<br />**Note**: If `businessApplicationId` is provided, `aftRecipientInformation` **must&#x20;**&#x61;lso be provided.                                                                                                                                                                                                                                                                                    |
| `aftRecipientInformation`<br />Object<br /><font color="#A5F3FC">Optional</font> | **Required for AFT transactions**.<br />Contains recipient details.<br /><br />**Note**: If `aftRecipientInformation` is provided, `businessApplicationId` **must&#x20;**&#x61;lso be provided.<br />Values:<br />`firstName`<br />Recipient’s first name.<br />`addressLine1`<br />Recipient’s address line 1.<br />`countryCode`<br />ISO 3166-1 alpha-2 country code.<br />`accountType`<br />Type of recipient account.<br />`accountId`<br />Unique identifier of the recipient account.<br /> |

