curl --request POST \
--url https://api.coinvoyage.io/v3/onramp/bank/accounts \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"payment_rail": "wire",
"source_currency": "usd"
}
'import requests
url = "https://api.coinvoyage.io/v3/onramp/bank/accounts"
payload = {
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"payment_rail": "wire",
"source_currency": "usd"
}
headers = {
"X-API-KEY": "<api-key>",
"Idempotency-Key": "<idempotency-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-API-KEY': '<api-key>',
'Idempotency-Key': '<idempotency-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
destination: {
currency: {
address: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
chain_id: 30000000000001
},
wallet_address: '9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM'
},
payment_rail: 'wire',
source_currency: 'usd'
})
};
fetch('https://api.coinvoyage.io/v3/onramp/bank/accounts', 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://api.coinvoyage.io/v3/onramp/bank/accounts",
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([
'destination' => [
'currency' => [
'address' => 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
'chain_id' => 30000000000001
],
'wallet_address' => '9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM'
],
'payment_rail' => 'wire',
'source_currency' => 'usd'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>",
"X-API-KEY: <api-key>"
],
]);
$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://api.coinvoyage.io/v3/onramp/bank/accounts"
payload := strings.NewReader("{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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://api.coinvoyage.io/v3/onramp/bank/accounts")
.header("X-API-KEY", "<api-key>")
.header("Idempotency-Key", "<idempotency-key>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.coinvoyage.io/v3/onramp/bank/accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Idempotency-Key"] = '<idempotency-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2026-08-25T18:30:00Z",
"deposit_instructions": {
"account_holder_name": "CoinVoyage Customer",
"account_number": "1234567890",
"bank_address": "1801 Main Street, Kansas City, MO 64108",
"bank_beneficiary_address": "111 E 5th Avenue, San Mateo, CA 94401",
"bank_beneficiary_name": "Bridge Ventures Inc.",
"bank_name": "Lead Bank",
"bic": "COBADEFFXXX",
"br_code": "00020126580014br.gov.bcb.pix0136example-key",
"bre_b_key": "CV123456789",
"clabe": "646180157034181180",
"currency": "usd",
"deposit_message": "CV-123456",
"iban": "DE89370400440532013000",
"payment_rails": [
"wire",
"ach_push"
],
"routing_number": "021000021",
"sort_code": "123456"
},
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"id": "onramp_account_123",
"source_currency": "usd",
"status": "activated",
"updated_at": "2026-08-25T18:30:05Z"
}{
"created_at": "2026-08-25T18:30:00Z",
"deposit_instructions": {
"account_holder_name": "CoinVoyage Customer",
"account_number": "1234567890",
"bank_address": "1801 Main Street, Kansas City, MO 64108",
"bank_beneficiary_address": "111 E 5th Avenue, San Mateo, CA 94401",
"bank_beneficiary_name": "Bridge Ventures Inc.",
"bank_name": "Lead Bank",
"bic": "COBADEFFXXX",
"br_code": "00020126580014br.gov.bcb.pix0136example-key",
"bre_b_key": "CV123456789",
"clabe": "646180157034181180",
"currency": "usd",
"deposit_message": "CV-123456",
"iban": "DE89370400440532013000",
"payment_rails": [
"wire",
"ach_push"
],
"routing_number": "021000021",
"sort_code": "123456"
},
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"id": "onramp_account_123",
"source_currency": "usd",
"status": "activated",
"updated_at": "2026-08-25T18:30:05Z"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}Create Bank Onramp Account
Create reusable bank deposit instructions. Each incoming transfer is recorded as a separate deposit, and the required deposit message must be included with every transfer.
curl --request POST \
--url https://api.coinvoyage.io/v3/onramp/bank/accounts \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"payment_rail": "wire",
"source_currency": "usd"
}
'import requests
url = "https://api.coinvoyage.io/v3/onramp/bank/accounts"
payload = {
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"payment_rail": "wire",
"source_currency": "usd"
}
headers = {
"X-API-KEY": "<api-key>",
"Idempotency-Key": "<idempotency-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-API-KEY': '<api-key>',
'Idempotency-Key': '<idempotency-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
destination: {
currency: {
address: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
chain_id: 30000000000001
},
wallet_address: '9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM'
},
payment_rail: 'wire',
source_currency: 'usd'
})
};
fetch('https://api.coinvoyage.io/v3/onramp/bank/accounts', 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://api.coinvoyage.io/v3/onramp/bank/accounts",
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([
'destination' => [
'currency' => [
'address' => 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
'chain_id' => 30000000000001
],
'wallet_address' => '9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM'
],
'payment_rail' => 'wire',
'source_currency' => 'usd'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>",
"X-API-KEY: <api-key>"
],
]);
$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://api.coinvoyage.io/v3/onramp/bank/accounts"
payload := strings.NewReader("{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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://api.coinvoyage.io/v3/onramp/bank/accounts")
.header("X-API-KEY", "<api-key>")
.header("Idempotency-Key", "<idempotency-key>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.coinvoyage.io/v3/onramp/bank/accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Idempotency-Key"] = '<idempotency-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"currency\": {\n \"address\": \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\",\n \"chain_id\": 30000000000001\n },\n \"wallet_address\": \"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM\"\n },\n \"payment_rail\": \"wire\",\n \"source_currency\": \"usd\"\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2026-08-25T18:30:00Z",
"deposit_instructions": {
"account_holder_name": "CoinVoyage Customer",
"account_number": "1234567890",
"bank_address": "1801 Main Street, Kansas City, MO 64108",
"bank_beneficiary_address": "111 E 5th Avenue, San Mateo, CA 94401",
"bank_beneficiary_name": "Bridge Ventures Inc.",
"bank_name": "Lead Bank",
"bic": "COBADEFFXXX",
"br_code": "00020126580014br.gov.bcb.pix0136example-key",
"bre_b_key": "CV123456789",
"clabe": "646180157034181180",
"currency": "usd",
"deposit_message": "CV-123456",
"iban": "DE89370400440532013000",
"payment_rails": [
"wire",
"ach_push"
],
"routing_number": "021000021",
"sort_code": "123456"
},
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"id": "onramp_account_123",
"source_currency": "usd",
"status": "activated",
"updated_at": "2026-08-25T18:30:05Z"
}{
"created_at": "2026-08-25T18:30:00Z",
"deposit_instructions": {
"account_holder_name": "CoinVoyage Customer",
"account_number": "1234567890",
"bank_address": "1801 Main Street, Kansas City, MO 64108",
"bank_beneficiary_address": "111 E 5th Avenue, San Mateo, CA 94401",
"bank_beneficiary_name": "Bridge Ventures Inc.",
"bank_name": "Lead Bank",
"bic": "COBADEFFXXX",
"br_code": "00020126580014br.gov.bcb.pix0136example-key",
"bre_b_key": "CV123456789",
"clabe": "646180157034181180",
"currency": "usd",
"deposit_message": "CV-123456",
"iban": "DE89370400440532013000",
"payment_rails": [
"wire",
"ach_push"
],
"routing_number": "021000021",
"sort_code": "123456"
},
"destination": {
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
},
"id": "onramp_account_123",
"source_currency": "usd",
"status": "activated",
"updated_at": "2026-08-25T18:30:05Z"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}{
"code": 400,
"error": "Bad Request",
"message": "Invalid request parameters"
}Authorizations
Headers
API key for authentication
Required client-generated key. Retrying the same request returns the originally created API key and secret. Reusing it with a different payload returns 409. Maximum 255 characters.
255Body
Fiat currency used by Bridge bank accounts and durable bank-onramp sessions
usd, eur, mxn, brl, gbp, cop "usd"
Show child attributes
Show child attributes
{
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
}
Fiat payment rail used to fund a reusable bank-onramp account
wire, ach_push, sepa, spei, pix, faster_payments, bre_b "wire"
Response
Idempotent replay
"onramp_account_123"
Lifecycle of reusable bank deposit instructions
pending, activated, deactivated Fiat currency used by Bridge bank accounts and durable bank-onramp sessions
usd, eur, mxn, brl, gbp, cop "usd"
Show child attributes
Show child attributes
{
"currency": {
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"chain_id": 30000000000001
},
"wallet_address": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"
}
"2026-08-25T18:30:00Z"
"2026-08-25T18:30:05Z"
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
Show child attributes
Show child attributes
{
"account_number": "1234567890",
"bank_address": "1801 Main Street, Kansas City, MO 64108",
"bank_beneficiary_address": "111 E 5th Avenue, San Mateo, CA 94401",
"bank_beneficiary_name": "Bridge Ventures Inc.",
"bank_name": "Lead Bank",
"currency": "usd",
"deposit_message": "CV-123456",
"payment_rails": ["wire", "ach_push"],
"routing_number": "021000021"
}
Was this page helpful?