Charges
Create Charge
Creates a charge. Optionally creates the first payment attempt alongside it (PIX or INTERNATIONAL) in a single request. Standalone attempts can also be created later via POST /charge//attempts.
POST
paymentMethod = CREDIT_CARD is not accepted on this endpoint — sensitive card data must go through the public checkout only (POST /charge/{id}/checkout/payment with X-Checkout-Token).New Payment Split — distribute the charge amount among multiple recipients using the
split[] field. Supports fixed value (FIXED in BRL) and percentage (PERCENT over netAmount). See the parameter details below.Parameters
Bearer authentication token.
Gross charge amount in BRL (two decimal places).
Charge currency (ISO 4217). Currently always
BRL — for payment in another currency, use checkoutCurrency with paymentMethod = INTERNATIONAL.If provided, creates the first attempt alongside the charge.
Accepted values:
PIX— creates an attempt with PIX instructions (QR code, EMV).INTERNATIONAL— creates a checkout session via Revolut. RequirescheckoutCurrency.
PENDING with no attempt.Currency in which the payer will pay at the gateway (ISO 4217, e.g.
USD, EUR, MXN). Required when paymentMethod = INTERNATIONAL.Free-text description for the charge.
Expiration date in ISO 8601 format.
External reference from your system for tracking.
Idempotency key for the attempt. Reusing the same key returns 409.
URL called when the charge is paid (POST with payload).
Customer data. Used by gateways when not overridden at payment time.
New List of recipients for payment split. Omitting this field creates the charge without split.
Response
Without
paymentMethod: ID of the charge.
With paymentMethod: ID of the attempt (the charge ID is in chargeId).Charge ID (present only when the response is an attempt).
PENDING / PROCESSING / PAID / EXPIRED / CANCELED / FAILED / REFUNDED.PIX or INTERNATIONAL (present only when there is an attempt).Gross charge amount (2 decimal places).
Charge currency (ISO 4217).
Instructions for the front-end to complete the payment.
Exchange rate applied (INTERNATIONAL only).
Expiration date.
Charge description.
External reference.
Customer data.
Split configuration provided at creation (present when
split[] was sent).Calculated settlement: how much each recipient receives. Rounding remainder (PERCENT) always goes to the owner.
Creation date (ISO 8601).
Last update date (ISO 8601).
Create Standalone Attempt
POST /charge/{chargeId}/attempts
Creates a payment attempt for an existing charge (server-side, authenticated via JWT). Accepts PIX and INTERNATIONAL.
| Parameter | Type | Required | Description |
|---|---|---|---|
paymentMethod | string | Yes | PIX or INTERNATIONAL |
currency | string | Conditional | Target currency (required for INTERNATIONAL, ISO 4217) |
redirectUrl | string | No | Return URL (used for INTERNATIONAL) |
attemptIdempotencyKey | string | No | Idempotency key (recommended) |