DOC. NIO-INFInfraestructura técnica

La infraestructura
que no se nota.

Porque cuando funciona, no tiene que notarse. Este es el stack que opera detrás de cada implementación, cada conector y cada servicio que entregamos.

  • Python · Rust · JavaScript · SQL
  • Docker · PostgreSQL · Caddy · Linux
  • nioClock · HW-01 en desarrollo
SEC. 01Stack técnico

Lenguajes

  • PythonOdoo core, módulos, scripts de migración
  • RustNioBerp, firmware nioClock, herramientas de sistema
  • JavaScriptOWL (Odoo Web Library), QWeb, automatizaciones
  • SQLPostgreSQL directo, diagnóstico de esquema, migraciones

Plataformas y runtime

  • Odoo ERPCommunity y Enterprise, v10 a v19
  • DockerContenedores de instancia, redes aisladas, compose
  • PostgreSQLMotor de base de datos único, sin capas ORM adicionales
  • CaddyReverse proxy con TLS automático, configuración declarativa
  • LinuxDebian/Ubuntu en producción, sin dependencias de vendor

CI/CD y operaciones

  • GitHub ActionsPipeline propio: build → test → security → deploy
  • TrivyEscaneo de vulnerabilidades de imágenes y dependencias
  • Respaldo validadoBackup diario con verificación de integridad automatizada
  • Monitoreo continuoAlertas de disponibilidad, uso de recursos y errores de app

Integraciones y protocolos

  • REST / JSON-RPC / XML-RPCOdoo RPC, APIs de terceros, webhooks bidireccionales
  • OAuth 2.0 / JWTAutenticación segura en integraciones externas
  • WhatsApp Business APIAPI oficial (no bots genéricos), integración con CRM de Odoo
  • SAT GuatemalaFEL/DTE, webservices de la SAT, certificadores autorizados
SEC. 02Arquitectura de hosting

Hosting propio.
Sin caja negra.

Cada instancia de cliente corre en su propio contenedor Docker con red aislada. PostgreSQL en instancia dedicada. Caddy gestiona el TLS automáticamente. El respaldo se ejecuta diariamente y la integridad se verifica antes de marcar el ciclo como exitoso — no asumimos que el backup funcionó, lo verificamos.

El pipeline de CI/CD en GitHub Actions ejecuta build, tests de integración, escaneo de vulnerabilidades con Trivy y deploy automático solo si todos los pasos son verdes. No existe push manual a producción.

ARCH-DIAGRAM · REV ANIO-INF-01
01
GitHub Actions

02
└─ build

03
└─ test

04
└─ trivy scan

05
└─ deploy ✓

06

07
Caddy TLS auto

08
└─ Docker · red aislada

09
└─ Odoo instance

10
└─ PostgreSQL

11

12
Backup diario · integridad OK
HW-01Hardware propio · nioClockDesarrollo avanzado

nioClock.

Terminal de asistencia de diseño modular desarrollado íntegramente en NioSystems. Construido sobre ESP32-C3/S6, soporta identificación biométrica y RFID en la misma unidad. El firmware usa una arquitectura de dos etapas que separa el bootloader del sistema de aplicación, permitiendo actualización OTA sin intervención manual ni riesgo de ladrillo.

El objetivo de nioClock no es reemplazar terminales genéricas — es ser la terminal diseñada específicamente para empresas que ya corren sobre Odoo, con integración nativa sin middleware extra y sin dependencia de servicios en la nube de terceros que puedan discontinuarse.

MicrocontroladorESP32-C3 / S6 (seleccionable por configuración)
IdentificaciónBiométrico (huella) + RFID (13.56 MHz)
FirmwareArquitectura dos etapas · OTA modular
IntegraciónOdoo Attendance nativo · sin middleware
Dependencias cloudNinguna de terceros · servidor propio
EstadoDesarrollo avanzado · pruebas de campo en curso
LT-01Investigación de largo plazo
NIOBERP · RustNo comercial · I+D

NioBerp

Motor ERP escrito en Rust. Investigación activa, sin objetivo comercial en el corto plazo. El propósito es entender en profundidad los cuellos de botella de los ERP modernos — concurrencia, acceso a datos, renderizado de UI — desde el nivel del lenguaje. Lo que aprendemos alimenta las decisiones de arquitectura en los proyectos de producción.

No es un producto competidor de Odoo. Es un laboratorio.

SIGUIENTE PASOHablemos de infraestructura

¿Necesita infraestructura que no explique cada semana?

Diagnóstico de su configuración actual sin costo. Le decimos qué está bien y qué puede fallar antes de que falle.