from → fiat to).
Use
POST /orders. All write requests require sk_* auth and HMAC signing.Prerequisites
- KYB-approved partner account
- KYC completed on the end user, preferably via a KYC provider (required for offramp)
- Verified bank account details for the recipient (use account lookup below)
- Signing implemented per Authentication
End-to-end flow
1
Create a quote
Lock a rate for crypto amount → fiat currency.
2
Create the order
Submit quote ID with
recipient bank details (institution_code, account_number, account_name).3
Collect crypto deposit
Show
payin instructions (deposit address, asset, network, amount) from the order response.4
Wait for payment confirmation
Liquidramp auto-detects the deposit. Optionally submit the on-chain
tx_hash via POST /orders/:reference/fulfill if confirmation is delayed.5
Track fiat payout
Request
?include=payout on the order, or listen for order.fiat_sent / order.settled webhooks.1. Create a quote
2. Create the order
recipient must include institution_code, account_number, and account_name. Validate the account before creating the order:
pk_*, no HMAC) or a secret key (sk_*, HMAC required) from your backend. bank_code is the same as institution_code on the order. List institutions via GET /institutions.
The response payin object is the crypto deposit the customer must send:
amount of asset on network to address before expires_at.
3. Confirm pay-in (optional)
Liquidramp auto-detects the on-chain deposit. Call fulfill only if confirmation is delayed:4. Poll payout
payout includes fiat transfer details (account_number, institution_code, tx_reference, paid_at).