Imprimir un comprobante en una terminal
Manda una copia del comprobante de una venta ya pagada a la impresora de la terminal donde se hizo. La terminal imprime sin salir de Modo espera, así que el siguiente cobro entra igual.
Esto separa la impresión del cobro: print_receipt en POST /api/terminal_session_commands imprime la copia del cliente en automático al aprobar; este endpoint imprime cualquier copia, de cualquier venta anterior, cuando tu sistema lo pida.
Caso típico
El cajero cobra con print_receipt: true y show_post_payment_screens: false: sale la copia del cliente y la terminal vuelve a Modo espera. Cuando el cajero ya cortó ese papel, tu sistema manda POST /api/terminal_print_commands con copy: "merchant" y sale la copia del comercio.
Reglas
- El
checkout_idviene de la respuesta del comando de cobro. La venta debe estar pagada (sale_not_paidsi no) y haberse hecho en esa misma terminal (sale_on_another_terminalsi no). copyelige la copia:merchant(la del comercio, el default) ocustomer.duplicate: trueimprime DUPLICADO en el papel. Úsalo cuando reimprimes una copia que ya salió, para que el papel no se lea como una venta distinta.- Una venta reembolsada imprime el comprobante del reembolso.
- La entrega es best-effort y llega a una terminal en Modo espera; una terminal ocupada la levanta cuando vuelve, dentro de los 10 minutos siguientes. El resultado de impresión no se expone por API y nunca afecta el estado financiero del pago.
Idempotencia
Manda un external_id propio y el mismo request no imprime dos veces: el segundo retorna el comando original con 200 en vez de 201.
Authentication
Tu clave secreta de API.
Una llave de cuenta (sk_live_..., sk_test_...) opera sobre su propia cuenta y, con X-ACCOUNT-ID, sobre sus cuentas conectadas.
La llave también fija el ambiente: una sk_test_ solo lista y resuelve objetos de prueba (live_mode: false) y una sk_live_ solo objetos reales. Un ID del otro ambiente responde 404 (401 en /customers).
Una llave de organización (sk_org_live_..., sk_org_test_...) alcanza todas las cuentas de una organización y solo sirve para leer: saldos, movimientos y reportes. Para operar sobre una cuenta debe nombrarla con X-ACCOUNT-ID; omitirlo en una lectura devuelve todas las cuentas de la organización. Cualquier otro endpoint responde 403 con code: organization_key_unsupported.
Request
ID público de la terminal (trm_...). Lo obtienes en el panel, en POS → detalle de la terminal.
ID del checkout de la venta a imprimir (ch_...), tal como viene en la respuesta del comando de cobro.
Cuál copia imprimir.
Marca el papel como DUPLICADO. Úsalo al reimprimir una copia que ya salió.
ID único de tu sistema para esta impresión dentro de la cuenta autenticada. Se usa para idempotencia.
Response
Ya existía un comando con ese external_id; se retorna el original
ID público del comando de impresión
ID de tu sistema enviado al crear el comando, o null si no se envió uno
Cuál copia se mandó a imprimir
Momento en que se creó el comando

