# Withdrawals

the withdrawals API

## Initiate a withdrawal from a tenant to an external destination address

 - [POST /v1/domains/{domainId}/omnibus/{omnibusId}/tenants/{tenantId}/withdrawals](https://docs.ripple.com/products/custody/v1.36/reference/api/openapi/withdrawals/createwithdrawal.md): Validates balance, reserves funds, dry-runs a CreateTransactionOrder intent on Custody, and returns an unsigned intent payload. The frontend signs the payload and submits it directly to Custody POST /v1/intents. The backend tracks confirmation asynchronously via a Temporal workflow keyed by the generated transactionOrderId.

