Skip to Content
Menu
v 18.0 Third Party
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Point of Sale (point_of_sale)
Discuss (mail)
Inventory (stock)
Invoicing (account)
Lines of code 862
Technical Name pos_cashkeeper
LicenseLGPL-3
Websitehttps://www.homotec.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Point of Sale (point_of_sale)
Discuss (mail)
Inventory (stock)
Invoicing (account)
Lines of code 862
Technical Name pos_cashkeeper
LicenseLGPL-3
Websitehttps://www.homotec.com

POS CashKeeper

Integración con Protocolo CKFast

Acerca de CashKeeper

Este módulo permite integrar cajones inteligentes CashKeeper con el sistema POS de Odoo, utilizando el protocolo CKFast para comunicación directa con CKMonitor via sockets TCP/IP.

Modalidades de Instalación

🏢 Odoo On-Premise

Conexión Directa

  • Odoo y CKMonitor en la misma red local
  • Acceso directo al puerto 16501 de CKMonitor
  • Sin necesidad de componentes adicionales
  • Latencia mínima, conexión directa

☁️ Odoo Cloud

Con Middleware

  • Middleware ejecutándose en servidor local
  • Conexión a internet para comunicación con Odoo Cloud
  • Polling automático cada 2 segundos
  • Monitoreo proactivo de tickets

Componentes del Sistema

  • Odoo POS: Sistema principal de punto de venta
  • CKMonitor: Software gestor de colas de CashKeeper (debe ejecutarse en Windows)
  • CashKeeper: Cajón inteligente para pagos en efectivo
  • Protocolo CKFast: Comunicación via sockets TCP/IP en puerto 16501
  • Middleware CashKeeper: (Opcional) Proxy para comunicación entre Odoo Cloud y CKMonitor local

Características Principales

  • ✅ Protocolo CKFast nativo (TCP/IP)
  • ✅ Comunicación directa con CKMonitor (On-Premise)
  • ✅ Middleware inteligente para Odoo Cloud
  • ✅ Polling automático del estado de pagos
  • ✅ Monitoreo proactivo de tickets (Middleware)
  • ✅ Manejo robusto de errores y timeouts
  • ✅ Reintentos automáticos con backoff exponencial
  • ✅ Interfaz intuitiva para configuración
  • ✅ Soporte para pagos en efectivo

Descarga del Middleware (Solo para Odoo Cloud)

Para utilizar CashKeeper con Odoo Cloud, descargue el middleware:

📥 Descargar Middleware Completo

🐧 Linux:

  • Extraer: middleware.py + config.py
  • Ejecutar: python3 middleware.py

🪟 Windows:

  • Extraer: CashKeeper_Middleware_Control.exe + middleware.py + config.py
  • Ejecutar: CashKeeper_Middleware_Control.exe

Configuración: Editar config.py con la URL de su instancia Odoo

Configuración

🏢 Configuración On-Premise (Conexión Directa)

Parámetros de Conexión:

  • CKMonitor Host: IP del servidor CKMonitor (127.0.0.1 si está en la misma máquina)
  • CKMonitor Port: Puerto de CKMonitor (16501 por defecto)
  • Usar Middleware:Desactivado

☁️ Configuración Cloud (Con Middleware)

Parámetros de Conexión:

  • Usar Middleware:Activado
  • CKMonitor Host: (No aplica - gestionado por middleware)
  • CKMonitor Port: (No aplica - gestionado por middleware)

Parámetros Opcionales (ambas modalidades):

  • ID Caja: Número identificador del punto de venta
  • Terminal: Identificador del terminal
  • Vendedor: Código del vendedor
  • Forma Pago: Identificador del método de pago (por defecto: "efectivo")

Uso en el POS

🏢 Flujo On-Premise

  1. Abra una sesión POS
  2. Agregue productos al carrito
  3. Seleccione el método de pago CashKeeper
  4. El sistema enviará el comando CrearTiquet directamente a CKMonitor
  5. El cliente introduce el efectivo en el cajón CashKeeper
  6. El pago se completa automáticamente

☁️ Flujo Cloud

  1. Abra una sesión POS
  2. Agregue productos al carrito
  3. Seleccione el método de pago CashKeeper
  4. El sistema crea una petición de pago en la nube
  5. El middleware detecta la petición y la procesa automáticamente
  6. El cliente introduce el efectivo en el cajón CashKeeper
  7. El middleware detecta el cambio de estado y notifica a Odoo Cloud
  8. El pago se completa automáticamente

Protocolo CKFast - Detalles Técnicos

Comandos Disponibles

1. CrearTiquet (C):

C|NumTiquet|Importe|ID2|IDCaja|Terminal|Vendedor|FormaPago

2. Estado Tiquet (S):

S|NumTiquet

Respuestas de CKMonitor

Para CrearTiquet:

  • OK|Added - Ticket añadido correctamente
  • NOK Invalid ID - ID de ticket no válida
  • NOK Already exists - ID de ticket ya existente

Para Estado Tiquet:

  • OK|OK - Ticket cobrado correctamente ✅
  • OK|Pending - Ticket pendiente de cobro ⏳
  • OK|Cancel - Ticket cancelado ❌
  • NOK Not found - Ticket no encontrado

Requisitos Previos

Comunes

  • CKMonitor instalado y ejecutándose en la máquina Windows
  • CashKeeper conectado físicamente a la máquina
  • Puerto 16501 disponible (puerto por defecto de CKMonitor)

Adicionales para Odoo Cloud

  • Servidor local con acceso a CKMonitor y conexión a internet
  • Middleware CashKeeper instalado y ejecutándose (incluye todas las dependencias)

Solución de Problemas Comunes

🏢 On-Premise

  • Error de conexión: Verificar que CKMonitor esté ejecutándose en puerto 16501
  • Timeout: Comprobar firewall y conectividad de red local

☁️ Cloud

  • Middleware no responde: Verificar que esté ejecutándose y config.py tenga la URL correcta
  • No encuentra pagos: Confirmar "Usar Middleware" activado en método de pago

🔧 Problemas Generales

  • "NOK Invalid ID": ID del ticket muy largo o con caracteres especiales
  • "NOK Already exists": Reiniciar sesión POS para generar nuevos IDs
  • Pago "Pending": Verificar CashKeeper conectado y funcionando

Soporte

Para soporte técnico especifique qué modalidad utiliza (On-Premise o Cloud) y proporcione detalles del error encontrado.

Homotec Servicios Informáticos

www.homotec.com

Compatible con Odoo 18.0 y protocolo CKFast

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.