International transfers enable you to send money to bank accounts outside the Eurozone, supporting payments in multiple currencies.

As each country has its own regulations and requirements, the information needed for international transfers may vary.

This guide outlines the available API endpoints for managing international transfers.

  1. Eligibility

Before proceeding with international transfers, you must ensure that the organization is eligible for this service. To check eligibility, send a GET request to /v2/international/eligibility (see Check Eligibility).

  1. Currencies

To find out which currencies are supported for international transfers, you can retrieve a list of available currencies by sending a GET request to /v2/international/currencies (see List Available Currencies).

  1. Quote

To initiate an international transfer, the first step is to obtain a quote. The quote includes key details such as the exchange rate and applicable fees.

To get a quote, send a POST request to /v2/international/quotes (see Create a Quote).

Quotes are only valid for a limited time, so it’s recommended to proceed with the transfer promptly after obtaining one. If the quote expires, Qonto will generate a new one; please note that the exchange rate and fees may differ.

  1. Beneficiary

To send an international transfer, you must have a beneficiary set up—a beneficiary is the recipient of the transfer.

You can either create a new beneficiary or reuse an existing one. To list existing beneficiaries, send a GET request to /v2/international/beneficiaries. (see List Beneficiaries).

In both scenarios (create a new beneficiary or reuse an existing one), you will need to check if the user has to provide more information to complete the transfer.

To do so, you have to make a POST request to /v2/international/beneficiaries/requirements(see Check Beneficiary Requirements). This endpoint returns the specific requirements the user must provide to properly configure the beneficiary.

For usage details, please refer to the endpoint documentation.

After you have collected the required information, you have to either:

  • Update the existing beneficiary by making a PUT request to /v2/international/beneficiaries/{beneficiaryId} (see Update Beneficiary)
  • Create a new beneficiary by making a POST request to /v2/international/beneficiaries (see Create Beneficiary)

You may receive a new quote after creating or updating a beneficiary. Please use this new one to proceed with the transfer.

  1. Transfer

Once you have a quote and a beneficiary, you can start working on the transfer itself. The first step is to list the required data for the transfer. To do so, you can make a POST request to /v2/international/transfers/requirements (see Check Transfer Requirements).

This endpoint behaves similarly to the beneficiary requirements endpoint.

After you have collected the required information for the transfer, you can initiate the transfer by making a POST request to /v2/international/transfers (see Create Transfer).

Summary

Here are the steps to follow when working with international transfers:

  1. Check Eligibility: Ensure the organization is eligible for international transfers, by sending a GET request to /v2/international/eligibility.
  2. List Currencies: Retrieve the list of supported currencies by sending a GET request to /v2/international/currencies.
  3. Create a Quote: Obtain a quote for the transfer by sending a POST request to /v2/international/quotes.
  4. List Beneficiaries: Check existing beneficiaries by sending a GET request to /v2/international/beneficiaries.
  5. Check Beneficiary Requirements: Ensure you have the necessary information for the beneficiary by sending a POST request to /v2/international/beneficiaries/requirements.
  6. Create or Update Beneficiary: Either create a new beneficiary by sending a POST request to /v2/international/beneficiaries or update an existing one by sending a PUT request to /v2/international/beneficiaries/{beneficiaryId}.
  7. Check Transfer Requirements: Gather the required information for the transfer by sending a POST request to /v2/international/transfers/requirements.
  8. Create Transfer: Initiate the transfer by sending a POST request to /v2/international/transfers.