Envía un comando de cobro a una terminal POS. Recurrente crea un checkout y lo despacha a la terminal indicada. Si ya existe un comando activo con el mismo external_id, retorna el comando existente en vez de crear uno nuevo (idempotencia).
Cuando la terminal recibe el comando, muestra automáticamente la pantalla de cobro para que el cliente pague con tarjeta.
POST /api/terminal_session_commands con el monto, moneda y terminal.pending.dispatched.payment_intent.succeeded con el resultado.Si envías dos requests con el mismo external_id, el segundo retorna el comando original sin crear uno duplicado. Esto te permite reintentar de forma segura.
Si envías un nuevo comando a la misma terminal (con un external_id diferente), los comandos anteriores pendientes se marcan como superseded y la terminal solo procesa el más reciente.
Si quieres que el cobro se procese en cuotas, envía installments con el número de meses. Solo aplica a cobros en GTQ y los valores permitidos son 3, 6, 12 o 18 (algunas cuentas tienen configuraciones distintas). Si la tarjeta del cliente no soporta la opción elegida, el cobro se rechaza con unsupported_installments.
ID de la terminal POS donde se enviará el cobro
ID único de tu sistema para este cobro. Se usa para idempotencia — si envías el mismo external_id dos veces, no se crea un duplicado.
Monto a cobrar en centavos. Envía amount_in_cents o amount, no ambos.
Monto a cobrar en unidades (ej. 50.00). Alternativa a amount_in_cents.
Número de meses sin intereses. Solo válido con currency: GTQ. Valores permitidos por defecto [3, 6, 12, 18] (puede variar por cuenta).
ID único de tu sistema
Meses sin intereses solicitados, o null si el cobro va sin cuotas
URL del checkout (la terminal usa esta URL internamente)