Estrategias de Impresion (Catalogo)
Esta pagina describe las 12 estrategias de impresion soportadas por Core360 y como configurar cada una. Para una vision general y matriz por dispositivo, ver Impresion de recibos.
0. Sin impresora
Desactiva la impresion automatica al cerrar venta. Util cuando la terminal no requiere recibo o el operador imprime manualmente desde el historial.
Cuando usar: terminales de oficina, ventas mayoristas con factura electronica enviada por email.
1. Navegador (dialogo)
Abre un popup del navegador con el recibo formateado y dispara window.print(). El usuario debe seleccionar la impresora y confirmar manualmente.
Cuando usar: solo como fallback. No es silencioso.
Configuracion: ninguna.
2. QZ Tray (ESC/POS termica)
Envia bytes ESC/POS en crudo a una impresora termica via QZ Tray, un servicio gratuito que se instala en el PC y expone la impresora al navegador a traves de un WebSocket firmado.
Cuando usar: PC Windows / Mac / Linux con impresora termica de 58mm o 80mm.
Requisitos:
- Instalar QZ Tray en el PC (descarga gratuita).
- Reiniciar el navegador tras instalar.
- El servidor de Core360 debe tener configuradas las claves QZ:
QzTray:Certificate(PEM publico)QzTray:PrivateKeyPem(clave privada)
Configuracion en terminal:
- Impresora: nombre exacto que reporta QZ Tray (boton "Buscar" lista las disponibles).
- Copias, Codificacion, Ancho de papel: segun necesidad.
Pros / Contras:
- Funciona en cualquier OS.
- Silencioso.
- Soporta apertura de cajon y corte automatico.
- Requiere instalar app externa.
3. QZ Tray driver Windows (PDF / laser)
Envia HTML al motor interno de QZ Tray, que lo renderiza y lo manda al driver de Windows configurado. Funciona con cualquier driver: laser, inkjet, "Microsoft Print to PDF", etc.
Cuando usar: quieres imprimir en una impresora normal (no termica) o exportar a PDF.
Configuracion:
- Impresora: nombre del driver de Windows (boton "Buscar").
- Ancho de papel: usa el del driver, pero puede forzar 80mm con
paperWidth.
4. Red TCP (ESC/POS)
Conecta directamente al puerto TCP 9100 (JetDirect) de la impresora termica de red y le envia bytes ESC/POS crudos.
Cuando usar: impresora con interfaz Ethernet o WiFi y soporte ESC/POS estandar (Epson TM-Tx, Bixolon, Xprinter de red, etc.).
Configuracion en terminal:
- IP / Host: IP fija de la impresora (ej.
192.168.1.50). - Puerto: 9100 (estandar).
- Codificacion: CP850 o segun el manual de la impresora.
Pros / Contras:
- Sin software cliente.
- Funciona desde PC, app movil MAUI y backend.
- Requiere que la impresora tenga IP fija/reservada en el router.
5. Bluetooth ESC/POS (app movil MAUI)
Implementacion nativa de la app movil POS Core360 (ANCER.Core.POS) que usa Plugin.BLE para conectar a la impresora termica Bluetooth y escribir bytes ESC/POS en chunks.
Cuando usar: desde la app movil MAUI con impresoras BT genericas (Xprinter, Goojprt, Rongta).
Configuracion en terminal:
- Direccion MAC: formato
AA:BB:CC:DD:EE:FF.
Pros / Contras:
- 100% nativo, sin dependencias externas.
- El emparejamiento se hace desde la app movil.
- Solo disponible cuando la WebApp corre dentro del shell MAUI.
6. USB (ESC/POS)
Envia bytes ESC/POS por puerto serie virtual (CDC-ACM) de la impresora USB. Usa System.IO.Ports.SerialPort y funciona en Windows y Android (MAUI).
Cuando usar: PC con impresora USB que se monta como puerto COM, o tablet Android con OTG.
Configuracion en terminal:
- PrinterTarget: nombre del puerto. Ejemplos:
- Windows:
COM3,COM5 - Android / Linux:
/dev/ttyUSB0
- Windows:
- PrinterPort: baud rate (9600 por defecto).
7. WindowsDriver (MAUI desktop)
Solo en la app ANCER.Core.POS corriendo en Windows. Renderiza el recibo a GDI y lo envia al driver de Windows instalado.
Cuando usar: instalacion local de la app POS en Windows con impresoras de driver tradicional.
Configuracion:
- Impresora: nombre exacto del driver Windows.
8. WebPRNT WiFi (Star / Epson)
Estrategia silenciosa desde cualquier navegador (incluyendo tablets / celulares). El navegador POSTea los bytes ESC/POS al endpoint HTTP que expone la impresora WiFi.
Cuando usar: tablets Android / iOS con impresoras Star o Epson WiFi (gama media-alta).
Requisitos:
- Impresora compatible:
- Star Micronics: TSP143IIIW, mC-Print3, etc.
- Epson: TM-T20III-W, TM-T88VI, etc.
- Habilitar WebPRNT/ePOS-Print en el panel admin de la impresora.
- Permitir CORS desde el dominio de Core360 (la mayoria lo permiten por defecto).
Configuracion en terminal:
- IP / URL: solo IP (
192.168.1.50) o URL completa (http://192.168.1.50/StarWebPRNT/SendMessage). El sistema autodetecta Star vs Epson. - Puerto HTTP: 80 (por defecto).
Pros / Contras:
- 100% silencioso.
- Funciona en cualquier navegador.
- Sin app extra.
- Impresoras compatibles cuestan mas que las genericas.
9. Web Bluetooth
Estrategia silenciosa desde Chrome / Edge (Android, ChromeOS, desktop). Usa la Web Bluetooth API para conectar directamente a impresoras BT genericas.
Cuando usar: tablets / celulares Android Chrome con impresoras BT genericas y baratas.
Requisitos:
- Navegador Chrome o Edge.
- Sitio servido por HTTPS (requisito de Web Bluetooth).
- Impresora con servicio BLE 0xFF00, 0x18F0 o ISSC (la mayoria de impresoras chinas lo cumplen).
Configuracion en terminal:
- Abrir el dialogo de configuracion de impresora.
- Seleccionar Web Bluetooth en el combo de Estrategia.
- Tocar Emparejar → el navegador muestra los dispositivos BT cercanos.
- Seleccionar la impresora → el navegador guarda el permiso para futuras impresiones.
- El campo Identificador se autorrellena (sirve como clave para recordar el dispositivo).
Pros / Contras:
- 100% silencioso tras emparejamiento inicial.
- Funciona con impresoras BT muy baratas.
- No funciona en iOS / Safari (limitacion del navegador).
- Requiere HTTPS.
10. Android intent (RawBT)
Delega la impresion a la app RawBT (gratis, Play Store). Core360 codifica el ESC/POS en base64 y lo manda via intent URI.
Cuando usar: tablets / celulares Android cuando Web Bluetooth no es viable o se quiere soporte para impresoras USB sin OTG.
Requisitos:
- Instalar RawBT desde Play Store.
- Emparejar la impresora desde la propia app RawBT.
- Marcar RawBT como "siempre" al recibir el primer intent (para evitar el dialogo de seleccion).
Configuracion en terminal:
- Esquema:
rawbt(por defecto, dejar vacio).
Pros / Contras:
- Soporta cualquier impresora que RawBT acepte (BT, USB, IP).
- Setup minimo en la WebApp.
- Requiere app externa instalada.
11. Sunmi integrada
Imprime en la impresora termica integrada de los terminales todo-en-uno Sunmi (V2, V2 Pro, T2, T3, P2 Pro).
Cuando usar: la empresa opera con hardware Sunmi.
Requisitos:
- App
ANCER.Core.POScorriendo en el dispositivo Sunmi. - (Opcional) AAR oficial de Sunmi Printer SDK incluido en el proyecto Android para uso completo del driver AIDL.
Implementacion actual:
- Detecta
Build.Manufacturer == "SUNMI". - Escribe ESC/POS a
/dev/sunmi_printer,/dev/usb/lp0, o/dev/ttyS1(fallback sin SDK). - Si el AAR oficial esta presente, se puede sustituir por la llamada AIDL
IWoyouService.sendRawData.
12. iMin integrada
Equivalente a Sunmi pero para terminales iMin (M2 Pro, Swift 1, D1).
Cuando usar: la empresa opera con hardware iMin.
Requisitos:
- App
ANCER.Core.POScorriendo en el dispositivo iMin. - (Opcional) AAR oficial de iMin Printer SDK.
Implementacion actual:
- Detecta
Build.Manufacturer / Brandcon "IMIN". - Escribe ESC/POS a
/dev/imin_printer,/dev/usb/lp0, o/dev/ttyS1.
Cuadro comparativo
| Tipo | Silencioso | App externa | Plataformas | Costo hardware |
|---|---|---|---|---|
| Navegador | ❌ | - | Cualquiera | Cualquiera |
| QZ Tray ESC/POS | ✅ | QZ Tray | PC | Bajo (termica generica) |
| QZ Tray driver | ✅ | QZ Tray | PC | Bajo (cualquier driver) |
| Red TCP | ✅ | - | PC + MAUI | Medio (red) |
| Bluetooth ESC/POS | ✅ | - | MAUI | Bajo (BT generica) |
| USB ESC/POS | ✅ | - | PC + MAUI | Bajo (USB-COM) |
| WebPRNT WiFi | ✅ | - | Cualquier navegador | Alto (Star/Epson) |
| Web Bluetooth | ✅ | - | Chrome/Edge | Bajo (BT generica) |
| Android intent | ✅ | RawBT | Chrome Android | Cualquiera |
| Sunmi integrada | ✅ | - | Hardware Sunmi | Alto (terminal todo-en-uno) |
| iMin integrada | ✅ | - | Hardware iMin | Alto (terminal todo-en-uno) |
Como elegir
Si dudas que estrategia configurar, abre el Asistente de configuracion desde la pantalla de la terminal. Detecta el dispositivo y propone las 2-3 mejores opciones automaticamente.