Skip to main content

Documentation

Creating an AFT Payment

Create a card payment for an account funding transaction (AFT).

Note

The AFT feature is in beta testing. To enable this feature, contact Rapyd Client Support.

Relevant to payment method types that support this feature.

Sandbox only.

You can transfer funds from a card as follows:

  • Indirectly through the company wallet of a licensed business entity that manages the customer’s wallet. The business forwards the funds to the customer’s wallet. In the payment request, you specify the customer object.

  • Directly to the cardholder’s own wallet. In the payment request, you specify the person wallet.

Transferring Funds Indirectly

Use the following Create Payment request parameters:

  • Set payment_method_options.aft to true.

  • Set payment_method_options.purpose_code to one of the following:

    • crowd_lending

    • crypto_currency

    • education

    • emergency_need

    • family_support

    • gifts

    • hospitalization_and_medical_treatment

    • other

    • regular_labor_transfers

    • salary

    • savings

    • travel_and_tourism

  • complete_payment_url and error_payment_url are required.

  • Set the ID of the customer object or create a customer. See Create Customer.

    In the customer object:

    • date_of_birth is required.

    • The following fields are recommended:

      • birth_country

      • email

      • nationality

      • occupation

    • The following customer address fields are required. See Create Address.

      • city

      • country

      • line_1 of the address

      • phone_number

      • zip

    • Create Payment - AFT for customer: Request

      • curl -X post
        https://sandboxapi.rapyd.net/v1/payments/
        -H 'access_key: your-access-key-here'
        -H 'Content-Type: application/json'
        -H 'idempotency: your-idempotency-parameter-here'
        -H 'salt: your-random-string-here'
        -H 'signature: your-calculated-signature-here'
        -H 'timestamp: your-unix-timestamp-here'
        -d '{
            "amount": 4,
            "currency": "GBP",
            "description": "AFT payment - customer",
        	"capture": true,	
            "complete_payment_url": "https://complete.example.net",    
            "error_payment_url": "https://error.example.net",
            "payment_method": {
                "type": "at_visa_card",
                "fields": {
                    "number": "4111111111111111",
                    "expiration_month": "12",
                    "expiration_year": "31",
                    "cvv": "456",
                    "name": "John Doe"
                }
            },	
            "payment_method_options": {
                "purpose_code": "family_support",
                "aft": true
            },
            "customer": {
                "name": "John Doe",
                "email": "johndoe@rapyd.net",
                "business_vat_id": "12345678915",
                "occupation": "developer",
                "birth_country": "US",
                "date_of_birth": "09/12/1997",
                "nationality": "US",
                "phone_number": "+19175551234",
                "addresses": [{
                        "name": "John Doe",
                        "line_1": "123 State Street",
                        "line_2": "Apt.34",
                        "line_3": "",
                        "city": "Anytown",
                        "state": "NY",
                        "country": "US",
                        "zip": "12345",
                        "phone_number": "12125559999"
                    }
                ]
            }
        }
        '
    • Create Payment - AFT for customer: Response

      • {
            "status": {
                "error_code": "",
                "status": "SUCCESS",
                "message": "",
                "response_code": "",
                "operation_id": "b4e297ad-ba06-46c4-b026-f0313c752196"
            },
            "data": {
                "id": "payment_71fbb2bf0ffeca6029cc0748dfb0d76e",
                "amount": 4,
                "original_amount": 4,
                "is_partial": false,
                "currency_code": "GBP",
                "country_code": "AT",
                "status": "CLO",
                "description": "AFT payment - customer",
                "merchant_reference_id": "",
                "customer_token": "cus_e43c4977b914239bf46dcbc52a225183",
                "payment_method": null,
                "payment_method_data": {
                    "id": null,
                    "type": "at_visa_card",
                    "category": "card",
                    "metadata": null,
                    "image": "",
                    "webhook_url": "",
                    "supporting_documentation": "",
                    "next_action": "not_applicable",
                    "name": "John Doe",
                    "last4": "1111",
                    "acs_check": "unchecked",
                    "cvv_check": "unchecked",
                    "bin_details": {
                        "type": "CREDIT",
                        "brand": "VISA",
                        "level": "CLASSIC",
                        "issuer": "VISA EUROPE LIMITED",
                        "country": "GB",
                        "bin_number": "411111"
                    },
                    "expiration_year": "31",
                    "expiration_month": "12",
                    "fingerprint_token": "ocfp_67f3a5bc9766b181f1624a6260174345",
                    "network_reference_id": "000000564531014",
                    "payment_account_reference": "V0010013018036782991622965076"
                },
                "auth_code": "663915",
                "expiration": 1748504528,
                "captured": true,
                "refunded": false,
                "refunded_amount": 0,
                "receipt_email": "",
                "redirect_url": "",
                "complete_payment_url": "https://complete.example.net",
                "error_payment_url": "https://error.example.net",
                "receipt_number": "",
                "flow_type": "",
                "address": null,
                "statement_descriptor": "Doc Team",
                "transaction_id": "",
                "created_at": 1747899728,
                "metadata": {},
                "failure_code": "",
                "failure_message": "",
                "paid": true,
                "paid_at": 1747899729,
                "dispute": null,
                "refunds": null,
                "order": null,
                "outcome": null,
                "visual_codes": {},
                "textual_codes": {},
                "instructions": [],
                "ewallet_id": "ewallet_5efc4cbe901b903df7bb3f26eb769331",
                "ewallets": [
                    {
                        "ewallet_id": "ewallet_5efc4cbe901b903df7bb3f26eb769331",
                        "amount": 4,
                        "percent": 100,
                        "refunded_amount": 0
                    }
                ],
                "payment_method_options": {
                    "aft": true,
                    "purpose_code": "family_support"
                },
                "payment_method_type": "at_visa_card",
                "payment_method_type_category": "card",
                "fx_rate": 1,
                "merchant_requested_currency": null,
                "merchant_requested_amount": null,
                "fixed_side": "",
                "payment_fees": null,
                "invoice": "",
                "escrow": null,
                "group_payment": "",
                "cancel_reason": null,
                "initiation_type": "customer_present",
                "mid": "mid_0f15e88b73d11e3eab39f5bad87e0759",
                "next_action": "not_applicable",
                "error_code": "",
                "remitter_information": {},
                "save_payment_method": false,
                "merchant_advice_code": null,
                "merchant_advice_message": null,
                "transaction_link_id": null
            }
        }

Transferring Funds Directly

Use the following Create Payment request parameters:

  • Set payment_method_options.aft to true.

  • Set payment_method_options.purpose_code to one of the following:

    • crowd_lending

    • crypto_currency

    • education

    • emergency_need

    • family_support

    • gifts

    • hospitalization_and_medical_treatment

    • other

    • regular_labor_transfers

    • salary

    • savings

    • travel_and_tourism

  • complete_payment_url and error_payment_url are required.

  • Set the ID of the cardholder’s person ewallet. See Create Wallet.

    The cardholder’s first name, last name, and country must match the values of the wallet contact.

    The following wallet contact fields are required. See Add Contact to Wallet.

    • first_name

    • last_name

    • country

    • The following wallet contact address fields are required. See Create Address.

      • city

      • line_1 of the address

      • zip

    • Create Payment - AFT for person wallet: Request

      • curl -X post
        https://sandboxapi.rapyd.net/v1/payments/
        -H 'access_key: your-access-key-here'
        -H 'Content-Type: application/json'
        -H 'idempotency: your-idempotency-parameter-here'
        -H 'salt: your-random-string-here'
        -H 'signature: your-calculated-signature-here'
        -H 'timestamp: your-unix-timestamp-here'
        -d '{
            "amount": 1.07,
            "currency": "EUR",
            "description": "AFT payment - person wallet",
            "capture": true,
            "ewallet": "ewallet_4d4b74f67ddf7cd8fd9ea33bf72aa3bd",
            "complete_payment_url": "https://complete.example.net",
            "error_payment_url": "https://error.example.net",
            "payment_method": {
                "type": "nl_visa_card",
                "fields": {
                    "number": "4111111111111111",
                    "expiration_month": "11",
                    "expiration_year": "31",
                    "cvv": "123",
                    "name": "John Doe"
                }
            },
            "payment_method_options": {
                "purpose_code": "family_support",
                "aft": true
            }
        }
        '
    • Create Payment - AFT for person wallet: Response

      • {
            "status": {
                "error_code": "",
                "status": "SUCCESS",
                "message": "",
                "response_code": "",
                "operation_id": "851d1197-b7b0-43b2-a3c1-1353e227cf75"
            },
            "data": {
                "id": "payment_bafcc78a0542ef64f3bbd145c130690c",
                "amount": 1.07,
                "original_amount": 1.07,
                "is_partial": false,
                "currency_code": "EUR",
                "country_code": "NL",
                "status": "CLO",
                "description": "AFT payment - person wallet",
                "merchant_reference_id": "",
                "customer_token": "cus_77dbcd9f07c1d78a7702a46a3d8c1d4e",
                "payment_method": "card_38f74ed0a42211b2c9a08aa945074875",
                "payment_method_data": {
                    "id": "card_38f74ed0a42211b2c9a08aa945074875",
                    "type": "nl_visa_card",
                    "category": "card",
                    "metadata": null,
                    "image": "",
                    "webhook_url": "",
                    "supporting_documentation": "",
                    "next_action": "not_applicable",
                    "name": "John Doe",
                    "last4": "1111",
                    "acs_check": "unchecked",
                    "cvv_check": "unchecked",
                    "bin_details": {
                        "type": "CREDIT",
                        "brand": "VISA",
                        "level": "CLASSIC",
                        "country": "NL",
                        "bin_number": "411111"
                    },
                    "expiration_year": "31",
                    "expiration_month": "11",
                    "fingerprint_token": "ocfp_c6abbccb3440fcb0fc34ae14126607fa",
                    "network_reference_id": "000000111222999",			
                    "payment_account_reference": "V0010013018036782991622965076"
                },
                "auth_code": "003603",
                "expiration": 1748504528,
                "captured": true,
                "refunded": false,
                "refunded_amount": 0,
                "receipt_email": "",
                "redirect_url": "",
                "complete_payment_url": "https://complete.example.net",
                "error_payment_url": "https://error.example.net",
                "receipt_number": "",
                "flow_type": "",
                "address": null,
                "statement_descriptor": "Doc Team",
                "transaction_id": "",
                "created_at": 1747899728,
                "metadata": {},
                "failure_code": "",
                "failure_message": "",
                "paid": true,
                "paid_at": 1747899729,
                "dispute": null,
                "refunds": null,
                "order": null,
                "outcome": null,
                "visual_codes": {},
                "textual_codes": {},
                "instructions": [
                    {
                        "name": "instructions",
                        "steps": [
                            {
                                "step1": ""
                            }
                        ]
                    }
                ],
                "ewallet_id": "ewallet_4d4b74f67ddf7cd8fd9ea33bf72aa3bd",
                "ewallets": [
                    {
                        "ewallet_id": "ewallet_4d4b74f67ddf7cd8fd9ea33bf72aa3bd",
                        "amount": 1.07,
                        "percent": 100,
                        "refunded_amount": 0
                    }
                ],
                "payment_method_options": {
                    "aft": true,
                    "purpose_code": "family_support"
                },
                "payment_method_type": "nl_visa_card",
                "payment_method_type_category": "card",
                "fx_rate": 1,
                "merchant_requested_currency": null,
                "merchant_requested_amount": null,
                "fixed_side": "",
                "payment_fees": null,
                "invoice": "",
                "escrow": null,
                "group_payment": "",
                "cancel_reason": null,
                "initiation_type": "customer_present",
                "mid": "mid_7b624b32f161313347d554138d81858",
                "next_action": "not_applicable",
                "error_code": "",
                "remitter_information": {},		
                "save_payment_method": false,
                "merchant_advice_code": null,
                "merchant_advice_message": null,
                "transaction_link_id": null
            }
        }