Reimprimir el último recibo
Esta guía te muestra cómo disparar la reimpresión del comprobante de la última transacción en el terminal. Si se atasca el papel de la impresora o un cliente pide una copia extra, puedes reimprimir la última transacción aprobada sin volver a ingresar los datos del pago.
Antes de comenzar
Antes de reimprimir un recibo, asegúrate de tener:
- La Getnet Payment App instalada y activa.
- Al menos una transacción procesada durante la sesión actual.
Paso 1: Llama al deeplink de reimpresión
Envía un Intent al URI getnet://payment/v1/last-transaction. Este deeplink apunta automáticamente a la operación más reciente, por lo que no necesita parámetros de monto ni de NSU.
getnet://payment/v1/last-transaction es el URI de producción. getnet://payment/v1/reprint no es un deeplink válido de App2App en el esquema payment — no lo uses.
El deeplink de reimpresión acepta los siguientes parámetros opcionales:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
allowPrintCurrentTransaction | String | No | Predeterminado "true". Define "false" para recibir los datos del recibo como automationSlip en lugar de imprimirlos en el terminal. Consulta Responsabilidad de impresión. |
skipReceipt | String | No | "true" no imprime el recibo del cliente; "false" (predeterminado) sí lo imprime. Se rechaza si allowPrintCurrentTransaction es "false". |
Así disparas la reimpresión:
fun reprintLastVoucher() {
val intent = Intent(Intent.ACTION_VIEW, Uri.parse("getnet://payment/v1/last-transaction"))
intent.putExtra("allowPrintCurrentTransaction", "true")
startActivity(intent)
}Paso 2: Verifica el resultado
Mientras el terminal maneja la interfaz y la impresión, escucha el resultado para confirmar que la acción se disparó. Cuando allowPrintCurrentTransaction es "false", la respuesta también devuelve los datos del recibo en automationSlip.
| Resultado | Estado | Significado |
|---|---|---|
"0" | Éxito | El proceso de reimpresión comenzó (o se devolvieron los datos del recibo). |
"3" | Error | No se encontró una transacción anterior para reimprimir. |
Si el último recibo fue un reporte, no se imprime ningún recibo y se devuelve un mensaje que describe este escenario.
Siguientes pasos
- Responsabilidad de impresión - delega la impresión de recibos en tu propia aplicación.
- Referencia de parámetros del deeplink - los parámetros de solicitud y respuesta de la reimpresión.