Guía completa

Instalación, uso diario, copias de seguridad y resolución de problemas — paso a paso, sin necesidad de saber de tecnología.

Lo que incluye la app (gratis, MIT)

Todo lo que un taller usa en el día a día, sin suscripción ni límites:

Menú Qué incluye
Panel El día de un vistazo — reparaciones abiertas, prioridades y alertas (vista distinta para dueño, técnico y mostrador)
Reparaciones Fichas con código único (REP-…), estados (recepción → listo → entregado), línea de tiempo, notas internas y al cliente, fotos y fecha prevista
Pedidos Cola de entrada — pedidos y diagnósticos enviados por clientes, listos para convertir en reparación
Devoluciones Gestión de devoluciones ligadas a ventas y reparaciones
Clientes Fichas con historial de reparaciones, búsqueda por nombre/teléfono/IMEI, consentimientos
Inventario de piezas Stock, alertas de mínimos, proveedores, piezas asociadas a reparaciones
TPV de mostrador Venta de piezas y accesorios, sesiones de caja, tickets y registro de pagos
Servicios de reparación Catálogo de reparaciones con precios — la «tarifa» de la tienda
Presupuestos Versiones enviadas al cliente, respuesta aceptar/rechazar con registro fechado, historial completo
Notificaciones Alertas en la app, plantillas de mensaje editables y cola de envío WhatsApp/SMS
Informes Ventas, reparaciones y márgenes por periodo — con página de impresión A4
Impresión Recibos y etiquetas configurables — rollo 58/80 mm, A4, secciones opcionales e impresión directa en térmicas de red
Analista de IA Preguntas sobre los datos de la tienda en lenguaje natural
Seguimiento del cliente Página pública en la red de la tienda para seguir la reparación — gratis en LAN
Usuarios Varios empleados con perfiles y permisos por función
Idiomas Portugués, inglés, francés y español
Panel de reparaciones de OficinaOS
El panel — las reparaciones del día de un vistazo
Ficha de reparación con estados, presupuesto y línea de tiempo
La ficha — estados, presupuesto y cronología completa
Página de seguimiento que el cliente ve en el móvil
La página de seguimiento que el cliente abre en el móvil

Tres formas de instalar

OficinaOS es siempre el mismo programa — la diferencia está en cómo se ejecuta en el PC de la tienda. Hay tres caminos:

OficinaOS-Setup.exe (recomendado) — un instalador Windows normal, sin Docker: corre como servicio, arranca con el PC, crea la regla de firewall, hace copias de seguridad diarias automáticas y deja un icono en la bandeja. El camino correcto para el PC de la tienda.

Modo portátil — un único paquete con todo incluido (la app, la base de datos PostgreSQL y el runtime), sin instalación y sin servicios de Windows. Existe para los casos en que el instalador no sirve: PCs donde no tienes la contraseña de administrador, quien prefiere no instalar nada en el sistema, y como plan B si el instalador falla en una máquina concreta (antivirus, políticas de empresa).

Docker — para un NAS, un servidor dedicado, Linux o macOS, o para quien ya usa Docker.

Setup.exe (recomendado) Portátil Docker
Cuándo usarlo PC de la tienda — casi siempre Sin admin, sin instalar nada, o el instalador falla NAS, servidor, Linux/macOS
Requiere administrador Sí, durante la instalación No Sí, al instalar Docker
Descarga ~339 MB ~540 MB ~1 GB (Docker + app)
Arranque con el PC Automático (servicio Windows) Opcional — tarea programada, se pregunta la 1ª vez Automático
Si la app falla Se reinicia sola Se reinicia sola (wrapper) Se reinicia sola
Copias de seguridad Diaria automática a las 03:30 En cada arranque + BACKUP.bat Diaria automática (cada 24h)
Copias fuera del PC Copiar la carpeta de backups Copiar la carpeta de backups Soportado (rclone → S3/B2/GCS)
Actualizaciones Botón «Actualizar» en la app (~100 MB) o Setup encima Botón «Actualizar» en la app o ATUALIZAR.bat ATUALIZAR.bat — solo descarga lo que cambió
Acceso remoto (HTTPS) Cloudflare Tunnel instalado aparte Cloudflare Tunnel instalado aparte Cloudflare Tunnel incluido

Instalación — OficinaOS-Setup.exe (una vez, ~10 minutos)

Descarga OficinaOS-Setup.exe en la página de releases y haz doble clic. Si Windows Defender SmartScreen avisa: «Más información» → «Ejecutar de todas formas».

Pide administrador una sola vez (servicios, firewall y la tarea de copias) y lo hace todo solo. Al final el navegador se abre en http://localhost:4000. Primer acceso: usuario admin, contraseña braindead — la app obliga a cambiar ambos.

Queda un icono en la bandeja junto al reloj: abrir la app, ver el estado, parar/arrancar, hacer una copia. En otros aparatos de la tienda: http://oficinaos.local:4000 — o el código QR en la página Ayuda.

En Linux o macOS no hay instalador — se usa Docker directamente:


            git clone https://github.com/braindeadpt/OficinaOS.git
cd OficinaOS && cp .env.example .env
docker compose up -d
docker compose exec app bun run db:seed
          
Aviso SmartScreen de Windows — «Más información» y después «Ejecutar de todos modos»
El instalador aún no está firmado — Windows puede mostrar este aviso. «Más información» → «Ejecutar de todos modos».

Modo portátil — sin admin, sin instalar nada

Para cuando el instalador no es opción: no tienes la contraseña de administrador del PC, no quieres que nada quede instalado en el sistema, o el instalador/servicios fueron bloqueados en esa máquina (antivirus, políticas de empresa).

Descarga oficinaos-portable.zip, extráelo en una carpeta y ejecuta INICIAR.bat. La app es exactamente la misma — mismo código, misma base de datos PostgreSQL, mismas funciones — y también tiene el botón «Actualizar» dentro de la app.

Dos diferencias prácticas frente a Setup.exe: el arranque automático es una tarea programada opcional (INICIAR.bat pregunta la 1ª vez) en vez de un servicio; y como nadie abre el firewall por ti, Windows pregunta una vez si permite la conexión — elige «Permitir» para que los tablets de la tienda conecten.

Si llegaste aquí por el error «virtualization support not detected» del camino Docker, el portátil lo resuelve — pero en ese caso el Setup.exe es aún más simple, porque tampoco necesita Docker.

Día a día — encender, apagar, archivos

Una vez instalado, el día a día es doble clic en un archivo. Los nombres son iguales en los dos modos — solo cambia la carpeta donde están:

  • Instalación por Setup.exe: el servicio corre solo — parar/arrancar y copia manual desde el icono de la bandeja.
  • Modo Docker: en la carpeta donde extrajiste el instalador.
  • Modo portátil: dentro de la carpeta oficinaos-portable — los datos viven en data\, las copias en app\uploads\backups.
  • Otros dispositivos de la tienda (tablet, móvil, otro PC) no instalan nada — abren http://<IP-del-PC>:4000 en el navegador.
Archivo Para qué
INICIAR.bat Encender OficinaOS — abre el navegador al final
PARAR.bat Apagar — los datos quedan guardados
ATUALIZAR.bat Actualizar a la versión más reciente
BACKUP.bat (solo portátil) Copia de seguridad manual
RESTAURAR.bat (solo portátil) Restaurar la base de datos desde una copia

Copias de seguridad y restauración

Las copias son archivos comprimidos (.sql.gz) con toda la base de datos. La app muestra el estado de la última copia en Ajustes → Tienda → Copias de seguridad — funciona igual en todos los modos.

Con la instalación por Setup.exe una tarea programada hace copia diaria a las 03:30 en C:\ProgramData\OficinaOS\backups. En modo Docker un servicio dedicado hace una copia cada 24 horas, guarda 14 días, y opcionalmente copia a almacenamiento externo (S3, Backblaze, etc.) y prueba la restauración automáticamente.

En modo portátil la copia se hace en cada arranque y con BACKUP.bat. Restaurar se hace con RESTAURAR.bat (elige un archivo de backups). Como no hay copia fuera del PC automática, copia la carpeta app\uploads\backups a un disco externo o USB — las copias en el mismo disco no protegen contra avería, robo o ransomware.

Actualizaciones

La app avisa arriba cuando hay una versión nueva. En las instalaciones por Setup.exe y en modo portátil, el dueño de la tienda tiene un botón «Actualizar» en el aviso — descarga solo la parte de la app (~100 MB) con verificación SHA-256, hace copia de la base de datos antes y repone la versión anterior solo si la nueva no arranca. La app queda offline ~1-2 minutos durante el cambio.

A mano también funciona: el Setup.exe de la versión nueva encima, o ATUALIZAR.bat en portátil y en Docker. En Docker puedes activar actualizaciones 100% automáticas (Watchtower) — las migraciones de la base de datos corren siempre solas.

En la tienda — móviles, tablets y PCs

Cualquier aparato conectado al Wi-Fi de la tienda abre la app en el navegador — sin instalar nada. Solo hay que escribir la dirección que da la instalación e iniciar sesión:

Funciona sin internet para el uso diario. Guarda la dirección en favoritos — siempre es la misma.


            http://192.168.1.33:4000   # la dirección del PC servidor
          

Icono en la pantalla del móvil

Para abrir con un toque, como una app normal — tarda 10 segundos:

  • iPhone/iPad: Safari → botón Compartir → «Añadir a pantalla de inicio»
  • Android: Chrome → menú ⋮ → «Añadir a pantalla de inicio»
  • Con acceso remoto activo, Android puede llegar a ofrecer «Instalar aplicación» — instalación real

Fuera de la tienda — acceso remoto

Con el PC de la tienda encendido, un Cloudflare Tunnel gratuito da a la tienda una dirección https:// propia — sin tocar el router, funciona con cualquier operadora, incluso las que bloquean puertos (CGNAT).

Sirve para que el equipo consulte la app fuera de la tienda y para que los enlaces de los clientes — seguimiento, presupuestos, QR de garantía — abran en cualquier parte.

  • Crear cuenta gratis en Cloudflare + un dominio (~10 €/año)
  • En el panel Zero Trust: crear el túnel y copiar el token
  • Dos líneas en el archivo .env y reiniciar la app
  • En la app: Ajustes → Tienda → URL base de seguimiento → la dirección pública

Privado por defecto

El túnel es opcional: la app funciona al 100% en la red local incluso sin internet. Los datos de los clientes se quedan en la tienda — Cloudflare solo transporta el tráfico cifrado mientras el túnel está activo.

Quien quiera una barrera extra puede activar Cloudflare Access (gratis): email + código antes del login, manteniendo abiertas las páginas públicas de los clientes.

Impresión — recibos y etiquetas

OficinaOS imprime los tres documentos del día a día directamente desde la ficha o la pantalla de venta: el recibo de reparación para el cliente, el ticket de venta del TPV y la etiqueta que se pega en el equipo.

Todo se configura en Ajustes → Tienda → Impresión — las opciones se aplican a todos los documentos a partir de ese momento:

Opción Opciones
Papel del recibo Rollo térmico 58 mm · Rollo térmico 80 mm · Hoja A4 (documento completo, tipo factura)
Secciones del recibo Activar/desactivar cada bloque: IMEI, problema reportado, firma del cliente, QR de seguimiento, garantía
Etiqueta del equipo 40×20 mm · 57×32 mm · 62×29 mm
Método de impresión Cuadro de diálogo Imprimir — cualquier impresora instalada — o térmica de red ESC/POS — directo, sin diálogo

Dos formas de imprimir

Cuadro de diálogo Imprimir (predeterminado): el documento se abre en una pestaña nueva y usa el diálogo de impresión del sistema. Funciona con cualquier impresora instalada — USB, red, Bluetooth — e incluso con «Guardar como PDF». Las etiquetas usan siempre esta vía: las etiqueteras hablan otros lenguajes (ZPL/TSPL) y el navegador se ocupa del driver.

Impresora térmica de red (ESC/POS): la app envía el recibo directamente a la impresora por la red de la tienda — un clic y sale el ticket, sin diálogo. Para térmicas conectadas por cable o Wi-Fi (Epson TM, Star, Xprinter y compatibles ESC/POS). El texto usa la página de códigos CP850 — tildes correctas — y el QR de seguimiento se imprime con comandos nativos de la impresora, sin drivers.

  • Activar (una vez): Ajustes → Tienda → Impresión → Método «Impresora térmica de red» → indicar IP y puerto (casi siempre 9100) → «Enviar ticket de prueba»
  • Encontrar la IP: en la mayoría de las térmicas, encender con el botón FEED pulsado imprime un autotest con la IP; también aparece en la lista de dispositivos del router
  • Fijar la IP en el router (reserva DHCP) — si no, la impresora puede cambiar de dirección y dejar de imprimir
  • Con el papel A4 configurado o una impresora solo USB, el camino es el cuadro de diálogo — ESC/POS es solo para rollos térmicos en red

Impresión — problemas comunes

Las situaciones más frecuentes:

Síntoma Qué hacer
«No se pudo conectar con la impresora» Comprobar que está encendida y en la misma red de la tienda; revisar IP y puerto; repetir el «ticket de prueba»
«No hay ninguna impresora de red configurada» Indicar IP + puerto en Ajustes → Tienda → Impresión — o cambiar el método a «Cuadro de diálogo Imprimir»
La impresora cambió de IP Crear una reserva DHCP en el router y actualizar la IP en los ajustes
Recibo cortado o márgenes incorrectos En el cuadro de diálogo: elegir el papel correcto (58 mm, 80 mm o A4), márgenes «Ninguno» y escala 100%
La pestaña del recibo no se abre Permitir ventanas emergentes para la dirección de la app e imprimir de nuevo
Impresora solo USB Usar el método «Cuadro de diálogo Imprimir» — ESC/POS necesita una impresora en la red

Módulos Pro — cómo funcionan

Los módulos Pro son funciones que necesitan «llegar a internet». La app sigue siendo 100% local y gratuita; cuando la tienda quiere alcance remoto, empareja la app con OficinaOS Cloud — nuestro servicio que hace de puente entre la app de la tienda y el exterior, sin exponer el PC de la tienda.

La tienda crea una cuenta en Cloud y empareja la app con un código (una vez). Cada módulo se activa del lado del servidor — sin archivos de licencia. La app se sincroniza con Cloud cada ~2 minutos para enviar y recibir.

Sin emparejamiento, todo sigue funcionando en la red local — los módulos Pro simplemente no aparecen.

Módulo Lo que gana el cliente de la tienda
Portal del cliente Enlace público con el estado de la reparación y botones para aceptar/rechazar el presupuesto — sin llamar a la tienda
Bot de WhatsApp Escribe al WhatsApp de la tienda y recibe el estado de la reparación automáticamente; aprueba presupuestos con SÍ/NO
Diagnóstico a distancia Hace el diagnóstico del móvil en casa (oficinaos-diag, gratis) y lo envía a la tienda con un código
Informes IA Informe del diagnóstico escrito en lenguaje sencillo, listo para entregar
Facturación certificada Factura o factura-recibo legal emitida directamente desde la reparación o la venta — vía InvoiceXpress, con la cuenta de la propia tienda — solo Portugal
Escaparate online Página pública con artículos del catálogo de la tienda; el cliente reserva y la reserva entra en la cola de Pedidos
Busco pieza Tablón entre tiendas OficinaOS para pedir piezas y responder «la tengo» — el trato se cierra entre tiendas
Precios de mercado La mediana anónima de los precios de reparaciones y piezas de otras tiendas, para compararla con los tuyos
Multitienda Ingresos y reparaciones de todas las tiendas del mismo dueño en un solo panel de OficinaOS Cloud
Remarketing por WhatsApp Mensaje automático a clientes con consentimiento cuya última reparación fue hace tiempo

Precios

La app completa es gratuita y open source (MIT) — sin límites, sin cuentas, sin periodo de prueba. Para siempre.

Los módulos Pro están en beta: durante este periodo, las tiendas piloto los usan gratis mientras medimos el valor real que aportan al mostrador. Cuando se anuncien los precios serán suscripciones mensuales sencillas — sin permanencia ni costes ocultos.

* Nota WhatsApp: responder a clientes dentro de la ventana de 24h es gratis. Para notificaciones proactivas («está lista») fuera de esa ventana, Meta cobra pequeños importes por mensaje plantilla — coste de Meta, no nuestro.

Qué Estado Precio
App completa (core) Gratis para siempre 0 €
OficinaOS Diag (herramienta) Gratis para siempre 0 €
Portal del cliente Disponible (beta) Por anunciar — gratis en beta
Bot de WhatsApp Disponible (beta) Por anunciar — gratis en beta*
Canal SMS (pasarela Android) Incluido en el core 0 € — gratis
Recepción de diagnósticos Disponible (beta) Por anunciar — gratis en beta
Informes IA Disponible (beta) Por anunciar — por informe
Facturación (InvoiceXpress) Disponible (beta) Por anunciar — gratis en beta. La cuenta de InvoiceXpress es de la tienda y tiene el coste propio del servicio
Escaparate online (+ personalización) Disponible (beta) Por anunciar — gratis en beta
Busco pieza Disponible (beta) Por anunciar — gratis en beta
Precios de mercado Disponible (beta) Por anunciar — gratis en beta
Multitienda Disponible (beta) Por anunciar — gratis en beta
Remarketing por WhatsApp Disponible (beta) Por anunciar — gratis en beta. Los mensajes plantilla tienen el coste de Meta*

Portal del cliente (Pro)

Con el módulo activo, cada reparación gana un botón «Public link» en su página de detalle. Al pulsarlo, la app publica en Cloud una copia redactada del trabajo — estado, dispositivo, presupuesto, fecha prevista y línea de tiempo — y copia el enlace.

El enlace es un secreto por trabajo (un código aleatorio de 16 caracteres): quien lo tiene ve la página. Se envía al cliente por SMS, WhatsApp o impreso en el registro. La página se actualiza sola cuando cambia el estado en la app.

Si hay un presupuesto pendiente, el cliente lo acepta o rechaza directamente en la página — la respuesta entra en la app por el flujo normal de presupuestos, con notificación al personal.

Bot de WhatsApp (Pro)

El cliente escribe al número de WhatsApp de la tienda y el bot responde con datos reales de la ficha — sin que nadie coja el teléfono. Funciona con el propio número de la tienda (el WhatsApp Business del móvil sigue funcionando en paralelo).

Notas honestas: la respuesta puede tardar hasta ~2 minutos (ciclo de sincronización); el alta usa la WhatsApp Business Platform oficial de Meta y la primera tienda la acompañamos nosotros.

El cliente escribe El bot responde
«¿está listo?» o cualquier texto Estado de la reparación + fecha prevista
«presupuesto» / «precio» Importe del presupuesto + cómo responder
SÍ / acepto Aprueba el presupuesto pendiente (mismo flujo del mostrador)
NO / rechazo Rechaza el presupuesto
Código de la reparación (REP-…) Estado de ese trabajo
«ayuda», audio o imagen Deriva al personal con aviso en la app

Canal SMS (gratis en el core)

El mismo asistente automático, pero por SMS — para tiendas que no quieren (o aún no tienen) la cuenta empresarial de Meta. Un móvil Android con SIM se queda en la tienda haciendo de puente: la app envía y recibe SMS a través de él, por la red móvil normal. Es gratuito y no necesita Cloud — todo ocurre en la red de la tienda.

Sin cuentas Meta, sin aprobaciones de plantillas y sin coste por mensaje — solo la tarifa del SIM de la tienda (las tarifas con SMS incluidos hacen el coste marginal cero). La configuración tarda ~5 minutos y la guía la explica paso a paso.

Diagnósticos remitidos por los clientes (Pro)

La herramienta oficinaos-diag es gratuita para cualquiera: el cliente la descarga, conecta el móvil al PC por cable y el programa lee batería, pantalla, sensores y almacenamiento.

Con el módulo activo, la tienda recibe esos diagnósticos directamente en la app (cola de pedidos), listos para convertir en reparación — el cliente solo necesita el código de la tienda. El módulo de informes IA convierte los datos técnicos en un texto sencillo para entregar al cliente.

Facturación certificada (Pro)

La app emite documentos fiscales legales directamente desde la venta o la reparación — factura-recibo cuando el cliente tiene NIF, factura simplificada cuando no lo tiene. La emisión se hace vía InvoiceXpress con la cuenta de la propia tienda: la clave API queda guardada cifrada en el PC de la tienda y la app habla directamente con InvoiceXpress — la OficinaOS Cloud solo controla el acceso al módulo, nunca ve los documentos. Solo para tiendas en Portugal.

Escaparate, busco pieza, precios, multitienda y remarketing (Pro)

Cinco módulos Pro más, todos en beta y activados en la cuenta de OficinaOS Cloud. Cada uno tiene una guía breve:

Módulo Para qué
Escaparate online Página pública con los artículos del catálogo que elijas — el cliente reserva y el pedido aparece en Pedidos
Busco pieza Pedir una pieza a otras tiendas OficinaOS o responder a sus pedidos
Precios de mercado Ver la mediana anónima de los precios de otras tiendas junto a los tuyos
Multitienda Panel con los ingresos y las reparaciones de todas tus tiendas
Remarketing por WhatsApp Mensaje automático a clientes que llevan tiempo sin volver

Problemas comunes

Las situaciones más frecuentes y cómo resolver cada una:

Síntoma Qué hacer
SmartScreen avisa al instalar «Más información» → «Ejecutar de todas formas» — es un archivo nuevo sin reputación, no un virus
«Virtualization support not detected» El instalador ofrece las dos opciones: activar en BIOS o usar el modo portátil
Windows pide reiniciar durante la instalación Reiniciar y ejecutar INSTALAR.bat otra vez — es normal al instalar Docker
El firewall de Windows pregunta Elegir «Permitir» en red privada
Página en blanco / no abre Ctrl+F5; comprobar que la dirección es http:// (no https://)
«Invalid username or password» El acceso es por usuario (admin), no por email
El PC cambió de IP y los demás dispositivos no conectan Actualizar APP_URL en .env (Docker) o borrar .env y ejecutar INSTALAR.bat de nuevo
Puerto 4000 ocupado (portátil) Cambiar PORT en app\.env
Postgres no arranca (portátil) Ver data\postgres.log; puerto 5433 ocupado → cambiarlo en data\postgresql.conf y en .env
Desinstalar todo PARAR.bat + borrar la carpeta (portátil); docker compose down -v + borrar la carpeta (Docker). Ojo: borra la base de datos — hacer copia antes

Preguntas frecuentes

Las dudas que más escuchamos:

Pregunta Respuesta
¿Necesito internet? No para el uso diario — la app corre toda en la red de la tienda. Solo para actualizaciones y módulos Pro.
¿Los datos de los clientes van a algún servidor? No por defecto — la app no tiene telemetría. Con módulos Pro, OficinaOS Cloud recibe solo los datos que necesita cada módulo (por ejemplo, páginas del portal, mensajes, reservas y diagnósticos enviados), nunca costes internos ni notas internas. El detalle está en la política de privacidad de la Cloud (cloud.oficinaos.app/privacy).
¿Funciona en el móvil? Sí — en el Wi-Fi de la tienda cualquier aparato lo abre en el navegador; fuera de la tienda con el acceso remoto (Cloudflare Tunnel).
¿El cliente tiene que instalar algo? No — el portal abre como un enlace en su navegador; el bot responde en su WhatsApp normal.
¿Cuánto cuesta? La app completa es gratuita (licencia MIT). Los módulos Pro son suscripciones opcionales, en beta.
¿Varias tiendas / sucursales? Cada tienda tiene su propia instalación. Con el módulo Pro Multitienda, el dueño ve los ingresos y las reparaciones de todas las tiendas en un solo panel de OficinaOS Cloud.
¿Y si el PC se estropea? Copias de seguridad diarias automáticas; restaurar en otro PC es copiar la copia y volver a ejecutar el instalador.
¿Mac o Linux? Sí, con Docker manual — el instalador automático es solo Windows.
¿Puedo importar datos de otro sistema? Clientes y catálogo por CSV; contáctanos para migraciones asistidas.

Documentación completa

Esta guía cubre lo esencial. El repositorio en GitHub tiene la documentación técnica completa — instalación detallada, acceso remoto, móviles, copias con réplica externa y el funcionamiento interno del paquete portátil: