Guides • Manage Accounts
Bank transfers

Send money via bank transfer


Due to PSD2 Strong Customer Authentication regulations, the /pay endpoint is only available for customers on Revolut Business Company plans. If you're a freelancer and wish to make payments via our API, we advise that you instead leverage our Payment Drafts (/payment-drafts) endpoint.

The Business API lets you use the /pay endpoint to make transfers to bank accounts or similar accounts. You can use it, for example, to make payments to counterparties or to send money to your external accounts.

This tutorial walks you through the steps of making a payment to a counterparty.

  • To send money to a credit or debit card, see Card transfers.
  • To send money without knowing the banking details of the recipient, see Payout links.

Bank transfer flow

An incoming or outgoing payment is represented as a transaction. A transaction is processed in two stages:

  1. A transaction is created.

  2. The transaction is processed in either of the following ways:

    • Credit/debit on both sides of the transaction made between Revolut accounts.

      Transfers between Revolut accounts (either business or personal) execute instantly.

    • Posted to an external payment network, for example, Faster Payments, SEPA, SWIFT, etc.

      If the transfer is made to an external payment network, when the transaction is created, the payment is in the pending state. The state changes when the transaction is processed.

      Processed transaction states

      When the transaction is processed, it has one of the following states:

      • completed
      • failed
      • reverted
      • declined

      For more information about the transaction states, see the state response parameter in Business API: Create a transfer to another account.


See also how to validate an account name (CoP) when making a payment to a counterparty (UK only).

Make a payment

To pay a counterparty, make a transfer using the /pay endpoint providing the following details:

  • Request ID: An ID for the transaction, used for idempotency to prevent duplicate requests from being processed. UUID is recommended.


    Always provide a unique request ID for each individual payment. This allows you to safely retry the payment in the event of any network issues; if the payment was successful, a second attempt with the same request ID won't be processed.

  • Account ID: The ID of your own account from which you want to make the transfer.

  • Recipient's counterparty ID: The ID of the counterparty that you previously created.


    If the counterparty has multiple payment methods available, for example, 2 accounts, or 1 account and 1 card, you must also specify the ID of the account to which you want to transfer the money.


    If unsure, you can look up you counterparty's ID and account ID by retrieving a list of your counterparties filtered by the counterparty's name.

  • Amount: The amount of money that you want to send.

  • Currency: The currency in which you want to make the transfer.

  • Reference: A short message which helps both you and the recipient to identify the payment.

If the payment is processed instantly, the response includes its completed_at date. If it is processed asynchronously, this date is not returned in the response.

To see example requests and responses:

See the API reference: Create a transfer to another account

Transfer reason code

Depending on the recipient's country and currency, for certain transactions, it might be required to provide the reason for sending the payment.

To get all transfer reasons available to your business account per country and currency, use the /transfer-reasons endpoint.

See the API reference: Get transfer reasons

What's next

Now that you've made your transaction, learn how to retrieve your transaction data and check its details.

Was this page helpful?