Skip to navigation

Crear un retiro

Deprecated

Obsoleto: usa el endpoint unificado POST /transfers con destination: {type: bank_account, id: ...}. Este endpoint sigue funcionando para integraciones existentes.

Paga el balance de tu cuenta a una de tus cuentas bancarias externas. Requiere una llave con movimiento de dinero habilitado. El retiro es asíncrono: la respuesta es el estado inicial (pending/in_review/approved); suscríbete a los webhooks withdrawal.* o consulta el estado.

Authentication

X-SECRET-KEYstring

Tu clave secreta de API.

Una llave de cuenta (sk_live_..., sk_test_...) opera sobre su propia cuenta y, con X-ACCOUNT-ID, sobre sus cuentas conectadas.

La llave también fija el ambiente: una sk_test_ solo lista y resuelve objetos de prueba (live_mode: false) y una sk_live_ solo objetos reales. Un ID del otro ambiente responde 404 (401 en /customers).

Una llave de organización (sk_org_live_..., sk_org_test_...) alcanza todas las cuentas de una organización y solo sirve para leer: saldos, movimientos y reportes. Para operar sobre una cuenta debe nombrarla con X-ACCOUNT-ID; omitirlo en una lectura devuelve todas las cuentas de la organización. Cualquier otro endpoint responde 403 con code: organization_key_unsupported.

Headers

Idempotency-KeystringOptional

Clave de idempotencia para reintentos seguros de operaciones críticas, especialmente las que mueven dinero o cambian estado operativo. Reintentar con la misma clave y el mismo cuerpo devuelve la respuesta original (header Idempotency-Replayed: true); reusarla con parámetros distintos devuelve 409.

Request

This endpoint expects an object.
bank_account_idstringRequired
ID de la cuenta bancaria destino
amount_in_centsintegerRequired
currencyenumOptional

Moneda del balance que paga el retiro. Por defecto, la de la cuenta bancaria; si es otra, convertimos al tipo de cambio del día y la conversión viene en currency_conversion.

Allowed values:
is_instantbooleanOptional

Retiro instantáneo (sujeto a elegibilidad y comisión)

Response

Retiro creado (asíncrono)

idstringOptional
statusenumOptional
amount_in_centsintegerOptional
currencystringOptional
bank_namestringOptional
notestring or nullOptional
Nota del retiro
recipient_emailstring or nullOptional
Correo del beneficiario al que le avisamos el estado del retiro
tracking_urlstring or nullOptional

Página pública de seguimiento para el beneficiario

currency_conversionobject or nullOptional

La conversión que pagó el retiro cuando el balance de origen está en otra moneda que la cuenta bancaria (por ejemplo, de tu balance en USD a una cuenta en GTQ). source_amount_in_cents es lo que salió de tu balance; amount_in_cents del retiro es lo convertido. null si no hubo conversión. Si el retiro se rechaza o se cancela dentro de las 72 horas, la conversión pasa a reverted y el monto vuelve a tu balance en la moneda de origen.

created_atdatetimeOptional
bank_accountobjectOptional

Errors

400
Bad Request Error
403
Forbidden Error
422
Unprocessable Entity Error