# Create payout (off-ramp) Creates a payout for CRYPTO_FIAT or FIAT_FIAT flows. Endpoint: POST /v1/payouts Version: 2.0.0 Security: oAuth2 ## Header parameters: - `Idempotency-Key` (string) A unique key to make POST requests idempotent. ## Request fields (application/json): - `railType` (string, required) Enum: "FIAT_FIAT", "CRYPTO_FIAT" - `amount` (number, required) Example: 1000 - `currency` (string, required) Example: "GTQ" - `beneficiary` (object, required) - `beneficiary.type` (string, required) Enum: "bank_account", "cash_pickup", "mobile_money" - `beneficiary.value` (object, required) Example: {"bankCode":"BANK_X","accountNumber":"1234567890","name":"Recipient"} - `quoteId` (string,null) - `metadata` (object) ## Response 201 fields (application/json): - `payoutId` (string, required) Example: "pyo_01JH..." - `status` (string, required) Enum: "created", "pending", "completed", "failed", "cancelled" - `createdAt` (string, required) - `railType` (string, required) Enum: "FIAT_FIAT", "CRYPTO_FIAT" - `amount` (number, required) - `currency` (string, required) - `providerRef` (string,null) ## Response 400 fields (application/json): - `traceId` (string, required) Correlation id for troubleshooting Example: "trc_01JH8K5P3V9M2K5Q7W6J3Z1A9B" - `error` (object, required) - `error.code` (string) Example: "INVALID_REQUEST" - `error.message` (string) Example: "Missing required field" - `error.details` (object) ## Response 401 fields