Saltar al contenido principal
POST
/
charge
curl -X POST "https://api.gates2b.com/charge" \
  -H "Authorization: Bearer {su-token}" \
  -H "Content-Type: application/json" \
  -d '{
    "grossAmount": "10.50",
    "currency": "BRL",
    "description": "Cobro de prueba",
    "expiresAt": "2030-12-31T23:59:59.000Z",
    "externalReference": "pedido-123",
    "customerMeta": {
      "name": "Cliente Ejemplo",
      "email": "cliente@example.com",
      "source": "PRE_FILLED"
    }
  }'
{
  "id": "01KPQ3EG70VJ22B7B5VDKCPN7H",
  "userId": 222,
  "kind": "SALE",
  "status": "PENDING",
  "grossAmount": "10.50",
  "netAmount": "10.45",
  "sharedAmount": "0.00",
  "disputeReserve": "0.00",
  "refundedAmount": "0.00",
  "currency": "BRL",
  "description": "Cobro de prueba",
  "externalReference": "pedido-123",
  "expiresAt": "2030-12-31T23:59:59.000Z",
  "customerMeta": {
    "name": "Cliente Ejemplo",
    "email": "cliente@example.com",
    "source": "PRE_FILLED"
  },
  "webhookUrl": null,
  "feesMeta": { "fees": "..." },
  "createdAt": "2026-04-21T01:05:49.924Z",
  "updatedAt": "2026-04-21T01:05:49.924Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.gates2b.com/llms.txt

Use this file to discover all available pages before exploring further.

paymentMethod = CREDIT_CARD no está permitido en este endpoint — los datos sensibles de tarjeta deben pasar únicamente por el checkout público (POST /charge/{id}/checkout/payment con X-Checkout-Token).
Nuevo División de Pago — distribuya el valor del cobro entre múltiples destinatarios usando el campo split[]. Soporta valor fijo (FIXED en BRL) y porcentaje (PERCENT sobre el netAmount). Vea los detalles en la sección de parámetros a continuación.

Parámetros

Authorization
string
requerido
Token de autenticación en formato Bearer.
grossAmount
string
requerido
Monto bruto del cobro en BRL (dos decimales).
currency
string
requerido
Moneda del cobro (ISO 4217). Actualmente siempre BRL — para pago en otra moneda, use checkoutCurrency con paymentMethod = INTERNATIONAL.
paymentMethod
string
Si se informa, crea el primer intento junto con el cobro. Valores aceptados:
  • PIX — crea un intento con instrucciones PIX (QR code, EMV).
  • INTERNATIONAL — crea una sesión de checkout vía Revolut. Requiere checkoutCurrency.
Si se omite, el cobro se crea en PENDING sin intento.
checkoutCurrency
string
Moneda en la que el pagador pagará en el gateway (ISO 4217, ej.: USD, EUR, MXN). Obligatorio cuando paymentMethod = INTERNATIONAL.
description
string
Descripción libre del cobro.
expiresAt
string
Fecha de expiración en formato ISO 8601.
externalReference
string
Referencia externa de su sistema para rastreo.
attemptIdempotencyKey
string
Clave de idempotencia para el intento. Reusar la misma clave retorna 409.
webhookUrl
string
URL llamada cuando el cobro sea pagado (POST con payload).
gatewayOptions
object
customerMeta
object
Datos del cliente. Usados por los gateways cuando no sean reemplazados en el momento del pago.
split
array
Nuevo Lista de destinatarios para la división de pago. Omitir este campo crea el cobro sin división.

Respuesta

id
string
Sin paymentMethod: ID del cobro. Con paymentMethod: ID del intento (el ID del cobro va en chargeId).
chargeId
string
ID del cobro (presente solo cuando la respuesta es un intento).
status
string
PENDING / PROCESSING / PAID / EXPIRED / CANCELED / FAILED / REFUNDED.
paymentMethod
string
PIX o INTERNATIONAL (presente solo cuando hay un intento).
grossAmount
string
Monto bruto del cobro (2 decimales).
currency
string
Moneda del cobro (ISO 4217).
checkoutMeta
object
Instrucciones para que el front-end complete el pago.
fxMeta
object
Conversión de divisas aplicada (solo INTERNATIONAL).
expiresAt
string
Fecha de expiración.
description
string
Descripción del cobro.
externalReference
string
Referencia externa.
customerMeta
object
Datos del cliente.
splitConfig
array
Configuración de división informada en la creación (presente cuando se envió split[]).
splitSettlement
array
Liquidación calculada: cuánto recibe cada destinatario. El “vuelto” del redondeo (PERCENT) siempre va al dueño.
createdAt
string
Fecha de creación (ISO 8601).
updatedAt
string
Fecha de última actualización (ISO 8601).
curl -X POST "https://api.gates2b.com/charge" \
  -H "Authorization: Bearer {su-token}" \
  -H "Content-Type: application/json" \
  -d '{
    "grossAmount": "10.50",
    "currency": "BRL",
    "description": "Cobro de prueba",
    "expiresAt": "2030-12-31T23:59:59.000Z",
    "externalReference": "pedido-123",
    "customerMeta": {
      "name": "Cliente Ejemplo",
      "email": "cliente@example.com",
      "source": "PRE_FILLED"
    }
  }'
{
  "id": "01KPQ3EG70VJ22B7B5VDKCPN7H",
  "userId": 222,
  "kind": "SALE",
  "status": "PENDING",
  "grossAmount": "10.50",
  "netAmount": "10.45",
  "sharedAmount": "0.00",
  "disputeReserve": "0.00",
  "refundedAmount": "0.00",
  "currency": "BRL",
  "description": "Cobro de prueba",
  "externalReference": "pedido-123",
  "expiresAt": "2030-12-31T23:59:59.000Z",
  "customerMeta": {
    "name": "Cliente Ejemplo",
    "email": "cliente@example.com",
    "source": "PRE_FILLED"
  },
  "webhookUrl": null,
  "feesMeta": { "fees": "..." },
  "createdAt": "2026-04-21T01:05:49.924Z",
  "updatedAt": "2026-04-21T01:05:49.924Z"
}

Crear Intento Independiente

POST /charge/{chargeId}/attempts Crea un intento de pago para un cobro existente (server-side, autenticado vía JWT). Acepta PIX e INTERNATIONAL.
ParámetroTipoObligatorioDescripción
paymentMethodstringPIX o INTERNATIONAL
currencystringCondicionalMoneda de destino (obligatorio para INTERNATIONAL, ISO 4217)
redirectUrlstringNoURL de retorno (usado en INTERNATIONAL)
attemptIdempotencyKeystringNoClave de idempotencia (recomendado)
curl -X POST "https://api.gates2b.com/charge/{chargeId}/attempts" \
  -H "Authorization: Bearer {su-token}" \
  -H "Content-Type: application/json" \
  -d '{
    "paymentMethod": "PIX",
    "attemptIdempotencyKey": "uuid-v4"
  }'