Guía de configuración Caja PdV

=./odoo.py --load=web,hw_proxy,hw_posbox_homepage,hw_posbox_upgrade,hw_scale,hw_scanner,hw_escpos=========================== Point of Sale Hardware Setup ============================

Pre-requisitos

Antes de comenzar a configurar su Caja PdV asegúrese de tener todo. Necesitará :

  • La Caja PdV

  • Un adaptador de energía 2A

  • Una computadora o tableta con un navegador web actualizado a la fecha

  • A running SaaS or Odoo database with the Point of Sale installed
  • Una red local configurada con DHCP (esta es la configuración predeterminada)

  • An Epson USB TM-T20 Printer or another ESC/POS compatible printer (officially supported printers are listed at the POS Hardware page)
  • Un Escáner de código de barras USB Honeywell Eclipse u otro escáner compatible

  • Un cajón de dinero Epson compatible

  • An RJ45 Ethernet Cable (optional, Wi-Fi is built in)

Guía de configuración Paso a Paso

Última versión de la Caja PdV (desde 2015)

Conectar dispositivos perisféricos

El hardware con soporte oficial está listado en the POS Hardware page, pero otro hardware debería funcionar bien.

  • Impresora: Conectar una impresora ESC/POS a un puerto USB y encenderla.

  • Cajón de dinero: El cajón de dinero debe conectarse a la impresora con un cable RJ25.

  • Escáner de código de barras: Conecte el escáner de código de barras. Para que se escáner sea compatible, debe comportarse como un teclado y debe ser configurado en US QWERTY. También debe poner fin a los códigos de barras con una tecla ENTER (código clave 28). Esto es más probable en la configuración por defecto de su escáner.

  • Escala: Conecte su escala y enciéndala.

  • Ethernet: Si usted no desea utilizar Wi-Fi, conecte el cable Ethernet. Asegúrese de que esto se vaya a conectar en la caja del terminal del punto de venta a la misma red que su dispositivo de ventas.

  • Wi-Fi: The current version of the POSBox has Wi-Fi built in. Make sure not to plug in an Ethernet cable, because all Wi-Fi functionality will be bypassed when a wired network connection is available.

Encender la Caja PdV

Enchufe el adaptador de corriente en la Caja PdV, un estado de LED color rojo brillante debe encenderse.

Asegúrese que la Caja PdV está lista.

Una vez encendida, la Terminal de Punto de Venta necesita tiempo para arrancar. Una vez que la Terminal del Punto de Venta está lista, debería de imprimir un recibo del estatus con la dirección de IP. Después del estatus LED, justo después de prender el botón rojo, deberá permanecer en luz verde.

Configurar el Punto de Venta

To setup the POSBox in the Point of Sale go to Point of Sale ‣ Configuration ‣ Point of Sale and select your Point of Sale. Scroll down to the PoSBox / Hardware Proxy section and activate the options for the hardware you want to use through the POSBox. Specifying the IP of the POSBox is recommended (it is printed on the receipt that gets printed after booting up the POSBox). When the IP is not specified the Point of Sale will attempt to find it on the local network.

If you are running multiple Point of Sale on the same POSBox, make sure that only one of them has Remote Scanning/Barcode Scanner activated.

Podría ser buena idea asegurarse que la terminal del Punto de Venta nunca cambie de su red. Consulte la documentación de su router para lograr esto.

Inicia el Punto de Venta

Si no especifica la dirección de IP de la Terminal del Punto de Venta en la configuración, la Terminal necesita ejecutar el escanear de redes para encontrar la de la Terminal. Esto sólo se ejecutará una únicamente vez.

El punto de venta ahora es conectado con el POSBox y tu disco duro debe estar listo para usarse.

Configuración Wi-Fi

The most recent version of the POSBox has Wi-Fi built in. If you're using an older version you'll need a Linux compatible USB Wi-Fi adapter. Most commercially available Wi-Fi adapters are Linux compatible. Officially supported are Wi-Fi adapters with a Ralink 5370 chipset.

Asegúrese de no conectar un cable Ethernet, ya que todas las funciones relacionadas con el Wi-Fi se desactivarán cuando una conexión de red por cable esté disponible.

Cuando arranca la Terminal de Punto con un adaptador Wi-Fi se iniciará su propio punto de acceso de Wi-Fi llamado "Terminal" para poder conectarse. El recibo que se imprime cuando la Terminal comienza reflejará esto. con el fin de hacer que la Terminal del Punto de Venta se conecte a una red Wi-Fi existente, vaya a la página de inicio de la Terminal de Punto de Venta (indicada en el recibo) y vaya a la página de configuración de Wi-Fi. Por allí se puede elegir una red para conectarse. Tenga en cuenta que sólo se da soporte (2) redes -PSK abiertos y WPA. Cuando se conecta a una red WPA asegurada, rellene el campo de contraseña. La Terminal del Punto de Venta intentará conectarse a la red especificada y se imprimirá un nuevo recibo del estado de la Terminal del Punto de Venta después de que se haya conectado.

Si planea establecer permanentemente la Terminal del Punto de Venta con Wi-Fi, puede utilizar la opción "persistente" en la página de configuración de Wi-Fi cuando se conecta a una red. Esto hará que la elección de la red persiste en los reinicios. Esto significa que en lugar de poner en marcha su propia red "Terminal" que siempre tratará de conectarse a la red especificada después de que se inicie.

Cuando la Terminal de Punto de Venta no se puede conectar a una red caerá de nuevo a iniciar su propio Punto de Acceso "Terminal". Si se pierde la conexión con una red Wi-Fi después de conectarse a ella, la Terminal de Punto de Venta intentará restablecer la conexión automáticamente.

Configuración Multi-PdV

La forma aconsejada de configurar un Punto de Venta de múltiples tiendas es tener una Terminal por cada Punto de Venta. En este caso, es obligatorio especificar manualmente la dirección IP de cada Terminal en cada Punto de Venta. También se debe configurar la red para asegurarse de que las direcciones de IP de la Terminal no cambien. Por favor, consulte la documentación del router.

Guía de Caja chica PdV (avanzado)

Si usted está usando su Punto de Venta en una distribución de Linux basada en Debian, no es necesario que la Terminal del Punto de Venta como se puede ejecutar desde su software a nivel local. Sin embargo el proceso de instalación no es infalible. Usted necesitará por lo menos para saber cómo instalar y ejecutar Odoo. También es posible que tenga problemas específicos de su distribución o de su configuración particular y configuración de hardware.

Los drivers de diferentes tipos de soporte para el hardware son provistos como los módulos de Odoo. De hecho, la Terminal del Punto de Venta ejecuta una instancia de Odoo para que se comunique con el Punto de Venta. La instancia de Odoo se ejecuta en la Terminal del Punto de Venta, sin embargo, es muy diferente a una instancia "real" de Odoo. No maneja cualquier dato de negocio (por ejemplo las órdenes de punto de venta), pero sólo sirve como puerta de enlace entre el punto de venta y el hardware.

The goal of this section will be to set up a local Odoo instance that behaves like the Odoo instance running on the POSBox.

Proceso de creación de imagen

We generate the official POSBox images using the scripts in https://github.com/odoo/odoo/tree/11.0/addons/point_of_sale/tools/posbox. More specifically, we run posbox_create_image.sh. This builds an image called posbox.img, which we zip and upload to nightly.odoo.com for users to download.

Las secuencias de comandos en este directorio podrían ser útiles como referencia si te quedas atascado o desean más detalles acerca de algo.

Resumen del proceso de creación de la imagen

El proceso de creación de imagen comienza descargando la última imagen Raspbian . A continuación, se monta localmente esta imagen Raspbian y copias sobre algunos archivos y secuencias de comandos que harán que la imagen Raspbian se convierta en una Terminal de Punto de Venta cuando arranque. Estos scripts actualizarán Raspbian, eliminarán paquetes no esenciales e instalarán los paquetes necesarios. Con el fin de arrancar Raspbian usamos qemu, que es capaz de proporcionar la emulación ARM. Después de esto, el sistema operativo Raspbian emulado se apagará. A continuación, una vez más a nivel local se monta la imagen, eliminan los guiones que fueron utilizados para inicializar la imagen en el arranque y copiamos sobre algunos archivos de configuración adicionales. La imagen resultante está entonces lista para ser probada y utilizada.

Pre-requisitos

  • Una distribución Linux basada en Debian (Debian, Ubuntu, Mint, etc.)

  • A running Odoo instance you connect to load the Point of Sale
  • Debe desinstalar cualquier controlador de impresora ESC/POS, ya que entrará en conflicto con controlador integrado de Odoo

Guía de configuración Paso a Paso

Dependencias extra

Because Odoo 11.0 runs on Python 3, you need to check which version of pip you need to use.

# pip --version

Si esto devuelve algo como esto:

pip 1.4.1 from /usr/lib/python2.7/dist-packages (python 2.7)

You need to try pip3 instead.

Si esto devuelve algo como esto:

pip 1.5.6 from /usr/local/lib/python3.3/dist-packages/pip-1.5.6-py3.3.egg (python 3.3)

Puede utilizar pip.

Los módulos de los controladores requieren la instalación de nuevos módulos de Python:

# pip install netifaces evdev pyusb==1.0.0b1

Permisos de acceso

Los drivers deben tener acceso en bruto a los dispositivos de escáner de la impresora y de los códigos de barras. Para ello se requiere un sistema de administración de bits. En primer lugar vamos a crear un grupo que tiene acceso de los dispositivos USB.

# groupadd usbusers

Then we add the user who will run the Odoo server to usbusers

# usermod -a -G usbusers USERNAME

Then we need to create a udev rule that will automatically allow members of usbusers to access raw USB devices. To do so create a file called 99-usbusers.rules in the /etc/udev/rules.d/ directory with the following content:

SUBSYSTEM=="usb", GROUP="usbusers", MODE="0660"
SUBSYSTEMS=="usb", GROUP="usbusers", MODE="0660"

Then you need to reload the udev rules or reboot your machine if reloading the rules did not work.

# udevadm control --reload-rules && udevadm trigger

Comenzar la instancia local de Odoo

Debe iniciar el servidor Odoo con las configuraciones correctas

$ ./odoo-bin --load=web,hw_proxy,hw_posbox_homepage,hw_scale,hw_scanner,hw_escpos

Probar la instancia

Conecte todo el hardware a los puertos USB de su máquina, y vaya a la http://localhost:8069/hw_proxy/status actualice la página un par de veces y vea si todos los dispositivos están indicados como Conectado. Una posible fuente de errores son: Los caminos de la distribución difieren de las trayectorias esperadas por los pilotos, otro proceso ha acaparado acceso exclusivo a los dispositivos, no se aplican las reglas de udev o sustituida por otros.

Iniciar automáticamente Odoo

Ahora debe asegurarse de que la instalación de Odoo se inicie automáticamente después del arranque. Hay varias maneras de hacerlo, y la forma de hacerlo depende de su configuración particular. Usando el sistema de inicio recibido por su distribución es probablemente la forma más fácil de lograr esto.

Configurar el Punto de Venta

El campo de la dirección IP en la configuración de la Terminal del Punto de Venta debe ser 127.0.0.1 o localhost si se está ejecutando el servidor de Odoo en la máquina que va a utilizar como el Punto de Venta del dispositivo. También puede dejarlo vacío.

Documentación Técnica de la Caja PdV

Información técnica general

El hardware de la Caja PdV

El Hardware de la Terminal del Punto de Venta se basa en una Raspberry Pi 2, una computadora de placa popular. El Raspberry Pi 2 se alimenta con un adaptador de corriente micro-usb 2A. Se necesita 2A para dar suficiente energía para los escáneres de códigos de barras. El software se instala en una tarjeta de 8 GB Clase 10 o superior SD. Todo este hardware es fácilmente disponible a nivel mundial de los proveedores independientes.

Perisféricos compatibles

El hardware con soporte oficial está listado en POS Hardware page.

El software de la Caja PdV

The POSBox runs a heavily modified Raspbian Linux installation, a Debian derivative for the Raspberry Pi. It also runs a barebones installation of Odoo which provides the webserver and the drivers. The hardware drivers are implemented as Odoo modules. Those modules are all prefixed with hw_* and they are the only modules that are running on the POSBox. Odoo is only used for the framework it provides. No business data is processed or stored on the POSBox. The Odoo instance is a shallow git clone of the 11.0 branch.

La partición raíz en la Terminal del Punto de Venta está montada de sólo lectura, asegurando que no llevamos a cabo la tarjeta SD escribiendo a demasiado. También asegura que el sistema de archivos no puede ser corrompido por el corte de la alimentación a la Terminal. Aplicaciones Linux esperan poder escribir en ciertos directorios embargo. Así que le ofrecemos un ramdisk para /etc y /var (Raspbian proporciona automáticamente una para /tmp). Estos discos ram son configurados por setup_ramdisks.sh, que se corre antes de todos los demás scripts de inicio ejecutándolo en /etc/init.d/rcS. Los discos ram son nombrados /etc_ram y /var_ram respectivamente. La mayoría de los datos de /etc y /var se copia en estos TMPFS ramdisks. Con el fin de limitar el tamaño de los discos ram, que no copiamos sobre ciertas cosas a ellos (por ejemplo, los datos relacionados). Entonces nos atamos montarlos en los directorios originales. Así que cuando una aplicación escribe en /etc /foo /bar en realidad está escribiendo a /etc_ram /foo /bar. También nos atamos de subir / a /root_bypass_ramdisks para poder llegar a la verdadera /etc y /var durante el desarrollo.

Registros de los servidores Odoo funcionando se pueden encontrar en:

/var/log/odoo/odoo.log

Varios scripts de la Terminal relacionados (por ejemplo scripts relacionados de wi-fi) que se ejecutan en la Terminal, se registrarán en /var/log/syslog y estos mensajes serán etiquetados con terminal_*.

Accediendo a la Caja PdV

Acceso local

Si conecta un teclado QWERTY USB en uno de los puertos USB de la Terminal, y si se conecta un monitor de la computadora al puerto HDMI de la Terminal, se puede utilizar como un pequeño ordenador GNU/Linux y realizará diversas tareas de administración, como vistas de algunos registros.

La Terminal del Punto de Venta se conectará automáticamente como root en la bandeja predeterminada.

Acceso remoto

Si usted tiene la direcicón IP de la Terminal de Punto de Venta y un cliente SSH puede acceder al sistema de la Terminal de manera remoto. Las credenciales de inicio de sesión son [UNKNOWN NODE title_reference]/raspberry.

Actualizando el software de la Caja PdV

Sólo actualizar la Terminal de Punto de Venta si tiene problemas o desea utilizar las funciones de reciente aplicación.

La mejor manera de actualizar el software de la Terminal, es descargar una nueva versión de la imagen y el flash de la tarjeta SD con él. Esta operación se describe en detalle en este tutorial, basta con sustituir la imagen Raspberry Pi de serie con la última que se encuentra en la página oficial de la imagen de la Terminal. Este método de actualización se asegurará de que se está ejecutando la última versión del software de la Terminal del Punto de Venta.

La segunda forma de la actualización es a través de la construirla en la interfaz de actualización que se puede llegar a través de la página de inicio de la Terminal. Lo bueno acerca de la actualización de esta manera es que usted no tiene que hacer una nueva imagen. Este método de actualización se limita a lo que puede hacer, sin embargo. No puede, por ejemplo configurar archivos de la actualización instalada (como por ejemplo /etc/hostapd.conf). Sólo se puede actualizar:

  • La aplicación Odoo interna

  • Scripts en la carpeta odoo/addons/point_of_sale/tools/posbox/configuration/

En caso de duda, utilice siempre el primer método de actualización.

Solución de problemas

El PdV no se puede conectar a la Caja PdV

  • La forma más fácil de asegurarse de que la Terminal del Punto de Venta está puesta en el punto adecuado, es encendiendo la impresora para imprimir un recibo que indicará cualquier error si se encuentra o la dirección IP de la Terminal del Punto de Venta en caso de haber tenido éxito. Si el recibo no se imprime, compruebe los siguientes pasos:

  • Asegúrese de que la Terminal del Punto de Venta esté encendida, lo indicará una luz brillante roja.

  • Asegúrese de que la Terminal del Punto de Venta este lista, esto lo indicará una luz brillante verde justo después de la luz de encendido roja. La Terminal del Punto de Venta deberá estar lista después de ~2 minutos de haber sido encendida.

  • Asegúrese que la Terminal del Punto de Venta esté conectada a la misma red en la que se encuentra su Terminal. Tanto el dispositivo y la Terminal deben ser visibles en la lista de dispositivos conectados a su router de red.

  • Make sure that your LAN is set up with DHCP, and gives IP addresses in the range 192.168.0.X, 192.168.1.X, 10.0.0.X. If you cannot setup your LAN that way, you must manually set up your POSBox's IP address.
  • Si ha especificado la dirección IP de la Terminal en la configuración, asegúrese de que corresponda a la impresa en el recibo del estado de la Terminal de Punto de Venta.

  • Asegúrese que el PdV no está cargado sobre HTTPS.

  • Un error en la aplicación HTTP de Firefox impide la detección automática para trabajar de forma fiable. Al utilizar Firefox usted debe configurar manualmente la dirección IP de la Terminal del Punto de Venta en la configuración de la Terminal.

El escáner de código de barra no está funcionando

  • El escáner de código de barras se debe configurar en los Estados Unidos QWERTY y emite un Enter después de cada código de barras. Esta es la configuración por defecto de la mayoría de los lectores de códigos de barras. Consulte la documentación del lector de código de barras para obtener más información.

  • La Terminal del Punto de Venta necesita una fuente de alimentación 2A para trabajar con algunos escáneres de códigos de barras. Si usted no está utilizando la fuente de alimentación suministrada, asegúrese de que la que utiliza cuente con el poder suficiente.

  • Algunos escáneres de códigos de barras necesitarán más de 2A y no funcionarán, o funcionan poco fiable, incluso con la fuente de alimentación proporcionada. En estos casos usted puede conectar el escáner de código de barras en un concentrador USB con alimentación propia.

  • Algunos escáneres de códigos de barras mal construidas no se anuncian como escáneres de código de barras, sino como un teclado USB en su lugar, y estos no serán reconocidos por la terminal del punto de venta.

El escáner de código de barra no está funcionando de manera segura

  • Asegúrese de que no más de un dispositivo habilitado de 'Escaner de proximidad'/'Escaner de código de barras' esté conectado a la terminal del punto de venta al mismo tiempo.

Impresión del recibo tarda demasiado tiempo

  • Se espera que un pequeño retraso antes de la primera impresión, ya que la terminal del punto de venta hará algún procesamiento previo para acelerar las próximas ediciones. Si usted sufre retrasos después es muy probable que sea debido a una mala conexión de red entre el punto de venta y la terminal.

Algunos caracteres no se imprimen correctamente en el recibo

  • La Terminal del Punto de Venta no es compatible con todos los idiomas y caracteres. Actualmente soporta scripts basados en los latinos y cirílicos, con el apoyo del japonés básico.

La impresora está fuera de línea

  • Asegúrese de que la impresora esté conectada, funcionando, debe de tener suficiente papel y tener su tapa cerrada, y que no informe error. Si el error persiste, póngase en contacto con soporte.

El cajón de dinero no abre

  • El cajón de dinero debe estar conectado a la impresora y se debe activar en la configuración de la terminal.

Créditos

El proyecto de la Terminal del Punto de Venta fue desarrollado por Frédéric van der Essen con un poco de ayuda de Gary Malherbe, Fabien Meghazi, Nicolas Wisniewsky, Dimitri Del Marmol, Joren Van Onder y Antony Lesuisse.

Este desarrollo no habría sido posible sin la campaña de Indiegogo y los que han contribuido a ello. Especial agradecimiento a los socios que apoyaron la campaña con la fundación de paquetes asociados:

  • Camptocamp
  • BHC
  • openBig
  • Eeezee-IT
  • Solarsis LDA
  • ACSONE
  • Vauxoo
  • Ekomurz
  • Datalp
  • Dao Systems
  • Eggs Solutions
  • OpusVL

Y también a los socios que han respaldado el desarrollo con la fundación de la Terminal Bundle:

  • Willow IT
  • E. Akhalwaya & Sons
  • Multibase
  • Mindesa
  • bpso.biz
  • Shine IT.