Skip to main content
POST

Authorizations

Authorization
string
header
required

YuvexPay API key. Include as Authorization: Bearer ypk_<env>_<kid>_<secret> where <env> is test (sandbox) or live (production). Create and manage keys in the dashboard under Settings > API Keys.

Headers

X-Idempotency-Key
string
required

A unique string to ensure the request is processed only once. Must be unique per request. Valid for 24 hours. Successful (2xx) responses are stored and replayed for the key. On POST /v1/payments, a 502 PROVIDER_TEMPORARILY_UNAVAILABLE for a boleto payment is stored and replayed too: to recover that payment, repeat the request once with the same externalId and a new key. A retry of an earlier card payment request now returns 400 CARD_PAYMENTS_NOT_AVAILABLE_VIA_API instead of the stored response (201 or 502): recover that payment with GET /v1/payments/txid/{txId}, or with a create request with the same externalId, mode: "hosted" and methods: ["CARD"], no card object or card fields, and a new key.

Maximum string length: 100

Body

application/json
amount
number
required

The NET amount in BRL — exactly what the recipient receives. The platform fee is added on top, never deducted: your balance is debited amount + feeAmount (returned as grossAmount), and that gross is what counts against INSUFFICIENT_BALANCE, the daily/nightly limits and the per-transaction cap. The R$10.00 minimum is compared against amount (the net); it is the floor the platform never goes below, and the value that actually applies to you is minAmount from GET /v1/withdrawals/limits. The 1,000,000 ceiling is a request-validation bound, not your limit — the per-transaction cap that applies to your account is returned by GET /v1/withdrawals/limits.

Required range: 10 <= x <= 1000000Must be a multiple of 0.01
destination
PIX destination · object
required

Where to send the funds.

method
enum<string>
default:PIX

Public withdrawals currently support PIX only.

Available options:
PIX
currency
enum<string>
default:BRL
Available options:
BRL
description
string

Internal description for this withdrawal.

Maximum string length: 500

Response

Withdrawal created.

withdrawal
object

The withdrawal as returned by POST /v1/withdrawals. This response is deliberately narrower than GET /v1/withdrawals/{withdrawalId}: it omits pixKey, pixKeyType, processedAt, errorMessage and providerErrorCode, which are only meaningful once the network has acted.