# Modo punto de venta

# Qué cambia en modo punto de venta

El **modo punto de venta** —abreviado técnicamente como POS— adapta PrimApp a la operación de caja y requiere un POS ID válido.

## Diferencias frente al modo fuerza de venta

- Inicia directamente en nueva venta; fuerza de venta inicia en el dashboard.
- Usa cliente, almacén, lista de precios y tipos documentales de la terminal.
- Carga medios de pago POS y permite multipago cuando está habilitado.
- Puede permitir modificación de precios y descuentos globales configurados.
- Ofrece tickets en espera, devolución, impresión, Yappy y cierre de caja.

Si el POS ID no existe, está inactivo o pertenece a otro contexto, la app no debe continuar en modo punto de venta.

## Configuración mínima

La terminal necesita organización, almacén, lista de precios, cliente predeterminado, documento de venta, documento de devolución, cuenta bancaria, medios de pago y permisos para los procesos usados.

# Cierre de caja

El cierre de caja resume y cierra la actividad POS del usuario.

## Flujo

1. Abra **Cierre de caja**.
2. Seleccione el periodo o cierre disponible.
3. Revise pagos, medios utilizados, totales y diferencias.
4. Ejecute el proceso de cierre cuando tenga permisos.
5. Consulte el detalle generado.
6. Imprima o exporte el reporte en formato POS o carta.

Los reportes muestran fechas normalizadas, transacciones y totales, junto con los datos y el logo disponibles del comercio y de la terminal.

## Requisitos

Se necesitan los modelos y procesos de cierre de caja, trazas de pagos POS, cuenta bancaria y acceso del rol. Si faltan movimientos, revise el usuario, la terminal, el rango de fechas y el estado de los documentos.

## Leer Mis cierres de caja

Cada tarjeta separa la **terminal** del **usuario**. Los bloques **Desde** y **Hasta** muestran el inicio del periodo y la fecha de transacción del cierre, con fecha y hora legibles, por ejemplo **18/10/2026 09:25 AM**. En pantallas estrechas se presentan uno debajo del otro.

El estado y la cantidad de órdenes aparecen como información secundaria. El **Total** se destaca al pie de la tarjeta, con separadores de miles y dos decimales. El filtro **Solo Mis Registros** mantiene su función.

## Imprimir el cierre

<table id="bkmrk-acci%C3%B3ncomportamiento" style="width:100%;border-collapse:collapse;margin:12px 0 20px 0;"><thead><tr><th style="border:1px solid #d8dee9;padding:12px;background:#eef2f7;text-align:left;">Acción</th><th style="border:1px solid #d8dee9;padding:12px;background:#eef2f7;text-align:left;">Comportamiento</th></tr></thead><tbody><tr><td style="border:1px solid #d8dee9;padding:12px;vertical-align:top;">POS 80mm</td><td style="border:1px solid #d8dee9;padding:12px;vertical-align:top;">Tras confirmar, intenta imprimir directamente en la impresora predeterminada; si no hay una marcada, usa la primera disponible. Si no hay impresoras, falla el envío o se informa un resultado no satisfactorio, ofrece compartir el PDF.</td></tr><tr><td style="border:1px solid #d8dee9;padding:12px;vertical-align:top;">Carta</td><td style="border:1px solid #d8dee9;padding:12px;vertical-align:top;">Genera el PDF y abre la opción de compartir, guardar o enviar según el dispositivo.</td></tr></tbody></table>

El cierre POS genera una página PDF de **75 mm de ancho y altura variable según el contenido**, igual ancho de página que el ticket de orden. Los márgenes y la distribución del contenido son propios del cierre, por lo que la vista previa puede verse diferente.

<p class="callout info">Antes de imprimir, complete la [configuración inicial de la impresora predeterminada](https://docs.primware.net/books/primapp/page/configuracion-de-servidor-y-pos-id#bkmrk-configuraci%C3%B3n-inicia). Pruebe cierres cortos y largos: el PDF no demuestra por sí solo que el controlador no agregue papel al final.</p>

# Pagos y Yappy

PrimApp obtiene los medios de pago desde iDempiere y los presenta según la configuración POS.

## Pago simple y multipago

En pago simple se selecciona un medio para cubrir el total. En multipago se distribuye el importe entre varios medios; la suma debe coincidir exactamente con el total antes de completar la venta. Los métodos pueden solicitar una referencia o número de ruta.

Los descuentos configurados como medios especiales se muestran por separado y generan líneas de cargo negativas con su impuesto correspondiente.

## Yappy

Cuando Yappy está habilitado:

1. PrimApp abre una sesión para el dispositivo configurado.
2. Genera el QR dinámico por el importe.
3. Consulta periódicamente el estado de la transacción.
4. Continúa al confirmarse el pago o permite cancelar la transacción.

Requiere configuración de grupo, dispositivo, claves y medio de pago relacionado. No documente ni comparta las claves en capturas.

<p class="callout info">Si el QR no aparece, revise la URL del servicio, la configuración activa, el modo prueba/producción, el acceso de red y las credenciales.</p>