Perform an Account Funding Transaction
Last updated: September 4, 2024
An Account Funding Transaction (AFT) is a transaction in which funds are pulled from an account and used to fund a non-merchant account. For example, to load a prepaid card, top up a wallet, or fund a person-to-person (P2P) money transfer.
Note
To start using this feature, contact your Account Manager or [email protected].
The requirements for performing an AFT vary depending on:
- where the transaction is made (operating region)
- whether the transaction is domestic or cross-border (transaction category)
To perform an AFT, you send a request to our Payments API with the processing.aft
field set to true
, along with a recipient
and a sender
object containing information about the transaction's sender and receiver.
Each credit card scheme might require different information about the recipient and the sender, depending on the operating region and transaction category.
post
https://api.checkout.com/payments
For the full API specification, see the API reference.
Field name | Description |
---|---|
| A boolean value that indicates if the payment request is an AFT. |
| A string describing the purpose of the payment. This field is required if the card's
You must retrieve card metadata to view the card's |
Depending on the operating region, you must configure your recipient
and sender
with certain required information.
Checkout.com supports the following regions and transaction categories for Visa:
- Europe: Domestic
- Europe: Cross-border and intra-Europe
- APAC: Domestic
- APAC: Cross-border
- UAE: Domestic
- UAE: Cross-border
- USA: Domestic
Information
USA cross-border transactions for Visa are not supported.
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number. | Sender information is optional. |
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number.
All fields in the | The following fields are required:
|
Recipient and sender data is optional.
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number. All fields in the | The following fields are required:
|
Recipient and sender data is optional.
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number. All fields in the | The following fields are required:
|
Recipient data | Sender data |
---|---|
The following fields are required:
| The following fields are required:
|
For the full API specification, see the API reference.
post
https://api.checkout.com/payments
Field name | Description |
---|---|
| A boolean value that indicates if the payment request is an AFT. |
Depending on the operating region, you must configure your recipient
and sender
with certain required information.
Checkout.com supports the following regions and transaction categories for Mastercard:
Note
UAE and USA cross-border transactions for Mastercard are not supported.
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number.
| Sender information is optional. |
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number.
| Sender information is optional. |
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number.
| Sender information is optional. |
Recipient data | Sender data |
---|---|
The following fields are required:
If you're funding an account, provide the recipient's account number. This may be an international account number (IBAN), phone number, or the first six digits and last four digits of the primary account number (PAN). If you're funding a card, provide the PAN number.
| The following fields are required:
|
1{2"source": {3"type": "token",4"token": "tok_4gzeau5o2uqubbk6fufs3m7p54"5},6"amount": 6500,7"currency": "GBP",8"processing": {9"aft": true10},11"partial_authorization": {12"enabled": "true"13},14"recipient": {15"first_name": "John",16"last_name": "Smith",17"account_number": "5555554444",18"address": {19"country": "GB"20}21},22"sender": {23"type": "individual",24"first_name": "Jane",25"last_name": "Smith",26"address": {27"address_line1": "123 High St.",28"city": "London",29"country": "GB"30}31}32}
Use the approved
field to check whether or not the authorization was successful ("approved": true
). If your authorization was not successful, it's possible the payment used:
- an invalid card
- an expired card
- a valid card with an insufficient available balance
If you received a 202
response, the payment requires a redirect. For example, if the payment is 3D Secure.
Information
The following pages can help you understand the response message:
- CVV codes and descriptions
- AVS codes
- API response codes (if the authorization was unsuccessful)
The possible values for the status field include:
Authorized
Captured
Card Verified
Declined
Pending
Note that Pending
only applies to 3D Secure payments.
1{2"id": "pay_mbabizu24mvu3mela5njyhpit4",3"action_id": "act_mbabizu24mvu3mela5njyhpit4",4"amount": 6500,5"currency": "GBP",6"approved": true,7"status": "Authorized",8"auth_code": "770687",9"eci": "05",10"scheme_id": "638284745624527",11"response_code": "10000",12"response_summary": "Approved",13"risk": {14"flagged": false15},16"source": {17"id": "src_nwd3m4in3hkuddfpjsaevunhdy",18"type": "card",19"expiry_month": 9,20"expiry_year": 2022,21"scheme": "Visa",22"last4": "4242",23"fingerprint": "F31828E2BDABAE63EB694903825CDD36041CC6ED461440B81415895855502832",24"bin": "424242",25"card_type": "CREDIT",26"card_category": "CONSUMER",27"issuer": "Test Bank",28"issuer_country": "GB",29"product_id": "A",30"product_type": "Visa Traditional",31"avs_check": "S",32"cvv_check": ""33},34"customer": {35"id": "cus_udst2tfldj6upmye2reztkmm4i"36},37"processing": {38"acquirer_transaction_id": "708183248720806995996",39"retrieval_reference_number": "471056794828",40"merchant_category_code": "0742",41"scheme_merchant_id": "502177",42"aft": true43},44"processed_on": "2019-01-25T11:03:36Z",45"reference": "ORD-5023-4E89",46"_links": {47"self": {48"href": "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4"49},50"actions": {51"href": "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4/actions"52},53"capture": {54"href": "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4/captures"55},56"void": {57"href": "https://api.sandbox.checkout.com/payments/pay_mbabizu24mvu3mela5njyhpit4/voids"58}59}60}
Information
Possibly fraudulent authorization requests return the message risk.flagged: true
to show that the payment has been flagged.