Withdraw from a reloadable card balance
Move unspent money off the account holder's reloadable card. The balance behind a reloadable card is held by the card issuer, and this asks the issuer to pay amount of it out as USDC on Base to the destination_address you supply. It is the reverse of GET /fund-card-balance, and free: the money is the holder's own, and Laso moves nothing itself.
Base only. The issuer pays on Base and nowhere else, so the destination must be a Base wallet you control. A Laso managed agent wallet holds USDC on Solana and cannot receive this. The card deposit address from GET /get-card-deposit-address is not a valid destination either.
Not instant. The issuer processes payouts manually, usually within 1-3 business days, and emails the account holder when the payout is sent. The response carries the issuer's withdrawal_id; there is no status route to poll. The request is recorded as a withdrawal event under card_events in GET /list-card-transactions, and the balance from GET /get-card-deposit-address drops once it is paid.
Amount: $2 to $10,000, and no more than the balance the issuer can release. Withdrawals the issuer has not paid yet still count against the balance, so a second request can only take what remains.
Confirm the amount and destination with the account holder before calling this. A linked card issuer account is required; the holder sets it up at https://laso.finance/agent/dashboard/verified/card.
Requires a Bearer token from /auth or /get-card.
Request
- Base URL: https://laso.finance
- URL: https://laso.finance/withdraw-card-balance
- Auth: API key in header Authorization
Headers
Optional client-generated unique key (a UUID works) that makes this write safe to retry. A retry with the same key within 24 hours returns the recorded response of the original request, marked with an Idempotency-Replayed: true header, instead of performing the write again. Reusing a key with a different body or route is rejected with 422 (code: idempotency_key_reused); a retry that arrives while the original is still running gets 409 (code: idempotency_key_in_progress), so wait a moment and retry with the same key. Keys are scoped to the authenticated account.
Request body
Response
The issuer accepted the withdrawal request.
Example response
{
"status": "requested",
"network": "base",
"asset": "USDC"
}Changes
No recorded changes to this operation across all 3 revisions of this API.