Ir al contenido

Imprimir en el POS

Con PRINT imprimes un documento propio en la impresora del POS: un comprobante, una boleta, un ticket o un QR. Lo armas línea por línea con print.lines.

Para reimprimir el voucher de una transacción, usa Reimprimir un voucher.

POST /api/v1/pos-operations
Ambiente URL base API
Integración https://ms-payment-c2c.virtualpos-dev.com/ms-payment-c2c
Producción https://ms-payment-c2c.virtualpos.cl/ms-payment-c2c
Nombre Requerido Descripción
Content-Type Sí application/json
X-Api-Key Sí Tu API key.
Campo Tipo Requerido Descripción
posSerial string Sí Serial del POS.
operationType string Sí PRINT
externalPaymentId string Sí ID de la impresión en tu sistema. Único por impresión.
print.copies integer No Cantidad de copias, de 1 a 3.
print.lines array Sí Líneas a imprimir, de 1 a 400. Ver tipos de línea.
callbackUrl string No URL donde recibirás los webhooks.
type Campos Descripción
text content (requerido), font_size, align Una línea de texto.
left_right left y/o right (al menos uno), font_size Texto a la izquierda y a la derecha en la misma línea, por ejemplo Total y $9.900.
blank — Línea en blanco.
image_base64 image_base64 o content (requerido), width, align Imagen en base64 crudo o como data URI. Úsala para logos y códigos QR.
Atributo Valores
font_size small, normal, big, o un número entre 12 y 40
align left, center, right
width Ancho de la imagen en píxeles. Recomendado entre 64 y 384.
Ventana de terminal
curl -X POST 'https://ms-payment-c2c.virtualpos-dev.com/ms-payment-c2c/api/v1/pos-operations' \
-H 'Content-Type: application/json' \
-H "X-Api-Key: $API_KEY" \
-d '{
"posSerial": "VPOS-1A2B3C4D5E",
"operationType": "PRINT",
"externalPaymentId": "print-10234",
"callbackUrl": "https://tu-sistema.cl/webhooks/virtualpos",
"print": {
"copies": 1,
"lines": [
{ "type": "text", "content": "Comprobante", "font_size": "big", "align": "center" },
{ "type": "blank" },
{ "type": "left_right", "left": "Total", "right": "$9.900", "font_size": "normal" },
{ "type": "image_base64", "image_base64": "iVBORw0KGgo...", "width": 240, "align": "center" }
]
}
}'

Cuando el POS termina de imprimir, la operación pasa a APPROVED y recibes el webhook con resultPayload.responseCode igual a PRINTED.