API reference
All endpoints of the v1 merchant API. Base URL: https://gatway.hunario.com/api/v1. Every request needs Authorization: Bearer sk_….
| Method | Path | Scope | Description |
|---|---|---|---|
| POST | /payments | payments:write | Create a payment. Needs Idempotency-Key. |
| GET | /payments | payments:read | List payments |
| GET | /payments/{id} | payments:read | Retrieve a payment |
| POST | /payments/{id}/verify | payments:write | Re-check an open payment with the provider |
| POST | /payouts | payouts:write | Request a payout. Needs Idempotency-Key. |
| GET | /payouts | payouts:read | List payouts |
| GET | /payouts/{id} | payouts:read | Retrieve a payout |
| POST | /payouts/{id}/cancel | payouts:write | Cancel a payout before approval |
| GET | /balance | balance:read | Balances per currency |
| GET | /transactions | payments:read | Ledger history (every balance change) |
| GET | /fees | any | Fee rules that apply to you |
| GET | /fees/quote | any | Calculate the fee for an amount |
| GET | /currencies | any | Supported providers, currencies and networks |
Request fields and status values for payments and payouts are described in Pay In and Pay Out.
Conventions
- Amounts are strings with 8 decimals in responses, for example
"49.90000000". Send them as strings too. Numbers are accepted but converted to strings before validation. - IDs are prefixed:
pay_payments,po_payouts,txn_ledger transactions,evt_webhook events. - Timestamps are ISO 8601 with a time zone.
- Single objects are returned inside
data. Lists returndata(an array),linksandmeta. - Every response has an
X-Request-Idheader. Include it when you contact support.
Pagination
Lists use cursor pagination, newest first. Pass limit (1–100, default 25). To get the next page, pass cursor = meta.next_cursor from the previous response. When meta.next_cursor is null, there are no more pages.
{
"data": [ { "id": "pay_...", ... } ],
"links": { "first": null, "last": null, "prev": null, "next": "https://gatway.hunario.com/api/v1/payments?cursor=eyJ..." },
"meta": { "path": "https://gatway.hunario.com/api/v1/payments", "per_page": 25, "next_cursor": "eyJ...", "prev_cursor": null }
}GET /balance
Balances per currency. Different currencies are never added together.
{
"object": "balance",
"mode": "live",
"balances": [
{ "currency": "USDT", "available": "1520.40000000", "reserved": "253.50000000", "pending": "100.00000000" }
]
}available: funds you can pay out now.reserved: held for payouts that are not final yet.pending: gross amount of payments seen by the provider but not yet confirmed. Not yet credited.
GET /transactions
Every change to your balance, from the ledger. Filters: currency, created_from, created_to, limit, cursor.
{
"data": [{
"id": "txn_...",
"object": "transaction",
"mode": "live",
"type": "payin_settlement",
"currency": "USDT",
"description": "...",
"source": { "object": "payment", "id": "pay_..." },
"entries": [
{ "balance": "available", "direction": "in", "amount": "49.40100000", "balance_after": "1520.40000000" }
],
"posted_at": "2026-10-16T12:05:00+00:00"
}]
}GET /fees
For each enabled provider, direction and currency, the fee rule that currently applies to your account.
{ "object": "list", "data": [
{ "direction": "payin", "provider": "cryptomus", "currency": "USDT",
"percentage": "1.0000", "fixed_amount": "0.00000000", "min_fee": null, "max_fee": null }
] }GET /fees/quote
Query parameters (all required): direction (payin or payout), provider, currency, amount.
GET /fees/quote?direction=payin&provider=cryptomus¤cy=USDT&amount=10000
{ "object": "fee_quote", "direction": "payin", "provider": "cryptomus", "currency": "USDT",
"amount": "10000.00000000", "service_fee": "100.00000000", "net_amount": "9900.00000000", "note": null }For payouts, net_amount is null and note explains that a provider network fee may be added when the payout is created.
GET /currencies
Enabled providers with their capabilities, plus every currency and network you can use, with minimum and maximum amounts.
{
"object": "list",
"providers": [
{ "code": "cryptomus", "name": "Cryptomus", "pay_in": true, "pay_out": true, "capabilities": { "pay_in": true, "pay_out": true, ... } }
],
"data": [
{ "provider": "cryptomus", "direction": "payin", "currency": "USDT", "network": "tron", "min_amount": "1.00000000", "max_amount": null }
]
}