API reference
Base URL https://api.bank-core.org. Every call carries Authorization: Bearer <your key>. Generated from the service itself; the same document is at /openapi.json. Guides are in Docs.
Your key
GET /v1/whoami
The tenant this key belongs to, the key's prefix, label and scopes, and your payout wallets by network. Any valid key; no scope.
Response 200
WhoAmIOut
GET /v1/limits
Every limit applied to this key: request rates after any tenant ceiling, and the rolling withdrawal limit with what is left of it.
- Scope
quotes:read
Response 200
Limits
GET /v1/fees
Your own fee schedule, ordered the way it is applied. percent is a percentage: 2 means 2%. Indicative; a quote is the price charged.
- Scope
quotes:read
Response 200
Fees
GET /v1/currencies
Per currency: whether we deal in it, whether the custodian lists it now, whether we can price it, and whether you have a verified address for it. custodian_lists is null, not false, when the custodian could not be reached.
- Scope
quotes:read
Response 200
Currencies
| Field | Type | | Notes |
|---|
currencies | CurrencyOut[] | required | |
custodian_read | boolean | required | |
as_of | string (date-time) | required | |
GET /v1/operations/by-key/{key}
What one of your own idempotency keys produced. 404 no_operation_for_key means no committed record under the key, which a request still in flight also reads as.
Parameters
| Name | In | Type | | Notes |
|---|
key | path | string | required | |
Response 200
OperationByKey
| Field | Type | | Notes |
|---|
key | string | required | |
endpoint | string | required | |
claimed_at | string (date-time) | required | |
completed_at | string (date-time) | null | optional | |
state | string | required | |
response_status | integer | null | optional | |
operation | object | null | optional | |
Deposits
POST /v1/deposit-addresses
Register up to 500 addresses you control. Each item is registered, existing or refused on its own; read every status.
- Scope
deposits:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
RegisterAddresses
Response 200
RegistrationPage
GET /v1/deposit-addresses
Your registered addresses, filtered by network, reference or address. Page with after until next_after is null.
- Scope
deposits:read
Parameters
| Name | In | Type | | Notes |
|---|
network | query | string | null | optional | |
reference | query | string | null | optional | |
address | query | string | null | optional | |
include_retired | query | boolean | optional | |
after | query | string (uuid) | null | optional | |
limit | query | integer | optional | |
Response 200
DepositAddressPage
| Field | Type | | Notes |
|---|
addresses | DepositAddressOut[] | required | |
next_after | string (uuid) | null | optional | |
POST /v1/deposit-addresses/derive
Register the next count (1–100) addresses derived from your live xpub on network, all under one reference. All or none.
- Scope
deposits:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
DeriveIn
| Field | Type | | Notes |
|---|
network | string | required | |
reference | string | required | |
count | integer | required | |
Response 200
DerivedOut
| Field | Type | | Notes |
|---|
xpub_id | string (uuid) | required | |
network | string | required | |
next_index | integer | required | |
addresses | DepositAddressOut[] | required | |
POST /v1/deposit-addresses/issue
Issue addresses whose keys we hold. Makes us the custodian of what arrives on them. Needs deposits:issue, granted only by agreement.
- Scope
deposits:issue- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
IssueIn
| Field | Type | | Notes |
|---|
network | string | required | |
reference | string | required | |
count | integer | required | |
Response 200
IssuedOut
| Field | Type | | Notes |
|---|
seed_id | string (uuid) | required | |
network | string | required | |
next_index | integer | required | |
addresses | DepositAddressOut[] | required | |
POST /v1/deposit-addresses/{address_id}/retire
Stop watching an address. Repeating it changes nothing.
- Scope
deposits:write
Parameters
| Name | In | Type | | Notes |
|---|
address_id | path | string (uuid) | required | |
Response 200
DepositAddressOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
address | string | required | |
reference | string | required | |
source | string | optional | REGISTERED, DERIVED, CORE_ISSUED or CORE_IMPORTED |
xpub_id | string (uuid) | null | optional | |
seed_id | string (uuid) | null | optional | |
derivation_index | integer | null | optional | |
watch_from | string (date-time) | required | |
watch_from_block | integer | null | optional | |
sweep_held_at | string (date-time) | null | optional | |
sweep_hold_reason | string | null | optional | |
sweep_hold_kind | string | null | optional | Why sweeping is held: ISSUANCE, IMPORT, ARRIVAL, OWNER (set by you) or OPERATOR (set by us). null when not held. |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
watch_now_until | string (date-time) | null | optional | |
sweeps_enabled | boolean | null | optional | Whether we sweep it. null when we hold no key for it. |
watched_networks | string[] | null | optional | The networks this address is read on. Empty when retired; null on older records. |
sibling_of | string (uuid) | null | optional | The issued address this one shares a key with, registered on this network when an arrival was found here. |
POST /v1/deposit-addresses/{address_id}/sweep-hold
Stop or resume sweeping one address whose key we hold. Detection and crediting are not affected. A hold set by our operators cannot be released here (409).
- Scope
deposits:write
Parameters
| Name | In | Type | | Notes |
|---|
address_id | path | string (uuid) | required | |
Request body
SweepHold
| Field | Type | | Notes |
|---|
held | boolean | required | |
reason | string | required | |
seen_through | integer | null | optional | With held: false only. The change_seq of GET /v1/deposits you have read through; a release is refused while a newer arrival on the address exists. |
Response 200
DepositAddressOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
address | string | required | |
reference | string | required | |
source | string | optional | REGISTERED, DERIVED, CORE_ISSUED or CORE_IMPORTED |
xpub_id | string (uuid) | null | optional | |
seed_id | string (uuid) | null | optional | |
derivation_index | integer | null | optional | |
watch_from | string (date-time) | required | |
watch_from_block | integer | null | optional | |
sweep_held_at | string (date-time) | null | optional | |
sweep_hold_reason | string | null | optional | |
sweep_hold_kind | string | null | optional | Why sweeping is held: ISSUANCE, IMPORT, ARRIVAL, OWNER (set by you) or OPERATOR (set by us). null when not held. |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
watch_now_until | string (date-time) | null | optional | |
sweeps_enabled | boolean | null | optional | Whether we sweep it. null when we hold no key for it. |
watched_networks | string[] | null | optional | The networks this address is read on. Empty when retired; null on older records. |
sibling_of | string (uuid) | null | optional | The issued address this one shares a key with, registered on this network when an arrival was found here. |
POST /v1/deposit-addresses/{address_id}/watch-now
Read this address in the next pass and every minute for 60 minutes. A repeat restarts the window from now. No body and no idempotency key.
- Scope
deposits:write
Parameters
| Name | In | Type | | Notes |
|---|
address_id | path | string (uuid) | required | |
Response 200
DepositAddressOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
address | string | required | |
reference | string | required | |
source | string | optional | REGISTERED, DERIVED, CORE_ISSUED or CORE_IMPORTED |
xpub_id | string (uuid) | null | optional | |
seed_id | string (uuid) | null | optional | |
derivation_index | integer | null | optional | |
watch_from | string (date-time) | required | |
watch_from_block | integer | null | optional | |
sweep_held_at | string (date-time) | null | optional | |
sweep_hold_reason | string | null | optional | |
sweep_hold_kind | string | null | optional | Why sweeping is held: ISSUANCE, IMPORT, ARRIVAL, OWNER (set by you) or OPERATOR (set by us). null when not held. |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
watch_now_until | string (date-time) | null | optional | |
sweeps_enabled | boolean | null | optional | Whether we sweep it. null when we hold no key for it. |
watched_networks | string[] | null | optional | The networks this address is read on. Empty when retired; null on older records. |
sibling_of | string (uuid) | null | optional | The issued address this one shares a key with, registered on this network when an arrival was found here. |
POST /v1/deposit-xpubs
Store an account-level (depth 3) extended public key to derive deposit addresses from. One live key per network.
- Scope
deposits:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
XpubIn
| Field | Type | | Notes |
|---|
network | string | required | |
xpub | string | required | |
index_from | integer | required | |
index_to | integer | required | |
Response 200
XpubOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
xpub | string | required | |
index_from | integer | required | |
index_to | integer | required | |
next_index | integer | required | |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
GET /v1/deposit-xpubs
Your xpubs.
- Scope
deposits:read
Parameters
| Name | In | Type | | Notes |
|---|
network | query | string | null | optional | |
include_retired | query | boolean | optional | |
Response 200
XpubPage
| Field | Type | | Notes |
|---|
xpubs | XpubOut[] | required | |
POST /v1/deposit-xpubs/{xpub_id}/retire
Stop deriving from a key. Addresses already derived stay watched.
- Scope
deposits:write
Parameters
| Name | In | Type | | Notes |
|---|
xpub_id | path | string (uuid) | required | |
Response 200
XpubOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
xpub | string | required | |
index_from | integer | required | |
index_to | integer | required | |
next_index | integer | required | |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
POST /v1/deposit-keys
Hand us a wrapped private key for an address you registered, making us its custodian. Signed as well as keyed.
- Scope
deposits:write- Idempotency-Key
- required: Idempotency
- Signature
- required: Signed requests
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
DepositKeyIn
| Field | Type | | Notes |
|---|
network | string | required | |
address | string | required | |
wrapped_b64 | string | required | |
algorithm | string | optional | |
source_system | string | null | optional | |
source_reference | string | null | optional | |
Response 200
DepositKeyOut
| Field | Type | | Notes |
|---|
network | string | required | |
address | string | required | |
origin | string | required | |
address_matches | boolean | required | |
sweeps_enabled | boolean | required | |
checked_by | string | null | optional | |
wrapped_key_id | string | required | |
algorithm | string | required | |
source_system | string | null | optional | |
source_reference | string | null | optional | |
imported_at | string (date-time) | required | |
GET /v1/deposits
Arrivals on your addresses in change_seq order. A status change gives a row a higher change_seq. Stop paging when deposits is empty.
- Scope
deposits:read
Parameters
| Name | In | Type | | Notes |
|---|
after | query | integer | optional | |
limit | query | integer | optional | |
reference | query | string | null | optional | |
Response 200
DepositPage
| Field | Type | | Notes |
|---|
deposits | DepositOut[] | required | |
next_after | integer | required | |
Chain payouts
POST /v1/chain-payouts
Pay an address from your payout wallet on network. Signed. 201 means accepted, not sent: follow the status or the chain_payout.* events.
- Scope
chain_payouts:write- Idempotency-Key
- required: Idempotency
- Signature
- required: Signed requests
Request body
CreateChainPayout
Response 201
ChainPayoutOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
review | string | null | optional | |
amount | Money | required | |
network | string | null | optional | |
destination | ChainPayoutDestinationOut | required | |
from_address | string | null | optional | |
tx_hash | string | null | optional | |
failure_reason | string | null | optional | |
reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/chain-payouts/estimate
What a chain payout would cost and which limits apply, before you send it. Reserves nothing and writes nothing. Unknown values are null with a reason, never 0.
- Scope
chain_payouts:read
Parameters
| Name | In | Type | | Notes |
|---|
network | query | string | null | optional | |
currency | query | string | null | optional | |
amount | query | string | null | optional | |
address | query | string | null | optional | |
Response 200
ChainPayoutEstimate
| Field | Type | | Notes |
|---|
network | string | required | |
currency | string | required | |
amount | Money | required | |
fee | Money | required | |
fee_usd | string | null | optional | |
network_fee | Money | null | optional | |
network_fee_usd | string | null | optional | |
network_fee_charged_to_you | boolean | required | |
recipient_holds_asset | boolean | null | optional | |
assumed_worst_case | boolean | required | |
total_usd | string | null | optional | |
usd_unavailable | string[] | required | |
payouts_enabled | boolean | required | |
payouts_disabled_reason | string | null | optional | |
limits | ChainPayoutLimits | required | |
estimated_at | string (date-time) | required | |
GET /v1/chain-payouts/{payout_id}
One chain payout. Another tenant's id, or an id that is not a chain payout, is 404.
- Scope
chain_payouts:read
Parameters
| Name | In | Type | | Notes |
|---|
payout_id | path | string (uuid) | required | |
Response 200
ChainPayoutOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
review | string | null | optional | |
amount | Money | required | |
network | string | null | optional | |
destination | ChainPayoutDestinationOut | required | |
from_address | string | null | optional | |
tx_hash | string | null | optional | |
failure_reason | string | null | optional | |
reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
Withdrawals
POST /v1/withdrawals
Send your balance to your verified address for the currency. The destination is not a request field.
- Scope
withdrawals:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
CreateWithdrawal
| Field | Type | | Notes |
|---|
amount | MoneyIn | required | |
partner_reference | string | null | optional | |
Response 201
WithdrawalOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
destination | string | null | optional | |
destination_memo | string | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
network_fee | Money | null | optional | |
tx_hash | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/withdrawals
Your withdrawals, newest first.
- Scope
withdrawals:read
Parameters
| Name | In | Type | | Notes |
|---|
status | query | string | null | optional | |
limit | query | integer | optional | |
Response 200
WithdrawalOut[]
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
destination | string | null | optional | |
destination_memo | string | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
network_fee | Money | null | optional | |
tx_hash | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/withdrawals/estimate
What a withdrawal would cost and what would arrive. Reserves nothing and writes nothing. network_fee and amount_received are null when the network cost is unknown.
- Scope
withdrawals:read
Parameters
| Name | In | Type | | Notes |
|---|
currency | query | string | null | optional | |
amount | query | string | null | optional | |
Response 200
WithdrawalEstimate
| Field | Type | | Notes |
|---|
amount | Money | required | |
fee | Money | required | |
fee_usd | string | null | optional | |
network_fee | Money | null | optional | |
network_fee_usd | string | null | optional | |
amount_received | Money | null | optional | |
usd_unavailable | string[] | required | |
estimated_at | string (date-time) | required | |
GET /v1/withdrawals/limit
Your rolling 24-hour withdrawal limit: limit_usd, spent_usd, remaining_usd.
- Scope
withdrawals:read
Response 200
DailyLimit
| Field | Type | | Notes |
|---|
limit_usd | string | required | |
spent_usd | string | required | |
remaining_usd | string | required | |
GET /v1/withdrawals/{withdrawal_id}
One withdrawal. On settlement: network_fee as reported (null is not zero) and tx_hash.
- Scope
withdrawals:read
Parameters
| Name | In | Type | | Notes |
|---|
withdrawal_id | path | string (uuid) | required | |
Response 200
WithdrawalOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
destination | string | null | optional | |
destination_memo | string | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
network_fee | Money | null | optional | |
tx_hash | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/destinations
Where your withdrawals may go: one address per currency, with whether it is verified or why it was refused. Addresses are added by us, not through the API.
- Scope
withdrawals:read
Response 200
DestinationOut[]
| Field | Type | | Notes |
|---|
currency | string | required | |
address | string | required | |
memo | string | null | optional | |
label | string | required | |
verified | boolean | required | |
verified_at | string (date-time) | null | optional | |
rejected_at | string (date-time) | null | optional | |
rejected_reason | string | null | optional | |
POST /v1/payments/proof
Whether one transaction paid an amount to a destination. PROVEN, NOT_PROVEN or UNREADABLE; only PROVEN is grounds to act. Reads the chain, writes nothing.
- Scope
withdrawals:read
Request body
ProveIn
| Field | Type | | Notes |
|---|
rail | RailIn | required | |
tx_hash | string | required | |
destination | string | required | |
amount | MoneyIn | required | |
senders | string[] | required | |
memo | string | null | optional | |
Response 200
ProofOut
| Field | Type | | Notes |
|---|
verdict | string | required | PROVEN, NOT_PROVEN or UNREADABLE. Only PROVEN is grounds to act. |
detail | string | null | optional | With PROVEN: what the chain carries. |
reason | string | null | optional | With NOT_PROVEN or UNREADABLE: why. |
Conversions
GET /v1/pairs
What can be converted right now, at the market rate, with the custodian's minimum or null.
- Scope
quotes:read
Response 200
Pairs
| Field | Type | | Notes |
|---|
pairs | Pair[] | required | |
POST /v1/quotes
Price an operation for a short window. Nothing is reserved. Pass the id as quote_id to be charged that price.
- Scope
quotes:read
Request body
CreateQuote
| Field | Type | | Notes |
|---|
product | string | required | ON_RAMP, OFF_RAMP, BANK_TRANSFER, SWAP, ... |
amount | MoneyIn | required | |
customer_id | string (uuid) | null | optional | |
rail | string | null | optional | |
country | string | null | optional | |
to_currency | string | null | optional | |
Response 200
QuoteOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
expires_at | string (date-time) | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | required | |
exchange_rate | string | required | |
provider | string | required | |
binding_floor | string | required | |
rule_id | string | null | optional | |
to_currency | string | null | optional | |
rate_source | string | null | optional | |
rate_observed_at | string (date-time) | null | optional | |
POST /v1/swaps
Convert part of your balance. The source amount, fee included, leaves your balance at once; to_amount is set when the custodian reports what arrived.
- Scope
swaps:write (also customers:read where it applies)- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
CreateSwap
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | null | optional | |
amount | MoneyIn | required | |
to_currency | string | required | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
Response 201
SwapOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
to_amount_quoted | Money | null | optional | |
to_amount | Money | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/swaps
Your conversions, newest first. status filters; an unknown status is refused.
- Scope
swaps:read
Parameters
| Name | In | Type | | Notes |
|---|
status | query | string | null | optional | |
limit | query | integer | optional | |
Response 200
SwapOut[]
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
to_amount_quoted | Money | null | optional | |
to_amount | Money | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/swaps/{swap_id}
One conversion.
- Scope
swaps:read
Parameters
| Name | In | Type | | Notes |
|---|
swap_id | path | string (uuid) | required | |
Response 200
SwapOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
to_amount_quoted | Money | null | optional | |
to_amount | Money | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
Balance and register
GET /v1/float
Your balance per currency: available, held by operations in flight, and total.
- Scope
register:read
Response 200
FloatOut
GET /v1/float/statement
Every movement on one currency of your balance, oldest first, with a running balance. When truncated is true, narrow the dates.
- Scope
register:read
Parameters
| Name | In | Type | | Notes |
|---|
currency | query | string | required | Which currency of your balance to state. |
since | query | string (date-time) | null | optional | |
until | query | string (date-time) | null | optional | |
limit | query | integer | optional | |
Response 200
FloatStatement
| Field | Type | | Notes |
|---|
currency | string | required | |
opening_balance | Money | required | |
closing_balance | Money | required | |
movements | FloatMovement[] | required | |
truncated | boolean | optional | |
GET /v1/register
Every operation, newest first, with fee and transaction hash. Pages on an opaque cursor.
- Scope
register:read
Parameters
| Name | In | Type | | Notes |
|---|
kind | query | string | null | optional | |
status | query | string | null | optional | |
currency | query | string | null | optional | |
customer_id | query | string (uuid) | null | optional | |
acts_for | query | string | null | optional | |
since | query | string (date-time) | null | optional | |
until | query | string (date-time) | null | optional | |
cursor | query | string | null | optional | |
limit | query | integer | optional | |
Response 200
RegisterPage
| Field | Type | | Notes |
|---|
entries | RegisterEntry[] | required | |
next_cursor | string | null | optional | |
GET /v1/register/summary
Totals by kind, currency and status, for a period.
- Scope
register:read
Parameters
| Name | In | Type | | Notes |
|---|
since | query | string (date-time) | null | optional | |
until | query | string (date-time) | null | optional | |
Response 200
RegisterSummary
| Field | Type | | Notes |
|---|
since | string (date-time) | null | optional | |
until | string (date-time) | null | optional | |
totals | CategoryTotal[] | required | |
GET /v1/register/{operation_id}/movements
Every ledger line behind one operation, oldest first.
- Scope
register:read
Parameters
| Name | In | Type | | Notes |
|---|
operation_id | path | string (uuid) | required | |
Response 200
Movement
| Field | Type | | Notes |
|---|
operation_id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
legs | MovementLeg[] | required | |
GET /v1/custody/intake-cost
What funding your balance through the custodian has cost, from our own measurements of what arrived and what was credited. Says so when the measurements cannot answer.
- Scope
transfers:read
Parameters
| Name | In | Type | | Notes |
|---|
limit | query | integer | optional | |
Response 200
object
Events
GET /v1/events
Outcomes in order, with monotonic ids. Store the last id you processed and pass it as after. Webhooks deliver the same rows.
- Scope
events:read
Parameters
| Name | In | Type | | Notes |
|---|
after | query | integer | optional | |
limit | query | integer | optional | |
Response 200
EventPage
| Field | Type | | Notes |
|---|
events | EventOut[] | required | |
next_after | integer | null | required | |
Customers and verification
POST /v1/customers
Register one of your end users under your own external_id.
- Scope
customers:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
CreateCustomer
| Field | Type | | Notes |
|---|
external_id | string | required | Your identifier for this person. |
is_business | boolean | optional | |
display_name | string | null | optional | |
country | string | null | optional | |
Response 201
CustomerOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
external_id | string | required | |
is_business | boolean | required | |
country | string | null | required | |
POST /v1/customers/{customer_id}/provider-registration
Make a verified customer known to the provider that will pay them. The identity sent is forwarded, not stored.
- Scope
customers:write
Parameters
| Name | In | Type | | Notes |
|---|
customer_id | path | string (uuid) | required | |
Request body
IdentityIn
| Field | Type | | Notes |
|---|
first_name | string | required | |
last_name | string | required | |
middle_name | string | null | optional | |
date_of_birth | string | required | |
document_kind | string | required | |
document_number | string | required | |
document_country | string | required | |
document_issued | string | null | optional | |
document_expires | string | null | optional | |
residence_street | string | null | optional | |
residence_city | string | null | optional | |
residence_postcode | string | null | optional | |
residence_state | string | null | optional | |
residence_country | string | null | optional | |
email | string | null | optional | |
phone | string | null | optional | |
Response 201
RegisteredWithProvider
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
provider | string | required | |
provider_customer_id | string | required | |
newly_registered | boolean | required | |
POST /v1/customers/{customer_id}/verification
Open an identity check for a customer, or get the current one. The person submits documents directly to the verification provider; we never hold them.
- Scope
customers:write
Parameters
| Name | In | Type | | Notes |
|---|
customer_id | path | string (uuid) | required | |
Response 201
VerificationStarted
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
applicant_id | string | required | |
status | string | required | |
newly_created | boolean | required | |
verification_url | string | null | optional | |
verification_url_expires_at | string (date-time) | null | optional | |
GET /v1/customers/{customer_id}/verification
A customer's verification: a status and the list of capabilities it grants, never a single boolean.
- Scope
customers:read
Parameters
| Name | In | Type | | Notes |
|---|
customer_id | path | string (uuid) | required | |
Response 200
VerificationOut
| Field | Type | | Notes |
|---|
status | string | required | |
capabilities | string[] | required | |
expires_at | string (date-time) | null | optional | |
environment | "production" | "sandbox" | null | optional | |
Fiat accounts and transfers
POST /v1/accounts
Ask for fiat account details for one customer. Created as PENDING until the provider issues them.
- Scope
accounts:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
CreateAccount
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
currency | string | required | |
country | string | null | optional | |
Response 201
AccountOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
currency | string | required | |
account_holder_name | string | null | optional | |
iban | string | null | optional | |
account_number | string | null | optional | |
sort_code | string | null | optional | |
bic | string | null | optional | |
bank_name | string | null | optional | |
expires_at | string (date-time) | null | optional | |
GET /v1/accounts/{account_id}
One fiat account.
- Scope
accounts:read
Parameters
| Name | In | Type | | Notes |
|---|
account_id | path | string (uuid) | required | |
Response 200
AccountOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
currency | string | required | |
account_holder_name | string | null | optional | |
iban | string | null | optional | |
account_number | string | null | optional | |
sort_code | string | null | optional | |
bic | string | null | optional | |
bank_name | string | null | optional | |
expires_at | string (date-time) | null | optional | |
GET /v1/accounts/{account_id}/entries
The ledger lines of one account.
- Scope
accounts:read
Parameters
| Name | In | Type | | Notes |
|---|
account_id | path | string (uuid) | required | |
limit | query | integer | optional | |
Response 200
EntryOut[]
| Field | Type | | Notes |
|---|
id | integer | required | |
direction | string | required | |
amount | Money | required | |
description | string | required | |
posted_at | string (date-time) | required | |
POST /v1/transfers
Create a fiat transfer.
- Scope
transfers:write- Idempotency-Key
- required: Idempotency
Parameters
| Name | In | Type | | Notes |
|---|
Idempotency-Key | header | string | null | optional | |
Request body
CreateTransfer
| Field | Type | | Notes |
|---|
kind | string | required | ON_RAMP, OFF_RAMP, BANK_TRANSFER, INTERNAL_TRANSFER, REFUND |
customer_id | string (uuid) | null | optional | |
acts_for | string | optional | |
amount | MoneyIn | required | |
beneficiary_name | string | required | |
beneficiary_account | string | required | |
beneficiary_country | string | null | optional | |
rail | string | null | optional | |
country | string | null | optional | |
quote_id | string (uuid) | null | optional | |
beneficiary | Beneficiary | null | optional | |
partner_reference | string | null | optional | |
Response 201
TransferOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | null | optional | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/transfers
Your transfers. Look one up by your own reference.
- Scope
transfers:read
Parameters
| Name | In | Type | | Notes |
|---|
partner_reference | query | string | null | optional | |
status | query | string | null | optional | |
created_after | query | string (date-time) | null | optional | |
limit | query | integer | optional | |
Response 200
TransferOut[]
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | null | optional | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
GET /v1/transfers/{transfer_id}
One transfer.
- Scope
transfers:read
Parameters
| Name | In | Type | | Notes |
|---|
transfer_id | path | string (uuid) | required | |
Response 200
TransferOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | null | optional | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
Schemas
AccountOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
currency | string | required | |
account_holder_name | string | null | optional | |
iban | string | null | optional | |
account_number | string | null | optional | |
sort_code | string | null | optional | |
bic | string | null | optional | |
bank_name | string | null | optional | |
expires_at | string (date-time) | null | optional | |
AddressIn
| Field | Type | | Notes |
|---|
network | string | required | |
address | string | required | |
reference | string | required | |
watch_from | string (date-time) | null | optional | |
watch_from_block | integer | null | optional | |
Beneficiary
| Field | Type | | Notes |
|---|
iban | string | null | optional | |
account_number | string | null | optional | |
sort_code | string | null | optional | |
routing_number | string | null | optional | |
bic | string | null | optional | |
bank_name | string | null | optional | |
holder_type | string | optional | |
purpose | string | null | optional | |
CategoryTotal
| Field | Type | | Notes |
|---|
kind | string | required | |
currency | string | required | |
status | string | required | |
count | integer | required | |
amount | Money | required | |
customer_fee | Money | required | |
ChainPayoutAmount
| Field | Type | | Notes |
|---|
amount | string | required | A decimal string, e.g. "100.00". Never a number. |
currency | string | required | |
ChainPayoutDestinationIn
| Field | Type | | Notes |
|---|
address | string | required | |
memo | string | null | optional | |
ChainPayoutDestinationOut
| Field | Type | | Notes |
|---|
address | string | null | optional | |
memo | string | null | optional | |
ChainPayoutEstimate
| Field | Type | | Notes |
|---|
network | string | required | |
currency | string | required | |
amount | Money | required | |
fee | Money | required | |
fee_usd | string | null | optional | |
network_fee | Money | null | optional | |
network_fee_usd | string | null | optional | |
network_fee_charged_to_you | boolean | required | |
recipient_holds_asset | boolean | null | optional | |
assumed_worst_case | boolean | required | |
total_usd | string | null | optional | |
usd_unavailable | string[] | required | |
payouts_enabled | boolean | required | |
payouts_disabled_reason | string | null | optional | |
limits | ChainPayoutLimits | required | |
estimated_at | string (date-time) | required | |
ChainPayoutLimits
| Field | Type | | Notes |
|---|
per_payout_usd | string | null | optional | |
daily_usd | string | null | optional | |
daily_used_usd | string | null | optional | |
new_address_daily_usd | string | null | optional | |
review_at_or_above_usd | string | null | optional | |
ChainPayoutOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
review | string | null | optional | |
amount | Money | required | |
network | string | null | optional | |
destination | ChainPayoutDestinationOut | required | |
from_address | string | null | optional | |
tx_hash | string | null | optional | |
failure_reason | string | null | optional | |
reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
CreateAccount
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
currency | string | required | |
country | string | null | optional | |
CreateCustomer
| Field | Type | | Notes |
|---|
external_id | string | required | Your identifier for this person. |
is_business | boolean | optional | |
display_name | string | null | optional | |
country | string | null | optional | |
CreateQuote
| Field | Type | | Notes |
|---|
product | string | required | ON_RAMP, OFF_RAMP, BANK_TRANSFER, SWAP, ... |
amount | MoneyIn | required | |
customer_id | string (uuid) | null | optional | |
rail | string | null | optional | |
country | string | null | optional | |
to_currency | string | null | optional | |
CreateSwap
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | null | optional | |
amount | MoneyIn | required | |
to_currency | string | required | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
CreateTransfer
| Field | Type | | Notes |
|---|
kind | string | required | ON_RAMP, OFF_RAMP, BANK_TRANSFER, INTERNAL_TRANSFER, REFUND |
customer_id | string (uuid) | null | optional | |
acts_for | string | optional | |
amount | MoneyIn | required | |
beneficiary_name | string | required | |
beneficiary_account | string | required | |
beneficiary_country | string | null | optional | |
rail | string | null | optional | |
country | string | null | optional | |
quote_id | string (uuid) | null | optional | |
beneficiary | Beneficiary | null | optional | |
partner_reference | string | null | optional | |
CreateWithdrawal
| Field | Type | | Notes |
|---|
amount | MoneyIn | required | |
partner_reference | string | null | optional | |
Currencies
| Field | Type | | Notes |
|---|
currencies | CurrencyOut[] | required | |
custodian_read | boolean | required | |
as_of | string (date-time) | required | |
CurrencyOut
| Field | Type | | Notes |
|---|
code | string | required | |
name | string | required | |
kind | string | required | |
network | string | null | optional | |
custodian_lists | boolean | null | optional | |
priced | boolean | required | |
payable_out | boolean | required | |
CustomerOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
external_id | string | required | |
is_business | boolean | required | |
country | string | null | required | |
DailyLimit
| Field | Type | | Notes |
|---|
limit_usd | string | required | |
spent_usd | string | required | |
remaining_usd | string | required | |
DepositAddressOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
address | string | required | |
reference | string | required | |
source | string | optional | REGISTERED, DERIVED, CORE_ISSUED or CORE_IMPORTED |
xpub_id | string (uuid) | null | optional | |
seed_id | string (uuid) | null | optional | |
derivation_index | integer | null | optional | |
watch_from | string (date-time) | required | |
watch_from_block | integer | null | optional | |
sweep_held_at | string (date-time) | null | optional | |
sweep_hold_reason | string | null | optional | |
sweep_hold_kind | string | null | optional | Why sweeping is held: ISSUANCE, IMPORT, ARRIVAL, OWNER (set by you) or OPERATOR (set by us). null when not held. |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
watch_now_until | string (date-time) | null | optional | |
sweeps_enabled | boolean | null | optional | Whether we sweep it. null when we hold no key for it. |
watched_networks | string[] | null | optional | The networks this address is read on. Empty when retired; null on older records. |
sibling_of | string (uuid) | null | optional | The issued address this one shares a key with, registered on this network when an arrival was found here. |
DepositAddressPage
| Field | Type | | Notes |
|---|
addresses | DepositAddressOut[] | required | |
next_after | string (uuid) | null | optional | |
DepositKeyIn
| Field | Type | | Notes |
|---|
network | string | required | |
address | string | required | |
wrapped_b64 | string | required | |
algorithm | string | optional | |
source_system | string | null | optional | |
source_reference | string | null | optional | |
DepositKeyOut
| Field | Type | | Notes |
|---|
network | string | required | |
address | string | required | |
origin | string | required | |
address_matches | boolean | required | |
sweeps_enabled | boolean | required | |
checked_by | string | null | optional | |
wrapped_key_id | string | required | |
algorithm | string | required | |
source_system | string | null | optional | |
source_reference | string | null | optional | |
imported_at | string (date-time) | required | |
DepositPage
| Field | Type | | Notes |
|---|
deposits | DepositOut[] | required | |
next_after | integer | required | |
DeriveIn
| Field | Type | | Notes |
|---|
network | string | required | |
reference | string | required | |
count | integer | required | |
DerivedOut
| Field | Type | | Notes |
|---|
xpub_id | string (uuid) | required | |
network | string | required | |
next_index | integer | required | |
addresses | DepositAddressOut[] | required | |
DestinationOut
| Field | Type | | Notes |
|---|
currency | string | required | |
address | string | required | |
memo | string | null | optional | |
label | string | required | |
verified | boolean | required | |
verified_at | string (date-time) | null | optional | |
rejected_at | string (date-time) | null | optional | |
rejected_reason | string | null | optional | |
EntryOut
| Field | Type | | Notes |
|---|
id | integer | required | |
direction | string | required | |
amount | Money | required | |
description | string | required | |
posted_at | string (date-time) | required | |
Error
| Field | Type | | Notes |
|---|
error | object | required | |
EventOut
| Field | Type | | Notes |
|---|
id | integer | required | |
kind | string | required | |
resource_id | string (uuid) | required | |
occurred_at | string (date-time) | required | |
data | object | required | |
EventPage
| Field | Type | | Notes |
|---|
events | EventOut[] | required | |
next_after | integer | null | required | |
FeeSchedule
| Field | Type | | Notes |
|---|
product | string | null | optional | |
currency | string | null | optional | |
rail | string | null | optional | |
percent | string | required | |
minimum_fee | string | required | |
priority | integer | required | |
effective_from | string (date-time) | required | |
FloatMovement
| Field | Type | | Notes |
|---|
posted_at | string (date-time) | required | |
amount | Money | required | |
balance | Money | required | |
description | string | required | |
operation_id | string (uuid) | null | optional | |
kind | string | null | optional | |
reference | string | null | optional | |
FloatStatement
| Field | Type | | Notes |
|---|
currency | string | required | |
opening_balance | Money | required | |
closing_balance | Money | required | |
movements | FloatMovement[] | required | |
truncated | boolean | optional | |
IdentityIn
| Field | Type | | Notes |
|---|
first_name | string | required | |
last_name | string | required | |
middle_name | string | null | optional | |
date_of_birth | string | required | |
document_kind | string | required | |
document_number | string | required | |
document_country | string | required | |
document_issued | string | null | optional | |
document_expires | string | null | optional | |
residence_street | string | null | optional | |
residence_city | string | null | optional | |
residence_postcode | string | null | optional | |
residence_state | string | null | optional | |
residence_country | string | null | optional | |
email | string | null | optional | |
phone | string | null | optional | |
IssueIn
| Field | Type | | Notes |
|---|
network | string | required | |
reference | string | required | |
count | integer | required | |
IssuedOut
| Field | Type | | Notes |
|---|
seed_id | string (uuid) | required | |
network | string | required | |
next_index | integer | required | |
addresses | DepositAddressOut[] | required | |
ItemError
| Field | Type | | Notes |
|---|
code | string | required | |
message | string | required | |
Money
| Field | Type | | Notes |
|---|
amount | string | required | A decimal string, e.g. "100.00". Never a number. |
currency | string | required | |
MoneyIn
| Field | Type | | Notes |
|---|
amount | string | required | A decimal string, e.g. "100.00". Never a number. |
currency | string | required | |
MoneyLimits
| Field | Type | | Notes |
|---|
withdrawal_limit_usd | string | required | |
withdrawal_spent_usd | string | required | |
withdrawal_remaining_usd | string | required | |
withdrawal_window_hours | integer | required | |
Movement
| Field | Type | | Notes |
|---|
operation_id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
legs | MovementLeg[] | required | |
MovementLeg
| Field | Type | | Notes |
|---|
account | string | required | |
direction | string | required | |
amount | Money | required | |
what | string | required | |
posted_at | string (date-time) | required | |
OperationByKey
| Field | Type | | Notes |
|---|
key | string | required | |
endpoint | string | required | |
claimed_at | string (date-time) | required | |
completed_at | string (date-time) | null | optional | |
state | string | required | |
response_status | integer | null | optional | |
operation | object | null | optional | |
Pair
| Field | Type | | Notes |
|---|
from_currency | string | required | |
to_currency | string | required | |
rate | string | required | |
rate_age_seconds | integer | required | |
minimum | string | null | optional | |
Pairs
| Field | Type | | Notes |
|---|
pairs | Pair[] | required | |
ProofOut
| Field | Type | | Notes |
|---|
verdict | string | required | PROVEN, NOT_PROVEN or UNREADABLE. Only PROVEN is grounds to act. |
detail | string | null | optional | With PROVEN: what the chain carries. |
reason | string | null | optional | With NOT_PROVEN or UNREADABLE: why. |
ProveIn
| Field | Type | | Notes |
|---|
rail | RailIn | required | |
tx_hash | string | required | |
destination | string | required | |
amount | MoneyIn | required | |
senders | string[] | required | |
memo | string | null | optional | |
QuoteOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
expires_at | string (date-time) | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | required | |
exchange_rate | string | required | |
provider | string | required | |
binding_floor | string | required | |
rule_id | string | null | optional | |
to_currency | string | null | optional | |
rate_source | string | null | optional | |
rate_observed_at | string (date-time) | null | optional | |
RailIn
| Field | Type | | Notes |
|---|
currency | string | required | USDT_TRC20, ETH, BTC, XLM, ... |
network | string | required | tron, ethereum, bsc, base, bitcoin or stellar |
RegisterEntry
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
to_amount | Money | null | optional | |
to_amount_quoted | Money | null | optional | |
customer_id | string (uuid) | null | optional | |
acts_for | string | optional | |
provider | string | null | optional | |
provider_reference | string | null | optional | |
partner_reference | string | null | optional | |
network_fee | Money | null | optional | |
tx_hash | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
RegisterPage
| Field | Type | | Notes |
|---|
entries | RegisterEntry[] | required | |
next_cursor | string | null | optional | |
RegisterSummary
| Field | Type | | Notes |
|---|
since | string (date-time) | null | optional | |
until | string (date-time) | null | optional | |
totals | CategoryTotal[] | required | |
RegisteredWithProvider
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
provider | string | required | |
provider_customer_id | string | required | |
newly_registered | boolean | required | |
RegistrationResult
| Field | Type | | Notes |
|---|
index | integer | required | |
status | string | required | registered, existing or refused |
address | DepositAddressOut | null | optional | |
error | ItemError | null | optional | |
RequestLimits
| Field | Type | | Notes |
|---|
reads_per_minute | integer | required | |
writes_per_minute | integer | required | |
tenant_ceiling_per_minute | integer | null | optional | |
window_seconds | integer | required | |
idempotency_key_max_length | integer | required | |
quote_lifetime_seconds | integer | required | |
SwapOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
to_amount_quoted | Money | null | optional | |
to_amount | Money | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
SweepHold
| Field | Type | | Notes |
|---|
held | boolean | required | |
reason | string | required | |
seen_through | integer | null | optional | With held: false only. The change_seq of GET /v1/deposits you have read through; a release is refused while a newer arrival on the address exists. |
TransferOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
kind | string | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
amount_received | Money | null | optional | |
quote_id | string (uuid) | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
VerificationOut
| Field | Type | | Notes |
|---|
status | string | required | |
capabilities | string[] | required | |
expires_at | string (date-time) | null | optional | |
environment | "production" | "sandbox" | null | optional | |
VerificationStarted
| Field | Type | | Notes |
|---|
customer_id | string (uuid) | required | |
applicant_id | string | required | |
status | string | required | |
newly_created | boolean | required | |
verification_url | string | null | optional | |
verification_url_expires_at | string (date-time) | null | optional | |
WhoAmIKey
| Field | Type | | Notes |
|---|
prefix | string | required | |
label | string | required | |
scopes | string[] | required | |
WhoAmITenant
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
slug | string | required | |
kind | string | required | |
status | string | required | |
WithdrawalEstimate
| Field | Type | | Notes |
|---|
amount | Money | required | |
fee | Money | required | |
fee_usd | string | null | optional | |
network_fee | Money | null | optional | |
network_fee_usd | string | null | optional | |
amount_received | Money | null | optional | |
usd_unavailable | string[] | required | |
estimated_at | string (date-time) | required | |
WithdrawalOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
status | string | required | |
amount | Money | required | |
customer_fee | Money | required | |
destination | string | null | optional | |
destination_memo | string | null | optional | |
partner_reference | string | null | optional | |
provider_reference | string | null | optional | |
network_fee | Money | null | optional | |
tx_hash | string | null | optional | |
created_at | string (date-time) | required | |
settled_at | string (date-time) | null | optional | |
unresolved | boolean | optional | |
XpubIn
| Field | Type | | Notes |
|---|
network | string | required | |
xpub | string | required | |
index_from | integer | required | |
index_to | integer | required | |
XpubOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
xpub | string | required | |
index_from | integer | required | |
index_to | integer | required | |
next_index | integer | required | |
retired_at | string (date-time) | null | optional | |
created_at | string (date-time) | required | |
XpubPage
| Field | Type | | Notes |
|---|
xpubs | XpubOut[] | required | |
DepositOut
| Field | Type | | Notes |
|---|
id | string (uuid) | required | |
network | string | required | |
address | string | required | |
reference | string | required | |
amount | Money | required | |
amount_units | string | required | |
tx_hash | string | required | |
transfer_index | integer | required | |
legacy_key | string | required | |
from_address | string | null | optional | |
block_number | integer | null | optional | |
block_time | string (date-time) | null | optional | |
confirmations | integer | required | |
required_confirmations | integer | required | |
status | string | required | DETECTED, CONFIRMED or REORGED |
historical | boolean | required | |
detected_at | string (date-time) | required | |
confirmed_at | string (date-time) | null | optional | |
reorged_at | string (date-time) | null | optional | |
change_seq | integer | required | |