# Account Funding Transactions A funding transaction (or Account Funding Transaction - AFT) is a money movement for a reason other than for the purchase of goods or services. Examples: - loading a wallet with funds using a card (including stored value digital wallets and crypto or trading wallets) - adding funds to a pre-paid card using a debit card - sending money to another person (for example as a gift) Card scheme registration You must be registered with Visa and Mastercard to perform funding transactions. ### Parameters You must include the `instruction.fundsTransfer` object to correctly flag a transaction as a funds transfer. Rules for the payment scenarios that constitute a funding transaction vary between Visa and Mastercard. We allow you to submit the `fundsTransfer` object for your particular scenario irrespective of the card scheme. The scenario is usually determined by a combination of `fundsTransfer.type`, `fundsTransfer.purpose` and `fundsTransfer.recipient.account.type`, and we ensure the transaction is routed in accordance with card scheme rules. ## International funds transfers For cross border and inter-regional funds transfers you must submit the following: Recipient: * `recipient.address.address1` * `recipient.address.city` * `recipient.address.postalCode` (supply an empty string if postal codes are not widely supported for the supplied `countryCode` eg for Ireland, `IE`) * `recipient.address.state` (mandatory for US and Canada) * `recipient.address.countryCode` Sender: * `sender.address.address1` * `sender.address.city` * `sender.address.postalCode` (supply an empty string if postal codes are not widely supported for the supplied `countryCode` eg for Ireland, `IE`) * `sender.address.state` (mandatory for US and Canada) * `sender.address.countryCode` * `sender.dateOfBirth` ## Use cases | Use case | Description | Required request values | | --- | --- | --- | | Account to Account | Transfer funds from a card account to a financial institution account owned by the cardholder. | `"type":"accountToAccount"` `"purpose"` Not `"creditCardRepayment"` | | Credit card repayment | Use a debit card to pay off a credit card bill. | `"type":"accountToAccount"``"purpose":creditCardRepayment` | | Cash | Use a card to fund a transfer where the funds are given to the recipient in cash. | `"type":"cash"` | | Disbursement: Business to Business (B2B) | Pull funds from a business card in order to pay an invoice due from another business. | `"type":"disbursement"` `"purpose":"businessToBusiness"` | | Disbursement: Payroll | Pull funds from a business card to fund payroll disbursements made by a payroll provider on behalf of a business. | `"type":"disbursement"``"purpose":"payroll"` | | Disbursement: Business to Consumer (B2C) | Pull funds from a business card to fund a business disbursement. | `"type":"disbursement"` `"purpose"` Not `"businessToBusiness"` or `"payroll"` | | Person to Person | Transfer funds from a card account to an account owned by another person. | `"type":"personToPerson"` | | Purchase a gift card | Purchase a gift card. Note: `sender` and `recipient` values must exactly match if the recipient of the gift card is the same as the person purchasing the gift card. | `"type":"purchase"``"purpose":"giftCard"` | | Purchase a pre-paid card | Purchase a pre-paid card. | `"type":"purchase"``"purpose":"prePaidCard"` | | Purchase cryptocurrency | Purchase crypto directly without an intermediary fiat wallet load. | `"type":"purchase"``"purpose":"crypto"``"recipient.account.type": "wallet"` | | Purchase liquid assets | Purchase crypto directly without an intermediary fiat wallet load. Liquid assets include shares, stock and foreign currencies. | `"type":"purchase"``"purpose":"liquidAssets"``"recipient.account.type": "wallet"` | | Top up a debit account | Transfer funds from a card to a debit card account owned by the cardholder. | `"type":"topUp"``"purpose":"debitCard"` | | Top up a pre-paid account | Transfer funds from a card to a pre-paid card account. | `"type":"topUp"``"purpose":"prePaidCard"` | | Wallet load: cryptocurrency | Transfer funds from a card to a crypto exchange wallet for the purpose of purchasing cryptocurrency. | `"type":"walletLoad"``"purpose":"crypto"``"recipient.account.type": "storedValueWallet"` | | Wallet load: liquid assets | Transfer funds from a card to a trading wallet for the purpose of purchasing stocks, shares, or foreign currency. | `"type":"walletLoad"``"purpose":"liquidAssets"``"recipient.account.type": "storedValueWallet"` | | Wallet load: high risk securities | Transfer funds from a card to a trading wallet for the purpose of purchasing high risk securities. | `"type":"walletLoad"``"purpose":"highRiskSecurities"``"recipient.account.type": "storedValueWallet"` | | Wallet load: gaming | Transfer funds from a card to a gaming wallet. | `"type":"walletLoad"``"purpose":"gaming"``"recipient.account.type": "storedValueWallet"` | | Wallet load: merchant wallet | Transfer funds from a card to a merchant wallet, where funds can be used to purchase items from the merchant exclusively. | `"type":"walletLoad"``"recipient.account.type": "merchantWallet"` | ## Request examples Wallet load - Crypto "instruction": { "fundsTransfer": { "type": "walletLoad", "purpose": "crypto", "recipient": { "account": { "type": "storedValueWallet", "walletReference": "ABCDE12345" }, "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" }, "dateOfBirth": { "day": 12, "month": 4, "year": 2001 }, "phoneNumber": "+447987 654321" }, "sender": { "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" } } } } Wallet load - Liquid assets "instruction": { "fundsTransfer": { "type": "walletLoad", "purpose": "liquidAssets", "recipient": { "account": { "type": "storedValueWallet", "walletReference": "ABCDE12345" }, "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" }, "dateOfBirth": { "day": 12, "month": 4, "year": 2001 }, "phoneNumber": "+447987 654321" }, "sender": { "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" } } } } Purchase - Crypto "instruction": { "fundsTransfer": { "type": "purchase", "purpose": "crypto", "recipient": { "account": { "type": "wallet", "walletReference": "ABCDE12345" }, "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" }, "dateOfBirth": { "day": 12, "month": 4, "year": 2001 }, "phoneNumber": "+447987 654321" }, "sender": { "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" } } } } Purchase - Liquid assets "instruction": { "fundsTransfer": { "type": "purchase", "purpose": "liquidAssets", "recipient": { "account": { "type": "wallet", "walletReference": "ABCDE12345" }, "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" }, "dateOfBirth": { "day": 12, "month": 4, "year": 2001 }, "phoneNumber": "+447987 654321" }, "sender": { "firstName": "John", "middleName": "Roger", "lastName": "Smith", "address": { "address1": "221B Baker Street", "address2": "Marylebone", "postalCode": "NW1 6XE", "city": "London", "state": "LDN", "countryCode": "GB" } } } } ## Response The authorization response is the same across both funding transactions and regular card payment authorizations. ## Refunds Refunds for funding transactions must only be used for true refund scenarios (e.g. a funding transaction is used as the source of funds for a subsequent funds transfer which fails; the funding transaction is refunded to return the funds to the sender's card account). A refund must not be used to return funds previously transferred into a wallet or account (unless the funds had been transferred in error in which case the full amount should be refunded). If funds need to be unloaded from a wallet or account back to the owner's card then you must [make a card payout](/products/money-transfers/make-money-transfer).