Customers
Beta: Payouts — Beneficiaries, Customers, and Payouts — are in beta and the API may still change. Contact [email protected] to enable them for your account.
A customer is the person sending the crypto (the payer). A customer completes identity verification (KYC) once, then can make any number of payouts to one or more beneficiaries. A customer is not tied to a single beneficiary — the beneficiary is chosen per payout.
Deposit addresses
Each customer has persistent deposit address(es) returned at creation: one EVM address that works across every supported EVM chain, and (as Solana support rolls out) a Solana address. The customer sends crypto to a deposit address; you never handle their keys.
"deposit_addresses": [
{ "address": "0x369aF2…9EDd", "chains": ["ethereum", "arbitrum", "base", "polygon"], "tokens": ["USDC", "USDT"] },
{ "address": "GEhVdAGr…vpJMq", "chains": ["solana"], "tokens": ["USDC", "USDT"] }
]EVM ships first; Solana support is planned. The address(es) returned reflect what’s currently enabled for your account.
KYC lifecycle
POST /customers returns a kyc_url. Redirect the customer there to complete verification (a one-time step). We notify you by webhook when the status changes.
| Status | Meaning |
|---|---|
kyc_pending | Awaiting identity verification. |
action_required | Recoverable — more information is needed; redirect to a fresh kyc_url. |
active | Verified. The customer can now make payouts. |
kyc_failed | Verification was rejected. |
suspended | Blocked for compliance reasons. |
A customer must be active before a payout can be created. POST /payouts is rejected for
non-active customers.
Available Endpoints
- Create Customer — Create a customer and get a KYC link + deposit addresses
- Get Customer — Retrieve a customer
- List Customers — List all customers
