Legacy: List offramps
curl --request GET \
--url https://api.daya.co/v1/offramps \
--header 'X-Api-Key: <x-api-key>'import requests
url = "https://api.daya.co/v1/offramps"
headers = {"X-Api-Key": "<x-api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<x-api-key>'}};
fetch('https://api.daya.co/v1/offramps', 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.daya.co/v1/offramps",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <x-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"
"net/http"
"io"
)
func main() {
url := "https://api.daya.co/v1/offramps"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<x-api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.daya.co/v1/offramps")
.header("X-Api-Key", "<x-api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.daya.co/v1/offramps")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<x-api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "a50e8400-e29b-41d4-a716-446655440000",
"type": "PERMANENT",
"customer_id": "650e8400-e29b-41d4-a716-446655440000",
"address": "0x1a2b3c4d5e6f7890abcdef1234567890abcdef12",
"chain": "ETHEREUM",
"asset": "USDC",
"status": "ACTIVE",
"settlement": {
"mode": "INTERNAL_BALANCE",
"rate_id": null,
"destination_bank": null
},
"created_at": "2026-01-10T12:00:00Z",
"updated_at": "2026-01-10T12:00:00Z"
},
{
"id": "b60e8400-e29b-41d4-a716-446655440000",
"type": "TEMPORARY",
"customer_id": "660e8400-e29b-41d4-a716-446655440000",
"address": "TN3W4H6rK2ce4vX9YnFQHwKENnHjoxb3m9",
"chain": "TRON",
"asset": "USDT",
"status": "ACTIVE",
"settlement": {
"mode": "NGN_PAYOUT",
"rate_id": "rate_8x7k2mq9p",
"destination_bank": {
"account_name": "John Doe",
"account_number": "0123456789",
"bank_code": "058"
}
},
"created_at": "2026-01-14T15:05:00Z",
"updated_at": "2026-01-14T15:05:00Z"
}
],
"total": 2,
"page": 1,
"limit": 50,
"total_pages": 1
}
Offramps
Legacy: List offramps
Legacy route for listing crypto receive flows
GET
/
v1
/
offramps
Legacy: List offramps
curl --request GET \
--url https://api.daya.co/v1/offramps \
--header 'X-Api-Key: <x-api-key>'import requests
url = "https://api.daya.co/v1/offramps"
headers = {"X-Api-Key": "<x-api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Api-Key': '<x-api-key>'}};
fetch('https://api.daya.co/v1/offramps', 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.daya.co/v1/offramps",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Api-Key: <x-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"
"net/http"
"io"
)
func main() {
url := "https://api.daya.co/v1/offramps"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<x-api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.daya.co/v1/offramps")
.header("X-Api-Key", "<x-api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.daya.co/v1/offramps")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<x-api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "a50e8400-e29b-41d4-a716-446655440000",
"type": "PERMANENT",
"customer_id": "650e8400-e29b-41d4-a716-446655440000",
"address": "0x1a2b3c4d5e6f7890abcdef1234567890abcdef12",
"chain": "ETHEREUM",
"asset": "USDC",
"status": "ACTIVE",
"settlement": {
"mode": "INTERNAL_BALANCE",
"rate_id": null,
"destination_bank": null
},
"created_at": "2026-01-10T12:00:00Z",
"updated_at": "2026-01-10T12:00:00Z"
},
{
"id": "b60e8400-e29b-41d4-a716-446655440000",
"type": "TEMPORARY",
"customer_id": "660e8400-e29b-41d4-a716-446655440000",
"address": "TN3W4H6rK2ce4vX9YnFQHwKENnHjoxb3m9",
"chain": "TRON",
"asset": "USDT",
"status": "ACTIVE",
"settlement": {
"mode": "NGN_PAYOUT",
"rate_id": "rate_8x7k2mq9p",
"destination_bank": {
"account_name": "John Doe",
"account_number": "0123456789",
"bank_code": "058"
}
},
"created_at": "2026-01-14T15:05:00Z",
"updated_at": "2026-01-14T15:05:00Z"
}
],
"total": 2,
"page": 1,
"limit": 50,
"total_pages": 1
}
Overview
Retrieve offramps through the legacy compatibility route. New integrations should useGET /v1/funding-accounts with rail=CRYPTO_ADDRESS.
Authentication
string
required
Your merchant API key
Query Parameters
string
Filter by offramp typeAllowed values:
TEMPORARY, PERMANENTstring
Filter by blockchain networkAllowed values:
APTOS, BASE, CELO, ETHEREUM, POLYGON, SOLANA, TRONstring
Filter by stablecoin assetAllowed values:
USDC, USDTstring
Filter by offramp statusAllowed values:
ACTIVE, INACTIVE, EXPIREDstring
Filter by settlement modeAllowed values:
INTERNAL_BALANCE, NGN_PAYOUTinteger
Page number (1-indexed)Default:
1integer
Results per pageDefault:
50Max: 200Request Examples
curl --request GET \
--url 'https://api.daya.co/v1/offramps' \
--header 'X-Api-Key: YOUR_API_KEY'
curl --request GET \
--url 'https://api.daya.co/v1/offramps?type=PERMANENT' \
--header 'X-Api-Key: YOUR_API_KEY'
curl --request GET \
--url 'https://api.daya.co/v1/offramps?chain=ETHEREUM&asset=USDC' \
--header 'X-Api-Key: YOUR_API_KEY'
curl --request GET \
--url 'https://api.daya.co/v1/offramps?page=2&limit=20' \
--header 'X-Api-Key: YOUR_API_KEY'
const response = await fetch(
'https://api.daya.co/v1/offramps?type=PERMANENT&chain=ETHEREUM&page=1&limit=20',
{
headers: {
'X-Api-Key': 'YOUR_API_KEY'
}
}
);
const data = await response.json();
import requests
response = requests.get(
'https://api.daya.co/v1/offramps',
params={
'type': 'PERMANENT',
'chain': 'ETHEREUM',
'page': 1,
'limit': 20
},
headers={'X-Api-Key': 'YOUR_API_KEY'}
)
data = response.json()
Response
array
required
Array of offramp objects
Show offramp properties
Show offramp properties
string
Unique offramp identifier (UUID)
string
Offramp type:
TEMPORARY or PERMANENTstring
Associated customer ID (UUID)
string
Crypto deposit address
string
Blockchain network
string
Stablecoin asset:
USDC or USDTstring
Offramp status:
ACTIVE, INACTIVE, or EXPIREDobject
Developer fee percentage used for deposits received through this offramp.
Show developer_fee properties
Show developer_fee properties
string
Configured percentage as a decimal string.
object
string
When the offramp was created (ISO 8601 timestamp)
string
When the offramp was last updated (ISO 8601 timestamp)
integer
required
Total number of offramps matching filters
integer
required
Current page number
integer
required
Results per page
integer
required
Total number of pages
Success Response
{
"data": [
{
"id": "a50e8400-e29b-41d4-a716-446655440000",
"type": "PERMANENT",
"customer_id": "650e8400-e29b-41d4-a716-446655440000",
"address": "0x1a2b3c4d5e6f7890abcdef1234567890abcdef12",
"chain": "ETHEREUM",
"asset": "USDC",
"status": "ACTIVE",
"settlement": {
"mode": "INTERNAL_BALANCE",
"rate_id": null,
"destination_bank": null
},
"created_at": "2026-01-10T12:00:00Z",
"updated_at": "2026-01-10T12:00:00Z"
},
{
"id": "b60e8400-e29b-41d4-a716-446655440000",
"type": "TEMPORARY",
"customer_id": "660e8400-e29b-41d4-a716-446655440000",
"address": "TN3W4H6rK2ce4vX9YnFQHwKENnHjoxb3m9",
"chain": "TRON",
"asset": "USDT",
"status": "ACTIVE",
"settlement": {
"mode": "NGN_PAYOUT",
"rate_id": "rate_8x7k2mq9p",
"destination_bank": {
"account_name": "John Doe",
"account_number": "0123456789",
"bank_code": "058"
}
},
"created_at": "2026-01-14T15:05:00Z",
"updated_at": "2026-01-14T15:05:00Z"
}
],
"total": 2,
"page": 1,
"limit": 50,
"total_pages": 1
}
Error Responses
{
"error": {
"code": "BAD_REQUEST",
"message": "Invalid query parameters",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}
{
"error": {
"code": "UNAUTHORIZED",
"message": "Unauthorized",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}
Next Steps
Get Offramp
Get a specific offramp by ID
Create Offramp
Create a new offramp
⌘I