En esta guía vas a acceder a Ferred con una cuenta de prueba, explorar el dashboard, registrar una venta desde el POS y verificar que el stock se decrementó correctamente. Al terminar entenderás el flujo completo de una transacción offline-first y estarás listo para usar el sistema en tu sucursal.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Carlos-Gnd/FERRED-Inventario-y-Ventas/llms.txt
Use this file to discover all available pages before exploring further.
Acceder al sistema
Abre tu navegador y ve a ferred.netlify.app, o abre la aplicación de escritorio instalada en tu equipo.Usa una de las siguientes cuentas de prueba según el rol que quieras explorar:
| Rol | Correo | Contraseña |
|---|---|---|
| Administrador | admin@ferred.com | admin123 |
| Cajero | cajero@ferred.com | cajero123 |
| Bodeguero | bodega@ferred.com | bodega123 |
La URL de producción del frontend es Netlify. El backend Express corre en Railway. Si usas la aplicación de escritorio, el servidor Express se inicia de forma embebida dentro del proceso Electron y no necesitas acceso a Railway.
Iniciar sesión
Ingresa tu correo y contraseña en el formulario de inicio de sesión y haz clic en Entrar.El servidor valida tus credenciales con bcryptjs y emite un token JWT con expiración de 2 horas. Ese token se guarda localmente y se envía en cada petición como
Authorization: Bearer <token>.Si no hay conexión con el servidor remoto, el sistema cambia automáticamente al modo offline: autentica contra la copia local de usuarios en SQLite y responde con el encabezado X-Auth-Mode: offline para que el cliente sepa que opera de forma desconectada.Explorar el dashboard
Al iniciar sesión como Administrador o Cajero verás el Dashboard con:
- Resumen de ventas del día: monto total, número de transacciones y ticket promedio.
- Alertas de stock crítico: productos cuyo
stockActualestá por debajo destockMinimo. ElAlertasServiceactualiza estas alertas automáticamente en segundo plano. - Accesos rápidos al POS, inventario y reportes.
El Bodeguero accede directamente al módulo de inventario. El dashboard de ventas no está disponible para ese rol.
Registrar una venta
Navega a POS / Nueva venta en el menú lateral.
- Busca un producto por nombre o código de barras en la barra de búsqueda del carrito.
- Haz clic en el producto para agregarlo. Ajusta la cantidad con los botones
+y−. - Repite el paso anterior para cada artículo que el cliente lleve.
- Selecciona el tipo de pago: Efectivo o Tarjeta.
- Haz clic en Confirmar venta.
- Descuenta el stock en SQLite local.
- Genera el registro de
facturaDtecon estadoSIMULADO. - Encola la operación en
sync_logpara subirla a Supabase cuando haya internet. - Envía el DTE a Hacienda de forma asíncrona; si tiene éxito, el estado cambia a
PROCESADO. - Muestra el ticket de venta listo para imprimir.
Si el servidor sandbox de Hacienda no está disponible, el DTE queda en estado SIMULADO — la venta es válida y el ticket se puede imprimir de todas formas. Usa
POST /api/dte/:id/reenviar para intentar el envío nuevamente cuando haya conexión.