---
api: 'Business API'
---

# Move money between your accounts

Move money between the Revolut accounts of the business in the same currency.

The resulting transaction has the type `transfer`.

For more information, see the guides: [Send money](/docs/guides/manage-accounts/transfers/send-money).

## Endpoint

POST `/transfer`

## Request body

Create a transfer

### Attributes

- `request_id` (string)
    The ID of the request, provided by you.
    It helps you identify the transaction in your system.
    
    :::warning
    To ensure that a transfer is not processed multiple times if there are network or system errors,
    the same `request_id` should be used for requests related to the same transfer.
    :::
- `source_account_id` (string)
    The ID of the source account that you transfer the funds from.
- `target_account_id` (string)
    The ID of the target account that you transfer the funds to.
- `amount` (number)
    The amount of the funds to be transferred.
- `currency` (string)
    [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
- `reference` (string, optional)
    The reference for the funds transfer.

## Returns

### 200

The information about the transfer created

#### Response attributes

- `id` (string)
    The ID of the transaction created.
- `state` (enum)
    Indicates the transaction state. Possible values:
      - `created`: The transaction has been created and is either processed asynchronously or scheduled for a later time.
      - `pending`: The transaction is pending until it's being processed. If the transfer is made between Revolut accounts, this state is skipped and the transaction is executed instantly.
      - `completed`: The transaction was successful.
      - `declined`: The transaction was unsuccessful. This can happen for a variety of reasons, for example, insufficient account balance, wrong receiver information, etc.
      - `failed`: The transaction was unsuccessful. This can happen for a variety of reasons, for example, invalid API calls, blocked payments, etc.
      - `reverted`: The transaction was reverted. This can happen for a variety of reasons, for example, the receiver being inaccessible.
    Possible enum values:

    - `created`
    - `pending`
    - `completed`
    - `declined`
    - `failed`
    - `reverted`
- `created_at` (string)
    The date and time the transaction was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
- `completed_at` (string, optional)
    The date and time the transaction was completed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
