{
"operation_id": "7e8a9b0c-1d2e-3f4a-5b6c-7d8e9f0a1b2c",
"provider_id": "BNK-OP-90213",
"status": "pending",
"idempotency_key": "platform:9b1deb4d:acme-payment-0071",
"data": {
"type": "WITHDRAW",
"paymentType": "SEPA_CT"
},
"idempotency_hit": true
}{
"operation_id": "7e8a9b0c-1d2e-3f4a-5b6c-7d8e9f0a1b2c",
"provider_id": "BNK-OP-90213",
"status": "pending",
"idempotency_key": "platform:9b1deb4d:acme-payment-0071",
"data": {
"type": "WITHDRAW",
"paymentType": "SEPA_CT"
},
"banking_fee": "2.000000",
"banking_fee_asset": "BANK_EUR"
}{
"error": "idempotency_key_required",
"message": "provide idempotency_key (body or Idempotency-Key header)"
}{
"error": "unauthorized",
"message": "invalid or missing credentials"
}{
"error": "insufficient_funds",
"message": "account balance is not enough for this operation"
}{
"error": "no_banking_customer",
"message": "create your banking customer first (POST /v1/banking/customer)"
}{
"error": "funding_account_required",
"message": "an active EUR funding account is required to send to Europe"
}{
"error": {
"code": "banking_request_failed",
"message": "request rejected"
}
}Send a bank payment
Executes a TRANSFER (between your own bank accounts) or WITHDRAW (to a registered beneficiary). Requires an idempotency key; retries with the same key return the original operation without re-charging. Billed as the fixed banking_operation fee; refunded if the corridor rejects. The final state arrives via the banking_operation_status_changed webhook. For an EUR SEPA withdrawal, the top-level beneficiary_* fields provide the structured beneficiary identity used to build the provider payee. They are optional for other banking rails; if an EU-SEPA destination has no usable payee identity, the API returns 400 invalid_payload.
{
"operation_id": "7e8a9b0c-1d2e-3f4a-5b6c-7d8e9f0a1b2c",
"provider_id": "BNK-OP-90213",
"status": "pending",
"idempotency_key": "platform:9b1deb4d:acme-payment-0071",
"data": {
"type": "WITHDRAW",
"paymentType": "SEPA_CT"
},
"idempotency_hit": true
}{
"operation_id": "7e8a9b0c-1d2e-3f4a-5b6c-7d8e9f0a1b2c",
"provider_id": "BNK-OP-90213",
"status": "pending",
"idempotency_key": "platform:9b1deb4d:acme-payment-0071",
"data": {
"type": "WITHDRAW",
"paymentType": "SEPA_CT"
},
"banking_fee": "2.000000",
"banking_fee_asset": "BANK_EUR"
}{
"error": "idempotency_key_required",
"message": "provide idempotency_key (body or Idempotency-Key header)"
}{
"error": "unauthorized",
"message": "invalid or missing credentials"
}{
"error": "insufficient_funds",
"message": "account balance is not enough for this operation"
}{
"error": "no_banking_customer",
"message": "create your banking customer first (POST /v1/banking/customer)"
}{
"error": "funding_account_required",
"message": "an active EUR funding account is required to send to Europe"
}{
"error": {
"code": "banking_request_failed",
"message": "request rejected"
}
}Authorizations
Session JWT (from register/login) or API key (pk_...).
X-API-Key: <token> is accepted as an alternative header.
Headers
Alternative to the idempotency_key body field.
Body
"USD"
TRANSFER, WITHDRAW Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
EMPTY for TRANSFER; rail code (e.g. SEPA_CT) for WITHDRAW.
Optional active banking_eur virtual IBAN used to fund a EUR SEPA Banking withdrawal. Omit only when exactly one active source exists; several sources require this UUID. The platform stamps payer from the vIBAN registrant.
Optional active purpose: banking BO/BOB deposit instrument used as the QR payout source. Outside BO/BOB this field is rejected; multiple active BO sources require this UUID.
Required for an EUR SEPA withdrawal; use individual for a person or corporate for a company. Optional for other banking rails.
individual, corporate Required for a structured individual EUR SEPA beneficiary together with beneficiary_first_surname; optional for other banking rails.
Required for a structured individual EUR SEPA beneficiary together with beneficiary_given_name; optional for other banking rails.
Optional middle name for an individual EUR SEPA beneficiary; optional for other banking rails.
Required company name for a corporate EUR SEPA beneficiary; a multi-word value is also accepted as a compatibility fallback for individual names. Optional for other banking rails.
Response
Idempotency replay of an existing operation (no new charge).
The response is of type object.