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
Token de autenticación en formato Bearer.
Monto bruto del cobro en BRL (dos decimales).
Moneda del cobro (ISO 4217). Actualmente siempre BRL — para pago en otra moneda, use checkoutCurrency con paymentMethod = INTERNATIONAL.
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.
Moneda en la que el pagador pagará en el gateway (ISO 4217, ej.: USD, EUR, MXN). Obligatorio cuando paymentMethod = INTERNATIONAL.
Descripción libre del cobro.
Fecha de expiración en formato ISO 8601.
Referencia externa de su sistema para rastreo.
Clave de idempotencia para el intento. Reusar la misma clave retorna 409.
URL llamada cuando el cobro sea pagado (POST con payload).
URL de retorno después del pago (Revolut).
Expiración del intento en el gateway (ISO 8601).
Datos del cliente. Usados por los gateways cuando no sean reemplazados en el momento del pago. Correo electrónico del cliente.
Origen (PRE_FILLED o COLLECT_AT_CHECKOUT).
Nuevo Lista de destinatarios para la división de pago. Omitir este campo crea el cobro sin división.Mostrar Campos de cada ítem
Correo electrónico del destinatario registrado en la plataforma. El destinatario debe tener una cuenta activa en la plataforma como usuario CUSTOMER. Los correos no encontrados o de usuarios con otro perfil quedan como residual para el dueño del cobro — no bloquea la creación , pero el monto no será transferido al destinatario previsto.
Tipo de división:
FIXED — valor fijo en BRL (informe amount). Suma de ítems FIXED debe ser ≤ grossAmount.
PERCENT — porcentaje sobre el netAmount (informe percent). Suma de ítems PERCENT debe ser ≤ 100.
Valor fijo en BRL (ej.: "50.00"). Obligatorio cuando kind = FIXED.
Porcentaje de 0.01 a 100. Obligatorio cuando kind = PERCENT.
Respuesta
Sin paymentMethod: ID del cobro .
Con paymentMethod: ID del intento (el ID del cobro va en chargeId).
ID del cobro (presente solo cuando la respuesta es un intento).
PENDING / PROCESSING / PAID / EXPIRED / CANCELED / FAILED / REFUNDED.
PIX o INTERNATIONAL (presente solo cuando hay un intento).
Monto bruto del cobro (2 decimales).
Moneda del cobro (ISO 4217).
Instrucciones para que el front-end complete el pago. URL pública del checkout.
Método (PIX / INTERNATIONAL).
Imagen QR en Base64 (solo PIX).
PIX BR Code en texto (solo PIX).
Token público para inicializar el Revolut Checkout Web SDK (solo INTERNATIONAL).
Moneda del checkout (solo INTERNATIONAL).
Conversión de divisas aplicada (solo INTERNATIONAL). Moneda destino (ej.: USD).
Monto final cobrado (con spread).
Momento de la cotización.
Configuración de división informada en la creación (presente cuando se envió split[]). Valor fijo en BRL (FIXED).
Liquidación calculada: cuánto recibe cada destinatario. El “vuelto” del redondeo (PERCENT) siempre va al dueño. ID del usuario en la plataforma.
Monto que recibirá el usuario (centavos).
true cuando es el dueño del cobro.
Fecha de creación (ISO 8601).
Fecha de última actualización (ISO 8601).
cURL (sin intento)
cURL (con PIX)
cURL (con división)
cURL (con INTERNATIONAL)
Node
Python
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"
}
}'
200 — sin intento
200 — con PIX
200 — con INTERNATIONAL
200 — PIX con división
400 — paymentMethod inválido
400 — checkoutCurrency ausente
401 — no autorizado
409 — idempotencyKey reutilizada
{
"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ámetro Tipo Obligatorio Descripción paymentMethodstring Sí PIX o INTERNATIONALcurrencystring Condicional Moneda de destino (obligatorio para INTERNATIONAL, ISO 4217) redirectUrlstring No URL de retorno (usado en INTERNATIONAL) attemptIdempotencyKeystring No Clave 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"
}'