Create an international beneficiary
curl --request POST \
--url https://thirdparty.qonto.com/v2/international/beneficiaries \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"quote_id": "0196edb0-9b6e-7554-9864-d111285a0a44",
"payload": {
"currency": "EUR",
"type": "aba",
"details": {
"address": {
"city": "Paris",
"country": "FR",
"postCode": 75010,
"firstLine": "6 impasse Bonne Nouvelle"
},
"swiftCode": "AAABBB00",
"accountNumber": 123456789,
"accountHolderName": "John Doe"
},
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": false
}
}
'import requests
url = "https://thirdparty.qonto.com/v2/international/beneficiaries"
payload = {
"quote_id": "0196edb0-9b6e-7554-9864-d111285a0a44",
"payload": {
"currency": "EUR",
"type": "aba",
"details": {
"address": {
"city": "Paris",
"country": "FR",
"postCode": 75010,
"firstLine": "6 impasse Bonne Nouvelle"
},
"swiftCode": "AAABBB00",
"accountNumber": 123456789,
"accountHolderName": "John Doe"
},
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": False
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
quote_id: '0196edb0-9b6e-7554-9864-d111285a0a44',
payload: {
currency: 'EUR',
type: 'aba',
details: {
address: {
city: 'Paris',
country: 'FR',
postCode: 75010,
firstLine: '6 impasse Bonne Nouvelle'
},
swiftCode: 'AAABBB00',
accountNumber: 123456789,
accountHolderName: 'John Doe'
},
legal_type: 'LEGAL_TYPE_COMPANY',
owned_by_customer: false
}
})
};
fetch('https://thirdparty.qonto.com/v2/international/beneficiaries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://thirdparty.qonto.com/v2/international/beneficiaries",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'quote_id' => '0196edb0-9b6e-7554-9864-d111285a0a44',
'payload' => [
'currency' => 'EUR',
'type' => 'aba',
'details' => [
'address' => [
'city' => 'Paris',
'country' => 'FR',
'postCode' => 75010,
'firstLine' => '6 impasse Bonne Nouvelle'
],
'swiftCode' => 'AAABBB00',
'accountNumber' => 123456789,
'accountHolderName' => 'John Doe'
],
'legal_type' => 'LEGAL_TYPE_COMPANY',
'owned_by_customer' => false
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://thirdparty.qonto.com/v2/international/beneficiaries"
payload := strings.NewReader("{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://thirdparty.qonto.com/v2/international/beneficiaries")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty.qonto.com/v2/international/beneficiaries")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}"
response = http.request(request)
puts response.read_body{
"beneficiary": {
"id": "0d6273cf-e4d0-469a-a3c8-d2196143470c",
"name": "John Doe",
"country": "US",
"currency": "USD",
"payment_type": "aba",
"account_identifier": "123456789",
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": false,
"bank_identifier": "AAABBB00",
"branch_identifier": "123456789"
},
"quote": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"status": "PENDING",
"created_at": "2025-01-01T08:00:00.000Z",
"expired_at": "2025-01-01T08:00:00.000Z",
"source_amount": {
"currency": "EUR",
"value": "100.00"
},
"target_amount": {
"currency": "USD",
"value": "110.00"
},
"rate": 1.1,
"fees": {
"total_amount": {
"currency": "EUR",
"value": "10.10"
},
"details": [
{
"currency": "EUR",
"value": "10.10"
}
]
}
},
"target_account_id": "123456"
}International transfers
Create an international beneficiary
Create an international beneficiary
POST
/
v2
/
international
/
beneficiaries
Create an international beneficiary
curl --request POST \
--url https://thirdparty.qonto.com/v2/international/beneficiaries \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"quote_id": "0196edb0-9b6e-7554-9864-d111285a0a44",
"payload": {
"currency": "EUR",
"type": "aba",
"details": {
"address": {
"city": "Paris",
"country": "FR",
"postCode": 75010,
"firstLine": "6 impasse Bonne Nouvelle"
},
"swiftCode": "AAABBB00",
"accountNumber": 123456789,
"accountHolderName": "John Doe"
},
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": false
}
}
'import requests
url = "https://thirdparty.qonto.com/v2/international/beneficiaries"
payload = {
"quote_id": "0196edb0-9b6e-7554-9864-d111285a0a44",
"payload": {
"currency": "EUR",
"type": "aba",
"details": {
"address": {
"city": "Paris",
"country": "FR",
"postCode": 75010,
"firstLine": "6 impasse Bonne Nouvelle"
},
"swiftCode": "AAABBB00",
"accountNumber": 123456789,
"accountHolderName": "John Doe"
},
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": False
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
quote_id: '0196edb0-9b6e-7554-9864-d111285a0a44',
payload: {
currency: 'EUR',
type: 'aba',
details: {
address: {
city: 'Paris',
country: 'FR',
postCode: 75010,
firstLine: '6 impasse Bonne Nouvelle'
},
swiftCode: 'AAABBB00',
accountNumber: 123456789,
accountHolderName: 'John Doe'
},
legal_type: 'LEGAL_TYPE_COMPANY',
owned_by_customer: false
}
})
};
fetch('https://thirdparty.qonto.com/v2/international/beneficiaries', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://thirdparty.qonto.com/v2/international/beneficiaries",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'quote_id' => '0196edb0-9b6e-7554-9864-d111285a0a44',
'payload' => [
'currency' => 'EUR',
'type' => 'aba',
'details' => [
'address' => [
'city' => 'Paris',
'country' => 'FR',
'postCode' => 75010,
'firstLine' => '6 impasse Bonne Nouvelle'
],
'swiftCode' => 'AAABBB00',
'accountNumber' => 123456789,
'accountHolderName' => 'John Doe'
],
'legal_type' => 'LEGAL_TYPE_COMPANY',
'owned_by_customer' => false
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://thirdparty.qonto.com/v2/international/beneficiaries"
payload := strings.NewReader("{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://thirdparty.qonto.com/v2/international/beneficiaries")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://thirdparty.qonto.com/v2/international/beneficiaries")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"quote_id\": \"0196edb0-9b6e-7554-9864-d111285a0a44\",\n \"payload\": {\n \"currency\": \"EUR\",\n \"type\": \"aba\",\n \"details\": {\n \"address\": {\n \"city\": \"Paris\",\n \"country\": \"FR\",\n \"postCode\": 75010,\n \"firstLine\": \"6 impasse Bonne Nouvelle\"\n },\n \"swiftCode\": \"AAABBB00\",\n \"accountNumber\": 123456789,\n \"accountHolderName\": \"John Doe\"\n },\n \"legal_type\": \"LEGAL_TYPE_COMPANY\",\n \"owned_by_customer\": false\n }\n}"
response = http.request(request)
puts response.read_body{
"beneficiary": {
"id": "0d6273cf-e4d0-469a-a3c8-d2196143470c",
"name": "John Doe",
"country": "US",
"currency": "USD",
"payment_type": "aba",
"account_identifier": "123456789",
"legal_type": "LEGAL_TYPE_COMPANY",
"owned_by_customer": false,
"bank_identifier": "AAABBB00",
"branch_identifier": "123456789"
},
"quote": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"status": "PENDING",
"created_at": "2025-01-01T08:00:00.000Z",
"expired_at": "2025-01-01T08:00:00.000Z",
"source_amount": {
"currency": "EUR",
"value": "100.00"
},
"target_amount": {
"currency": "USD",
"value": "110.00"
},
"rate": 1.1,
"fees": {
"total_amount": {
"currency": "EUR",
"value": "10.10"
},
"details": [
{
"currency": "EUR",
"value": "10.10"
}
]
}
},
"target_account_id": "123456"
}Authentication: API key OAuth 2.0
Scope:
Scope:
international_transfer.write Sensitive
Related guide: International transfers
The
payload object for this endpoint is the same as the one used in the List Beneficiary
requirements endpoint.This endpoint is still in beta. Please get in touch with our team if you have any question or feedback: here.
Authorizations
Bearer authorization header: Bearer <token>, where <token> is the access token received from the authorization server at the end of the OAuth 2.0 flow.
Headers
Required only for Sandbox API requests; to get one, please sign up to the Developer Portal.
Body
application/json
Was this page helpful?