---
title: "SWIFT Payout"
source_url: https://docs.rapyd.net/en/swift-payout.html
lang: en
---

# SWIFT Payout

A fast way to move funds to a bank account using SWIFT | `Enterprise`

A Payout can send money from Rapyd to a beneficiary. Use the Swift Transfer payout method, or **xx_swift_bank** to wire transfer funds to a beneficiary with an international bank account in the SWIFT network.

Common use cases may include:

- Wire payout to an international employee's bank account.
- Wire payout to a supplier in another country (B2B).

## What is Regex?

Regex, is a regular expression that defines the format when  `type` is **string**. Regex can manage and match characters in strings. Rapyd employs a unique variant of regex. Note the following differences:

- A single backslash is treated as matching a backslash as an ordinary character.
- A backslash followed by an alphabetic character matches as a string of two characters.
- To match a special character such as  **\n**, you must write **\\n**.

## Payout to Bank Account Workflow

Using the Wire payment method (**xx_swift_bank**) and the corresponding required fields that beneficiaries fill out is described under How it Works.

> **Note:**
>
> A Payout requires a sender and a beneficiary as described in [Reusing Beneficiary or Sender](https://docs.rapyd.net/en/reusing-beneficiary-or-sender.md "Reusing Beneficiary or Sender").

### Step 1 - Getting Payout Information

![list-payments.jpg](image/img-c247e78509bb7de92d53f521b44ee295.jpg)

1. You request to List Payout Methods by Country to get supported payout methods.
2. Rapyd returns the list of supported payout types.
3. You call Get Payout Method Required Fields to get required fields to be completed.
4. Rapyd returns the list of required fields to be passed for processing.

### Step 2 - Processing the Payout

![process-payouts.jpg](image/img-1737215c11960dd69a93d468af38e5fe.jpg)

1. You call Create Payout and pass required fields.
2. Rapyd processes the payout to the bank—and sends a response.
3. Bank credits the beneficiary’s account.
4. Rapyd sends notification of completed Payout.

## How SWIFT Payouts Works

> **Note:**
>
> To run the examples of this use case, you must create the following ID in your own sandbox:
>
> - ewallet - Run [Creating a Rapyd Wallet](https://docs.rapyd.net/en/creating-a-rapyd-wallet.md "Creating a Rapyd Wallet") for the company wallet. Use the 'id' you get in the response.

### Finding Payout Method Types

For the payout page on your website, you need to find payout method types that match your criteria, such as the payout country and currency.

For that, you'll use [List Payout Method Types](https://docs.rapyd.net/en/list-payout-method-types.md "List Payout Method Types") with the following parameters:

Description of Parameters

| Query Parameter | Description |
| --- | --- |
| category | Enter bank as the category of the payout method. |
| beneficiary_country | Enter **GB** as the code for the United Kingdom, the beneficiary's country. |
| payout_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |

### List Payout Method Types Request

You ask for a list of all available bank payout method types for transfers in the SWIFT network using **GBP** .

- - Request

    - ```
      // Request URL: GET https://sandboxapi.rapyd.net/v1/payout_methods?beneficiary_country=GB&payout_currency=GBP

      // Message body absent
      ```

### List Payout Method Types Response

Let's take a look at the response.

A real response usually lists many payout methods.

- - Response

    - ```
      {
      "payout_method_type": "xx_swift_bank",
      "name": "Global SWIFT",
      "is_cancelable": 0,
      "is_expirable": 0,
      "is_location_specific": 0,
      "status": 1,
      "image": "/checkout/xx_swift_bank.png",
      "category": "bank",
      "beneficiary_country": "GB",
      "sender_country": "*",
      "payout_currencies": [
          "GBP"
      ],
      "sender_entity_types": [
          "company"
      ],
      "beneficiary_entity_types": [
          "company",
          "individual"
      ],
      "amount_range_per_currency": [
          {
              "maximum_amount": null,
              "minimum_amount": null,
              "payout_currency": "GBP"
          }
      ],
      "minimum_expiration_seconds": null,
      "maximum_expiration_seconds": null,
      "sender_currencies": [
          "USD",
          "SGD",
          "SEK",
          "NOK",
          "ISK",
          "HKD",
          "GBP",
          "EUR",
          "DKK",
          "CHF",
          "AUD"
      ],
      "estimated_time_of_arrival": "An estimated receipt time is not yet available for this payout method"
      },
      ```

### Sender Currencies

The **xx_swift_bank** payout method has a list of supported sender currencies. When the sender disburses funds to the beneficiary, they can use a number of different supported currencies.

The beneficiary can then accept the funds in the same currency, or in a different currency. If a beneficiary accepts the funds in a different currency from the sender, then FX (foreign exchange) will convert the funds to the desired currency.

The sender currencies for the payout method are listed in the List Payout Method Types response above.

**Note**: If the payout is created with an unsupported sender currency, the payout will fail.

Supported Sender Currencies SWIFT

|  |  |
| --- | --- |
| USD | GBP |
| SGD | EUR |
| SEK | DKK |
| NOK | CHF |
| ISK | NZD |
| HKD |  |
| AUD |  |

### Finding Required Fields for the Payout Method Type

You need to find the required fields for the **xx_swift_bank** payout method type.

For that, you'll use [Get Payout Required Fields](https://docs.rapyd.net/en/get-payout-required-fields.md "Get Payout Required Fields") with the following parameters:

Description of Path Parameters

| Path Parameter | Description |
| --- | --- |
| payout_method_type | Enter **xx_swift_bank** as the payout method type. |

Description of Query Parameters

| Query Parameter | Description |
| --- | --- |
| sender_country | Enter **FR** as the code for France, the sender's country. |
| sender_currency | Enter **EUR** as the code for Euros, the sender's currency. |
| beneficiary_country | Enter **GB** as the code for the United Kingdom,, the beneficiary's country. |
| payout_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |
| sender_entity_type | Enter 'company' as the type of entity for the sender. |
| beneficiary_entity_type | Enter 'individual' as the type of entity for the beneficiary. |
| payout_amount | Enter 3000 as the amount received by the beneficiary. |

### Get Payout Required Fields Request

You ask for the set of required fields for the **xx_swift_bank** payout method type.

- - Request

    - ```
      // Request URL: GET https://sandboxapi.rapyd.net/v1/payout_methods/xx_swift_bank/required_fields?sender_country=FR&sender_currency=EUR&beneficiary_country=GB&payout_currency=GBP&sender_entity_type=company&beneficiary_entity_type=individual&payout_amount=3000 

      // Message body absent
      ```

### Get Payout Required Fields Response

Let's take a look at the response.

- - Response

    - ```
      "status": {
             "error_code": "",
             "status": "SUCCESS",
             "message": "",
             "response_code": "",
             "operation_id": "6f8a3c1d-504f-4b9d-9b60-a83164c3053f"
         },
         "data": {
             "payout_method_type": "xx_swift_bank",
             "sender_currency": "EUR",
             "sender_country": "*",
             "sender_entity_type": "company",
             "beneficiary_country": "GB",
             "payout_currency": "GBP",
             "beneficiary_entity_type": "individual",
             "is_cancelable": 0,
             "is_location_specific": 0,
             "is_expirable": 0,
             "minimum_expiration_seconds": null,
             "maximum_expiration_seconds": null,
             "is_online": null,
             "image": "/checkout/xx_swift_bank.png",
             "status": 1,
             "beneficiary_required_fields": [
                 {
                     "name": "first_name",
                     "regex": "^.{1,20}",
                     "is_required": true,
                     "type": "string",
                     "description": "First name + Last name must not exceed 35 characters"
                 },
                 {
                     "name": "last_name",
                     "regex": "^.{1,15}",
                     "is_required": true,
                     "type": "string",
                     "description": "First name + Last name must not exceed 35 characters"
                 },
                 {
                     "name": "address",
                     "regex": "^.{1,35}",
                     "is_required": true,
                     "type": "string",
                     "description": "Beneficiary street name ; building number"
                 },
                 {
                     "name": "city",
                     "regex": "^.{1,25}",
                     "is_required": true,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "state",
                     "regex": "^.{1,15}",
                     "is_required": false,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "country",
                     "regex": "^[A-Z]{2}$",
                     "is_required": true,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "postcode",
                     "regex": "^.{1,10}",
                     "is_required": false,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "account_number",
                     "regex": "^.{1,34}$",
                     "is_required": true,
                     "type": "string"
                 },
                 {
                     "name": "bic_swift",
                     "regex": "^.{8,11}$",
                     "is_required": true,
                     "type": "string"
                 }
             ],
             "sender_required_fields": [
                 {
                     "name": "company_name",
                     "regex": "^.{1,35}",
                     "is_required": true,
                     "type": "string"
                 },
                 {
                     "name": "address",
                     "regex": "^.{1,35}",
                     "is_required": true,
                     "type": "string",
                     "description": "Beneficiary street name ; building number"
                 },
                 {
                     "name": "city",
                     "regex": "^.{1,25}",
                     "is_required": true,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "state",
                     "regex": "^.{1,15}",
                     "is_required": false,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "country",
                     "regex": "^[A-Z]{2}$",
                     "is_required": true,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "postcode",
                     "regex": "^.{1,10}",
                     "is_required": false,
                     "type": "string",
                     "description": "The combined length of city+state+country+postcode must not exceed 32 characters"
                 },
                 {
                     "name": "purpose_code",
                     "regex": "investment_income|salary|insurance_payments|computer_services|educational_services|payment_of_goods|payment_of_services|Inward_remittance",
                     "is_required": false,
                     "type": "string",
                     "allowed_values": [
                         "investment_income",
                         "salary",
                         "insurance_payments",
                         "computer_services",
                         "educational_services",
                         "payment_of_goods",
                         "payment_of_services",
                         "Inward_remittance"
                     ],
                     "description": "Required only for sending to - China, India, South Korea, Philippines, Malaysia"
                 }
             ],
             "payout_options": [
                 {
                     "name": "beneficiary_country",
                     "regex": "^[A-Z]{2}$",
                     "is_required": true,
                     "type": "string",
                     "description": "Country where the beneficiary account is held"
                 },
                 {
                     "name": "description",
                     "regex": "^.{1,140}",
                     "is_required": true,
                     "type": "string",
                     "description": "Payout purpose description"
                 },
                 {
                     "name": "statement_descriptor",
                     "regex": "^.{1,140}",
                     "is_required": false,
                     "type": "string",
                     "description": "Information to be displayed in the beneficiary statement"
                 }
             ],
             "minimum_amount": null,
             "maximum_amount": null,
             "batch_file_header": "payout_method_type,sender_currency,payout_currency,beneficiary.first_name,beneficiary.last_name,beneficiary.address,beneficiary.city,beneficiary.state,beneficiary.country,beneficiary.postcode,beneficiary.account_number,beneficiary.bic_swift,sender.company_name,sender.address,sender.city,sender.state,sender.country,sender.postcode,sender.purpose_code"
         }
      ```

The `data` section of this response shows required fields for **xx_swift_bank**.

You will use the required fields for the 'beneficiary' and 'sender' objects when you ask Rapyd to process the payout:

Description of Fields

| Beneficiary | Sender |
| --- | --- |
| first_name | company_name |
| last_name | address |
| address | city |
| city | country |
| country | purpose code (See [Purpose Code](https://docs.rapyd.net/en/swift-payout.md "SWIFT Payout") .) |
| postcode |  |
| account_number |  |
| bic_swift |  |

> **Note:**
>
> Use [Validate Beneficiary](https://docs.rapyd.net/en/validate-beneficiary.md "Validate Beneficiary") to check the beneficiary fields before you request the payout. See [Validating Beneficiary Details](https://docs.rapyd.net/en/validating-beneficiary-details.md "Validating Beneficiary Details") .

### Required Fields By Country

The following tables list the requirements for the required fields, specific to each country.

The fields used in the **xx_swift_bank** payout method are standardized. But each country has different requirements for the payout required fields information.

> **Note:**
>
> The beneficiary and sender have a character limit for the following fields: city, state, country, and postcode. The combined length of the fields can use a maximum of 32 characters for the sender, and a maximum of 32 characters for the beneficiary.

Supported Characters

The supported characters for the `first_name` , `last_name`, `address`, and  `description` fields are:

- a-z,
- A-Z,
- 0-9
- Special characters: / -? : ( ) . , ' +
- space character

The following tables list the requirements for the required fields, specific to each country.

United Kingdom (GB)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Use an IBAN for the beneficiary  `account_number` field |
| beneficiary_required_fields | bic_swift | Use BIC 11 (including branch details) for the beneficiary `bic_swift` field |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

Singapore (SG)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Enter the account number |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| beneficiary_fields | bank_code | Local bank identification code. Required for payouts to: India, USA, UK, and Australia.  Example:  - India (IFSC code): ICIC0001359 - USA (ABA number): 123456789 - UK (sort code): 123456 - Australia (BSB code): 082902 |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| sender_fields | bank_code | Local bank identification code. Required for payouts to: India, USA, UK, and Australia.  Example:  - India (IFSC code): ICIC0001359 - USA (ABA number): 123456789 - UK (sort code): 123456 - Australia (BSB code): 082902 |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

India (IN)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary. This field can be left empty if the beneficiary only has one name. |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Cannot contain dashes, spaces, or any non-standard characters. |
| beneficiary_required_fields | bic_swift | Enter the BIC information. |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is required for this country. See [Purpose Code](https://docs.rapyd.net/en/swift-payout.md "SWIFT Payout") |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. |
| payout_options | statement_descriptor | The Legal Entity Identifier (LEI) must be present for transactions above 500,000 **INR** for both the beneficiary and sender. Format: ‘Rem LEI XXXXXXXXX Ben LEI XXXXXXXX’. |

Thailand (TH)

> **Note:**
>
> Transfers equal to or greater than  **THB** 5 million require supporting documentation indicating the purpose and exact amount of each payment. Supporting documentation includes a copy of the invoice or payroll request, or a letter on signed letterhead describing the reason for transfer.

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Enter the account number |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

Hong Kong (HK)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Enter the account number |
| beneficiary_required_fields | bic_swift | Enter the BIC information. |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

Malaysia (MY)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Enter the account number |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is required for this country. See [Purpose Code](https://docs.rapyd.net/en/swift-payout.md "SWIFT Payout") |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 15 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

Brazil (BR)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Use an IBAN for the beneficiary  `account_number` field if available |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

Switzerland (CH)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Use an IBAN for the beneficiary  `account_number` field if available |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is not required for this country |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment |
| payout_options | statement_descriptor | This field is not required for this country |

South Korea (KR)

| Object | Parameter | Description |
| --- | --- | --- |
| beneficiary_required_fields | first_name | Enter the first name of the beneficiary |
| beneficiary_required_fields | last_name | Enter the last name of the beneficiary |
| beneficiary_required_fields | address | Enter the address of the beneficiary |
| beneficiary_required_fields | city | Enter the city of the beneficiary |
| beneficiary_required_fields | country | Enter the country of the beneficiary |
| beneficiary_required_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary_required_fields | account_number | Enter the account number |
| beneficiary_required_fields | bic_swift | Enter the BIC information |
| sender_required_fields | company_name | Enter the company name of the sender |
| sender_required_fields | address | Enter the address of the sender |
| sender_required_fields | city | Enter the city of the sender |
| sender_required_fields | country | Enter the country of the sender |
| sender_required_fields | purpose_code | This field is required for this country. See [Purpose Code](https://docs.rapyd.net/en/swift-payout.md "SWIFT Payout") |
| payout_options | beneficiary_country | Enter the country of the beneficiary |
| payout_options | description | Enter the purpose of the payment. Up to 15 characters. |
| payout_options | statement_descriptor | This field is not required for this country |

### Requesting a Payout

Your company is the sender of the payout and the employee is the beneficiary who receives the payout.

When your payroll manager requests a payout from the company's eWallet to an employee's bank account, you ask Rapyd to process the payout.

For that, you'll use [Create Payout](https://docs.rapyd.net/en/create-payout.md "Create Payout") with the following parameters:

Description of Body Parameters

| Body Parameter | Description |
| --- | --- |
| beneficiary | Enter a 'beneficiary' object that has the following fields:  `first_name` - Henry  `last_name` - Tan  `account_number` - 888449956988  `aba` - Enter the ABA routing number: 573675777 |
| beneficiary_country | Enter **GB** as the code for the United Kingdom, the beneficiary's country. |
| beneficiary_entity_type | Enter 'individual' as the type of entity for the beneficiary. |
| description | Enter 'Test Payout - bank to wallet' as the description of the payout transaction. |
| ewallet | Enter the wallet 'id' that you received when you created the company wallet in your sandbox. For purposes of this use case lesson, we are using  **ewallet_27a63119c130f95a6ec59f86c93f28f8**, which is the company wallet ID we created in our sandbox. |
| payout_amount | Enter 3000 as the amount received by the beneficiary. |
| payout_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |
| payout_method_type | Enter **xx_swift_bank** as the payout method type. |
| sender | Enter a 'sender' object that has the following fields:`company_name` - Enter the Business Name`purpose code` - Enter salary |
| sender_currency | Enter **EUR** as the code for Euros, the sender's currency. |
| sender_entity_type | Enter 'company' as the type of entity for the sender. |
| sender_country | Enter **FR** as the code for France, the sender's country. |

### Create Payout Request

You ask Rapyd to process the payout of 3,000 British Pound Sterling to the employee's UK bank account.

- - Request

    - ```
      // Request URL: POST https://sandboxapi.rapyd.net/v1/payouts

      // Message body: 
      {
         "ewallet": "ewallet_27a63119c130f95a6ec59f86c93f28f8",
         "merchant_reference_id": "Test-Cash-8888",
         "payout_amount": 3000,
         "payout_method_type": "xx_swift_bank",
         "sender_currency": "EUR",
         "sender_country": "FR",
         "beneficiary_country": "GB",
         "payout_currency": "GBP",
         "sender_entity_type": "company",
         "beneficiary_entity_type": "individual",
         "beneficiary": {
             "payment_type": "regular",
             "address": "1 Main Street",
             "city": "Anytown",
             "country": "US",
             "first_name": "Henry",
             "last_name": "Tan",
             "state": "NY",
             "phone_number": "+145434653466",
             "postcode": "10101",
             "aba": "573675777",
             "account_number": "888********",
             "identification_type": "work_permit",
             "identification_value": "asdasd123123"
         },
          "sender": {
                 "company_name" : "Test Sender 123",
                 "city": "Anytown",
                 "state": "NY",
                 "phone_number": "+145434653466"
             },
         "description": "Test payout - bank to wallet",
         "statement_descriptor": "Test txn",
         "metadata": {
             "merchant_defined": true
         }
      }
      ```

### Create Payout Response

Let's take a look at the response.

- - Response

    - ```
      {
         "status": {
             "error_code": "",
             "status": "SUCCESS",
             "message": "",
             "response_code": "",
             "operation_id": "4a6e569e-0ed5-4a5c-a102-a47931cf248e"
         },
         "data": {
             "id": "payout_c87991aabb7266e4dcb8fc6f2a68505c",
             "payout_type": "bank",
             "payout_method_type": "xx_swift_bank",
             "amount": 3000,
             "payout_currency": "GBP",
             "sender_amount": 3527.09,
             "sender_currency": "EUR",
             "status": "Confirmation",
             "sender_country": "FR",
             "sender": {
                 "country": "FR",
                 "entity_type": "company",
                 "name": "Test Sender 123",
                 "city": "Anytown",
                 "state": "NY",
                 "phone_number": "+145434653466",
                 "company_name": "Test Sender 123",
                 "currency": "EUR"
             },
             "beneficiary_country": "GB",
             "beneficiary": {
                 "last_name": "Tan",
                 "first_name": "Henry",
                 "country": "US",
                 "entity_type": "individual",
                 "address": "1 Main Street",
                 "name": "Henry Tan",
                 "postcode": "10101",
                 "city": "Anytown",
                 "state": "NY",
                 "phone_number": "+145434653466",
                 "account_number": "888********",
                 "currency": "GBP",
                 "identification_type": "work_permit",
                 "identification_value": "asdasd123123",
                 "aba": "573675777",
                 "payment_type": "regular"
             },
             "fx_rate": 0.85055905,
             "instructions": {},
             "ewallets": [
                 {
                     "ewallet_id": "ewallet_27a63119c130f95a6ec59f86c93f28f8",
                     "amount": 3527.09,
                     "percent": 100
                 }
             ],
             "metadata": {
                 "merchant_defined": true
             },
             "description": "Test payout - bank to wallet",
             "created_at": 0,
             "payout_fees": null,
             "expiration": null,
             "merchant_reference_id": "Test-Cash-8888",
             "paid_at": null,
             "identifier_type": null,
             "identifier_value": null,
             "error": null,
             "paid_amount": 0,
             "statement_descriptor": "Test txn",
             "gc_error_code": "NOT_IMPLEMENTED"
         }
      }
      ```

Besides parameter values that you entered in the request, the data section of this response shows:

- The `id` of the 'payout' object is **payout_c87991aabb7266e4dcb8fc6f2a68505c**. Webhooks that relate to this payout refer to this ID.
- The `payout_type` is bank.
- Under `sender`: Fields of the 'sender' object are listed.
- Under `beneficiary`: Fields of the 'beneficiary' object are listed.
- The `status` is Confirmation. This means that the 'payout' object is waiting for confirmation of the FX rate.

### Purpose Code

The purpose code describes the nature of the payout, or what the payout is for. Here are the possible values for the `purpose_code` field:

| Field | Value |
| --- | --- |
| purpose_code | investment_income |
| purpose_code | salary |
| purpose_code | insurance_payments |
| purpose_code | computer_services |
| purpose_code | educational_services |
| purpose_code | payment_of_goods |
| purpose_code | payment_of_services |
| purpose_code | Inward_remittance |

> **Note:**
>
> The following countries require a purpose code when making a payout:
>
> - China
> - India
> - South Korea
> - Philippines
> - Malaysia

### Closing the Transaction

**Simulating Payout Completion**

The sandbox does not directly simulate the action of the beneficiary receiving the payout funds. You can simulate this action with the procedure described in [Complete Payout](https://docs.rapyd.net/en/complete-payout.md "Complete Payout"). For this, you will need the payout ID and payout amount that you generated in your sandbox.

When a payout completion is simulated, Rapyd sends a webhook. Configure your system to receive webhooks with the procedure described in [Defining a Webhook Endpoint](https://docs.rapyd.net/en/defining-a-webhook-endpoint.md "Defining a Webhook Endpoint").

After you simulate that the employee's bank has accepted the transfer, Rapyd sends you [Webhook - Payout Completed](https://docs.rapyd.net/en/payout-completed-webhook.md "Payout Completed Webhook"). The webhook confirms that the payout was completed.
