- Idempotent: keyed by
requestId. - Constrained: you can only withdraw up to
principal + recognizedYield(the withdrawable balance). - Delayed: cash payout is expected ~4.5 days after initiation (
estimatedPayoutAt), even though the withdrawable balance is reduced immediately.
1. Check withdrawable balance
Before initiating a withdrawal, fetch the wallet and inspectwithdrawableBalance.
0 < withdrawalAmount <= withdrawableBalance. If you attempt to exceed this, the API returns a 400 with Insufficient withdrawable balance.
2. Initiate a withdrawal
- Braid immediately reduces principal and/or recognized yield at the accounting layer.
- A
high_yield_wallet_withdrawalsrecord is created withstatus="processing". estimatedPayoutAtis set to ~4.5 days in the future, when you should expect on-chain settlement.
3. List withdrawals for a wallet
processing: withdrawal created and pending payout (principal and recognized yield already reduced).completed: on-chain payout finalized;payoutTxHashandcompletedAtpopulated.failed: no payout;failureReasonmay be present.
4. Fetch a single withdrawal by id
5. Lookup by requestId
If you only have the original idempotency key:GET /high-yield-wallets/withdrawals/{withdrawalId}, scoped to the authenticated organization.