🚀 Inicio rápido
Iniciar sesión
- Abre la app en tu navegador
- Ingresa tu email y contraseña (te las dio el administrador)
- Clic en "Iniciar Sesión"
Navegación general
- Menú lateral: secciones del sistema (Dashboard, Inventario, Ventas...)
- Barra superior: indicador "en línea", alertas rápidas, ❓ ayuda, 🌙 tema, 🔔 notificaciones, tu nombre
- Botón flotante 💬: abre el asistente IA en cualquier momento
- En móvil: clic en ☰ para abrir el menú lateral
Cerrar sesión
Menú lateral → última opción "🚪 Cerrar Sesión"
📊 Dashboard
Es la pantalla de inicio. Te muestra el estado del negocio de un vistazo:
- Productos: cantidad de SKUs (productos distintos) en el sistema
- Ventas del Mes: total facturado en el mes en curso
- Por Caducar ≤30D: lotes que vencen en los próximos 30 días
- Stock Bajo: productos por debajo de su mínimo
Abajo aparecen 3 tablas: Caducidades próximas, Stock crítico y Últimos movimientos.
📦 Inventario y productos
Crear un producto nuevo
Editar un producto
En la tabla de Inventario, clic en el botón ✏️ de la fila → cambia lo que necesites → "Actualizar Producto".
Eliminar un producto
Solo puedes eliminar productos que NO tienen lotes. Si tiene lotes, primero elimínalos uno por uno.
🏷️ Lotes y caducidades
Cada producto puede tener varios lotes (entradas distintas de mercancía). Cada lote tiene su propio número, cantidad, caducidad y proveedor.
Agregar un lote a un producto existente
En Inventario, fila del producto → clic en "+ Lote". Llena cantidad, número de lote, caducidad, etc.
Ver los lotes de un producto
Clic en 📦 N de la fila (donde N es el número de lotes). Se abre un panel lateral con el detalle de cada uno.
Editar un lote
Dentro del panel de lotes, clic en ✏️ del lote. Puedes cambiar:
- Número de lote
- Caducidad (útil cuando un lote llegó sin fecha)
- Proveedor
- Precio de compra
- Factura
- Fecha de entrada
No puedes editar la cantidad porque eso corrompería el stock. Si necesitas corregirla, mejor cancela el lote y crea uno nuevo.
Conceptos clave
- FIFO: el lote con caducidad más cercana se vende primero (automático)
- Lote vencido: días < 0 — el sistema NO lo usa al vender
- ≤30 días: alerta urgente, el lote va a caducar pronto
- "⚠ Sin caducidad": lote sin fecha. Edítalo lo antes posible
Sección "Caducidades"
En el menú lateral, vista dedicada a lotes que están cerca de vencer. Muestra contadores y la lista ordenada de más urgente a menos.
💰 Ventas
Crear una venta nueva
Editar metadata de una venta
En la tabla de Ventas → ✏️ → puedes cambiar cliente, fecha, estado y notas. NO puedes cambiar los productos (si te equivocaste, cancela y crea otra).
Cancelar una venta (con reverso de stock)
Imprimir comprobante
En la tabla → 🖨️ — se abre una ventana lista para imprimir o guardar como PDF.
🛒 Compras
Registra órdenes de compra a proveedores. No afecta el stock automáticamente — el stock se actualiza cuando registras los lotes que llegan.
Crear una compra
- Menú → Compras → "+ Nueva Compra"
- Selecciona Proveedor, fecha, factura
- Agrega productos con cantidad y precio de compra
- "Registrar Compra" — folio OC-XXXX
¿Y cómo entra el stock?
Tras crear la compra, ve a Inventario y agrega los lotes correspondientes con "+ Lote". O pídele al asistente IA: "registra un lote nuevo de 100 unidades de paracetamol, caducidad 2027-12-31".
Imprimir orden de compra
En la tabla → 🖨️.
👤 Clientes y proveedores
Crear cliente o proveedor
Menú → Clientes o Proveedores → "+ Nuevo". Llena los datos (nombre obligatorio, RFC opcional, contacto, etc.) → Guardar.
Editar
En la tabla → ✏️ → cambia → "Actualizar".
Ver historial de un cliente
Clic en 📎 N → se abre panel lateral con sus datos completos, documentos adjuntos y todas sus ventas históricas.
Subir documentos
Dentro del panel del cliente/proveedor, sube PDFs (cédula fiscal, comprobantes, etc.) arrastrando o desde el botón de carga.
🔄 Movimientos
Es la bitácora completa del inventario. Cada cambio queda registrado con fecha, usuario, producto, lote y cantidad.
Tipos de movimiento
| Tipo | Cuándo |
|---|---|
| ENTRADA | Llega un lote nuevo (manual o por compra) |
| SALIDA | Se realiza una venta |
| EDICION | Se edita un lote existente (cambia caducidad, proveedor, etc.) |
| BAJA | Se elimina un lote (solo si no tuvo ventas) |
Filtros
Por tipo, rango de fechas o búsqueda libre. Puedes exportar a Excel o imprimir.
🤖 Asistente IA
Cómo abrirlo
- Clic en el botón 💬 flotante (esquina inferior derecha)
- O usa el atajo Cmd/Ctrl + K
¿Qué puedo preguntarle?
Habla normal, en español. Algunos ejemplos:
- "¿Tenemos paracetamol en existencia?"
- "¿Qué productos tienen stock bajo?"
- "¿Qué lotes caducan en los próximos 30 días?"
- "Dame un resumen del negocio"
- "Top 5 productos más vendidos este mes"
- "Análisis ABC de productos"
- "Compara las ventas de este mes vs el anterior"
- "Historial del cliente Hospital ABC"
Pedirle que haga acciones
El asistente puede preparar acciones que tú confirmas con un botón:
- "Vende 5 paracetamoles al cliente X"
- "Registra una compra a proveedor Y de 100 unidades..."
- "Registra un lote nuevo de Z, caducidad 2027-12-31"
- "Agrega caducidad 2027-08-30 al lote LOT-XXX"
Cuando lo hagas, aparece una tarjeta de propuesta con [Confirmar] / [Cancelar]. Nada se ejecuta hasta que tú confirmes.
Historial de conversaciones
Clic en 📚 arriba del chat → ves todas tus conversaciones pasadas. Puedes buscarlas, abrirlas o eliminarlas.
Nueva conversación
Clic en 🗑 → la actual se guarda automáticamente y empiezas una nueva.
👥 Chat de equipo
Manda mensajes a tus compañeros del sistema. Como WhatsApp pero adentro de FarmaControl.
Cómo usarlo
- Abre el chat con 💬 o Cmd + K
- Clic en la pestaña "👥 Equipo"
- Aparece la lista de todos los usuarios activos
- Clic en el usuario para iniciar la conversación
- Escribe y Enter para enviar (Shift+Enter para salto de línea)
Notificación de mensajes nuevos
En la pestaña Equipo aparece un badge rojo con el número de mensajes sin leer. Al abrir la conversación, se marcan como leídos.
🔔 Notificaciones
El sistema te avisa automáticamente cuando pasa algo importante:
- 📉 Stock bajo: un producto cruzó por debajo de su mínimo
- ⚠️ Lote por caducar: entra al rango ≤30 días
- 💰 Nueva venta: otro usuario registró una venta
- 🛒 Nueva compra: otro usuario registró una compra
Cómo verlas
Clic en la campana 🔔 de la barra superior. Aparece un panel con la lista. Clic en cualquiera te lleva a la sección relevante.
Marcar como leídas
Botón ✓✓ dentro del panel — todas se marcan como leídas. Botón 🗑 limpia la lista.
⌨️ Atajos de teclado
Presiona ? en cualquier momento para ver la lista. Los principales:
| Acción | Atajo |
|---|---|
| Abrir/cerrar chat IA | Cmd/Ctrl + K |
| Ir a Inventario + buscar | Cmd/Ctrl + / |
| Nueva venta | Cmd/Ctrl + Shift + V |
| Nuevo producto | Cmd/Ctrl + Shift + P |
| Ir a Dashboard / Inventario / Ventas... | Cmd/Ctrl + 1/2/3... |
| Toggle menú lateral (móvil) | Cmd/Ctrl + B |
| Cerrar modal/panel | Esc |
| Ver esta ayuda | ? |
🌙 Modo oscuro
Clic en el botón 🌙 / ☀️ de la topbar. Cambia entre claro y oscuro. La preferencia se guarda — la próxima vez que entres, recuerda tu elección.
Si tu sistema operativo está en modo oscuro, la primera vez la app aparecerá en oscuro automáticamente.
🔐 Roles y permisos
Cada usuario tiene un rol que determina qué puede hacer:
| Módulo | Admin | Supervisor | Vendedor | Consulta |
|---|---|---|---|---|
| Inventario (productos + lotes) | CRUD | CRUD | CRUD | 👁 Ver |
| Compras / Ventas | CRUD | CRUD | CRUD | 👁 Ver |
| Clientes / Proveedores | CRUD | CRUD | CRUD | 👁 Ver |
| Usuarios | CRUD | 🚫 | 🚫 | 🚫 |
| Perfil empresa | Editar | 👁 Ver | 👁 Ver | 👁 Ver |
CRUD = Crear, Leer, Actualizar, Borrar (todo). 👁 Ver = solo lectura.
💵 Cobranza (CxC / CxP)
Módulo para llevar control de cuentas por cobrar (lo que te deben los clientes) y cuentas por pagar (lo que le debes a los proveedores).
Acceder
Menú izquierdo → Cobranza (sección FINANZAS).
Vender a crédito
- Ve a Ventas → Nueva Venta
- En "Condición de pago" elige Crédito
- Indica los días de crédito (ej: 30)
- El sistema calcula automáticamente la fecha de vencimiento
- La venta queda con saldo pendiente y aparece en Cobranza
Registrar un abono / pago
- En Cobranza, busca la venta o factura
- Click en "💰 Abonar" o "Registrar Pago"
- Captura monto, fecha, forma de pago (efectivo/transferencia/tarjeta)
- El saldo se actualiza automáticamente
Indicadores
- 🟢 Al corriente — pago dentro del plazo
- 🟡 Por vencer — menos de 7 días
- 🔴 Vencido — pasó la fecha
↩️ Devoluciones
Procesa devoluciones de productos vendidos, reintegrando stock al lote correspondiente.
Procesar una devolución
- Ve a la venta original en Ventas
- Click en el botón "↩️ Devolución"
- Selecciona los productos a devolver y la cantidad
- Indica el motivo (defectuoso, error, no quiso, etc.)
- Confirma
Qué pasa automáticamente
- 📦 El stock regresa al lote original (FIFO reverso)
- 💵 Si fue venta a crédito, se ajusta el saldo
- 📋 Se registra un movimiento tipo "DEVOLUCIÓN" en la bitácora
- 📊 La devolución se refleja en reportes
📊 Reportes
Genera reportes financieros y operativos con los datos reales de tu empresa.
Tipos de reportes disponibles
- 📈 Ventas por período — diario, semanal, mensual
- 🏆 Top productos — más vendidos por cantidad y monto
- 👤 Top clientes — quién compra más
- 💰 Estado de resultados — ingresos vs costos
- 📦 Inventario valorizado — cuánto vale tu stock total
- ⚠️ Caducidades — lotes por vencer
- 📋 Movimientos — bitácora completa
Generar y exportar
- Menú → Reportes
- Elige el tipo y el rango de fechas
- Click en "Generar"
- Botones de exportar: 📊 Excel, 📄 PDF, 🖨️ Imprimir
💾 Backup (Respaldo)
Guarda toda tu información en archivos descargables. Recomendado: hacer backup semanal.
Crear un backup
- Menú → Sistema → Backup (o desde Configuración)
- Elige el formato:
- 📊 Excel (.xlsx) — multi-hojas: productos, lotes, ventas, etc. (recomendado para humanos)
- 📄 PDF — vista imprimible
- 📋 JSON — técnico, para restaurar en otro sistema
- Click descargar — el archivo se guarda en tu computadora
¿Cómo restaurar?
Si necesitas restaurar, contacta a soporte. El Excel/PDF son para consulta humana; el JSON sirve para migración técnica.
📸 Códigos de barras
Escanea códigos EAN/UPC con la cámara para acelerar búsquedas y registro de productos.
Asignar código a un producto
- Ve a Inventario → editar producto
- Baja al campo "Código de Barras"
- Opción A: escribe el código manualmente (ej:
7501234567890) - Opción B: click en 📸 → activa cámara → apunta al producto
- Guarda
Buscar producto escaneando
- En Inventario, click en botón 📸 Escanear
- Apunta la cámara al código del medicamento
- El producto aparece automáticamente
Imprimir etiquetas con código de barras
- En la tabla de Inventario, busca el botón 🖨️ en la columna de acciones
- Se abre una ventana con 8 etiquetas listas (nombre + código + precio)
- Click en "🖨️ Imprimir 8 etiquetas"
- Usa papel adhesivo o normal
💼 Comisiones de vendedores
Calcula automáticamente comisiones por ventas para cada vendedor.
Configurar % de comisión
- Menú → Sistema → Usuarios
- Editar usuario con rol vendedor
- Campo "% Comisión" → escribe el porcentaje (ej: 5 = 5%)
- Guardar
Ver comisiones del período
- Menú → Comisiones
- Elige rango de fechas
- Verás tabla con: vendedor, ventas totales, comisión calculada
- Exporta a Excel para nómina
📥 Importación masiva
Carga grandes volúmenes de productos, clientes o proveedores desde Excel en segundos.
Pasos
- Menú → Inventario (o Clientes / Proveedores)
- Click en "📥 Importar Excel"
- Descarga la plantilla de muestra (importante: respetar columnas)
- Llena el Excel con tus datos
- Súbelo → el sistema valida y carga
- Si hay errores, te muestra qué filas fallaron y por qué
Columnas obligatorias (productos)
nombre— nombre del productocategoria,presentacion,unidadprecioCompra,precioVentaminimo— stock mínimocodigoBarras(opcional)
🎁 Promociones
Configura descuentos automáticos: 2x1, % de descuento, precios especiales por cliente, etc.
Crear una promoción
- Menú → Promociones
- Click en "➕ Nueva Promoción"
- Configura:
- Tipo: Descuento %, 2x1, 3x2, Precio fijo
- Productos aplicables: todos, categoría específica, productos seleccionados
- Vigencia: fecha inicio y fin
- Cliente: aplica a todos o a uno específico
- Activar la promo
Aplicar al vender
Cuando registres una venta con productos en promoción, el descuento se aplica automáticamente. El precio final se muestra antes de confirmar.
🏪 Multi-sucursal
Si tienes varios puntos de venta, FarmaControl maneja inventarios y ventas por sucursal.
Configurar sucursales
- Menú → Sucursales
- Click "➕ Nueva Sucursal"
- Captura: nombre, código, dirección, ciudad, encargado, tel
- Guarda
Asignar usuarios a sucursal
- Menú → Usuarios → editar usuario
- Campo "Sucursal" → selecciona
- El usuario verá su sucursal por defecto
Filtrar por sucursal
En reportes, ventas, inventario, etc. tendrás un filtro "Sucursal" para ver datos solo de esa ubicación.
🔮 Predicción IA (Reorden inteligente)
Claude analiza tus ventas históricas y predice qué productos comprar y en qué cantidades, para no quedarte sin stock ni tener exceso.
Cómo usar
- Abre el asistente IA (botón 💬 abajo a la derecha)
- Pregunta: "¿Qué necesito comprar?" o "Predice mi demanda para los próximos 30 días"
- El asistente analiza ventas pasadas, días de cobertura y caducidades
- Te da una lista priorizada de productos a comprar con cantidades sugeridas
Qué considera el algoritmo
- 📊 Velocidad de venta de cada producto (últimos 60 días)
- ⏰ Estacionalidad (compara mismo mes año pasado si hay datos)
- 📦 Stock actual + stock mínimo
- 🗓️ Lead time de tus proveedores
- ⚠️ Lotes próximos a caducar (NO los cuenta como stock real)
📄 CFDI / Facturación electrónica
Genera facturas electrónicas timbradas ante el SAT mediante integración con Facturapi.io.
Configuración inicial (admin)
- Menú → CFDI · docDigitales → Configuración
- Captura los datos fiscales de tu empresa (RFC, régimen, código postal, etc.)
- Sube tus certificados CSD (.cer y .key) y la contraseña
- Configura el API key de Facturapi.io
- Guarda
Timbrar una venta
- Crea o abre una venta
- Click en "📄 Timbrar CFDI"
- Captura RFC del cliente, uso de CFDI (G01, G03, etc.)
- Click "Timbrar"
- Recibes el PDF y XML oficial timbrado
- Se envía automático al correo del cliente (si lo tiene registrado)
Cancelar un CFDI
Desde el listado de CFDIs, click en "Cancelar", elige motivo. Sigue el proceso oficial SAT (puede tardar 72h en aceptarse).
Envía recordatorios de pago, confirmaciones y comprobantes por WhatsApp con un solo clic. No requiere API ni costo — usa wa.me (WhatsApp Web/App del usuario).
Requisitos
- El cliente debe tener su teléfono registrado (Clientes → editar → Teléfono)
- Tener WhatsApp Web abierto o WhatsApp instalado en el dispositivo
Enviar recordatorio de pago
- Menú → Cobranza
- Busca la venta con saldo pendiente
- Click en el botón 💬 (verde) al final del renglón
- Se abre WhatsApp con un mensaje pre-armado tipo:
"Hola [Cliente], le recordamos que tiene un saldo pendiente de $X de la venta #VTA-001 con fecha XX/XX/XXXX. Gracias."
- Solo presiona Enviar en WhatsApp ✓
🏢 Datos de empresa
Configura los datos de tu empresa que aparecen en todos los reportes, facturas y comprobantes.
Editar datos
- Menú → Sistema → Perfil Empresa
- Captura:
- Nombre (razón social completa, ej: COMERCIALIZADORA ZETAMSA SA DE CV)
- RFC, régimen fiscal, código postal
- Dirección completa, teléfono, email, web
- Logo — subir imagen (PNG/JPG, máx 2MB)
- Guardar
Dónde aparecen estos datos
- 📄 Encabezado de todos los reportes (PDF, impresión, Excel)
- 🧾 Tickets de venta
- 📋 Facturas CFDI
- 📧 Correos enviados al cliente
- 📖 Cabecera del manual cuando se imprime
❓ Preguntas frecuentes
El chat IA dice "Overloaded" o "saturado"
Los servidores de Claude están temporalmente saturados (a nivel global, no es problema tuyo). Espera 30-60 segundos y vuelve a intentar. El sistema reintenta automáticamente hasta 3 veces.
"No tengo permiso para..."
Tu rol no permite esa acción. Pide a un administrador que te cree los permisos o que él lo haga.
No puedo eliminar un lote
El lote ya fue usado en ventas (disponible < cantidad original). No puede borrarse porque rompería la auditoría. Si está vencido y no se va a usar más, simplemente déjalo: el sistema NO lo considera al vender.
No puedo eliminar un producto
El producto tiene lotes. Primero elimina los lotes (uno por uno, solo los que no hayan sido vendidos), luego el producto.
Olvidé mi contraseña
En la pantalla de login: escribe tu email → clic en "¿Olvidaste tu contraseña?". Te llega correo para restablecerla.
La IA propuso una venta pero no quiero confirmarla
Clic en Cancelar en la tarjeta. Nada se ejecuta.
¿Mis datos están seguros?
Sí. Todo se guarda en Firebase (Google Cloud) con reglas de seguridad estrictas. Cada usuario solo ve los datos a los que su rol le da acceso. Los mensajes de chat de equipo son privados entre los participantes. Las conversaciones con la IA son privadas tuyas.
El escáner de códigos de barras no se activa
Asegúrate de:
- Usar Chrome o Edge actualizado (Safari NO soporta BarcodeDetector)
- Aceptar el permiso de cámara cuando lo pida
- Estar conectado con HTTPS (no en localhost vía http://)
- En móvil, apuntar bien y dar buena luz
Si no se activa, escribe el código manualmente.
WhatsApp abre pero no manda nada
El sistema solo te abre WhatsApp con el mensaje pre-armado. Tú tienes que apretar el botón Enviar. Esto es para que puedas editar antes de mandar y para no requerir API de pago.
El reporte muestra "Mi Empresa SA de CV" en vez de mi razón social
Vas a Sistema → Perfil Empresa y capturas los datos reales. Se sincronizan en tiempo real a todos los reportes.
Quiero cancelar un CFDI ya timbrado
Desde el listado de CFDIs, click en Cancelar, elige motivo SAT. El SAT puede tardar hasta 72h en aceptar la cancelación. Mientras tanto el CFDI sigue vigente.
La predicción IA me da números raros
Necesita datos. Si tienes menos de 30 días de ventas, la predicción es poco confiable. Mejora con el tiempo conforme se acumula histórico.
Subo el logo y se borra al recargar
Ya está arreglado. Si te pasa, vuelve a subirlo desde Sistema → Perfil Empresa. Ahora se guarda en Firebase (no solo en tu navegador).
¿Cómo migro de una sucursal a otra?
Las sucursales comparten la misma base de datos. Lo que cambia es el "filtro" por defecto. Pídele al admin que te cambie tu sucursal asignada en Usuarios.
¿Funciona en celular?
Sí, 100% responsive. El menú se convierte en hamburguesa (☰) arriba a la izquierda. La cámara para escanear códigos funciona mejor en móvil.
¿Funciona sin internet?
No completamente. Para registrar ventas necesitas conexión. Si la pierdes momentáneamente, verás un indicador "Sin conexión" en la barra superior.
¿Puedo usar la app desde mi celular?
Sí — está diseñada responsive. Usa el menú ☰ para navegar. Las tablas se adaptan al tamaño de pantalla.
¿Cómo lo abro más rápido en mi computadora?
En el navegador, agrega la URL a favoritos. En Chrome/Safari puedes "Crear acceso directo" o "Agregar a la pantalla de inicio" para que parezca una app nativa.