Skip to content

Provisión de Tienda

Cada tienda en el sistema POS opera con su propia base de datos y aplicaciones locales. Esta guía explica cómo crear una nueva tienda en HQ, generar sus credenciales de sincronización y configurar las aplicaciones del lado de la tienda para conectarse a la sede central.

Crear una Tienda en el Gerente HQ

Inicie sesión en el Gerente HQ y navegue a Tiendas. Haga clic en "Agregar Tienda" y complete los campos requeridos: un código de tienda único (por ejemplo, TIENDA-001), el nombre de la tienda y la dirección. El código de tienda se usa en todo el sistema para identificar transacciones, inventario y reportes originados en esta ubicación. Elija un código corto, memorable y consistente con su convención de nomenclatura.

Después de guardar la tienda, aparece en la lista con un estado de "Pendiente de Provisión". No se sincronizarán datos a la tienda hasta que se complete la provisión.

Generar el Token de Sincronización

Desde la página de detalle de la tienda en el Gerente HQ, haga clic en "Generar Token de Sincronización". Esto produce un token de uso único que la aplicación de la tienda usará para autenticar su conexión inicial con HQ. El token se muestra una sola vez -- cópielo inmediatamente y almacénelo de forma segura. Si pierde el token antes de usarlo, puede revocarlo y generar uno nuevo.

El token de sincronización codifica el ID de la tienda, la dirección del servidor HQ y un secreto criptográfico. Cuando la aplicación de la tienda presenta este token durante su primera sincronización, HQ verifica el token, registra la tienda como "Activa" y comienza a transmitir el catálogo completo de productos, departamentos, tasas de impuesto y asignaciones de usuarios.

Configurar la Base de Datos de la Tienda

En la máquina de la tienda, instale PostgreSQL y cree una base de datos local:

bash
# Usando Docker
docker run -d --name pos-store-db \
  -e POSTGRES_USER=pos \
  -e POSTGRES_PASSWORD=pos \
  -e POSTGRES_DB=pos_store \
  -p 5432:5432 \
  postgres:16

# Ejecutar migraciones de la tienda
cd apps/store-server
cargo run -- migrate

El esquema de la base de datos de la tienda replica el esquema de HQ para las tablas sincronizadas (productos, departamentos, tasas de impuesto, usuarios) y agrega tablas específicas de la tienda para transacciones de venta, sesiones de caja y el inventario local.

Configurar las Aplicaciones de la Tienda

Cree o edite el archivo .env en el directorio apps/store-server:

env
DATABASE_URL=postgres://pos:pos@localhost:5432/pos_store
REDIS_URL=redis://localhost:6379
STORE_SERVER_PORT=3000
HQ_SYNC_URL=wss://hq.ejemplo.com:3001
SYNC_TOKEN=pegue-su-token-aqui

Inicie el servidor de la tienda con cargo run. En el primer arranque, presentará el token de sincronización a HQ, recibirá la carga de datos inicial y poblará la base de datos local. Esta sincronización inicial puede tomar algunos minutos dependiendo del tamaño de su catálogo de productos.

Verificar la Conexión

Una vez que el servidor de la tienda está ejecutándose y la sincronización inicial se completa, verifique el estado de la tienda en el Gerente HQ. Debe cambiar de "Pendiente de Provisión" a "Activa", y verá la marca de tiempo de la última sincronización. Del lado de la tienda, el panel del Gerente de Tienda mostrará el conteo de productos y confirmará la conexión con HQ.

Ahora puede abrir la aplicación Terminal POS en la máquina de la tienda y comenzar a procesar ventas. Los empleados asignados a esta tienda en el Gerente HQ podrán iniciar sesión con sus PINs.