Sincronización Bidireccional WooCommerce
Integración completa que sincroniza pedidos de la web oficial con la intranet, creando automáticamente expedientes, asignando permisos y activando cuentas de usuario sin intervención manual.
Operaciones e integraciones
Sistema integral de gestión de trámites arquitectónicos con sincronización bidireccional WooCommerce, gestión de archivos en AWS S3 y comunicación en tiempo real.

Vista demo saneada a partir del sistema real; ningún dato de cliente se publica.
El sistema
ArchiTech Intranet es un sistema completo de gestión desarrollado para ArchiTech Europe S.L., un despacho de arquitectura en Rubí, Barcelona. La plataforma digitaliza y automatiza la gestión integral de trámites arquitectónicos, desde la captación de pedidos hasta la entrega final.
El sistema integra una sincronización bidireccional con WooCommerce que permite a los clientes realizar pedidos en la web oficial (architech.es) y automáticamente crear expedientes en la intranet, asignando permisos, activando cuentas de usuario y notificando al equipo en tiempo real.
Una de las características técnicas más destacadas es la sincronización automática de archivos desde el directorio local de trabajo de los arquitectos hacia AWS S3, con detección de cambios, gestión de versiones y replicación en la nube. Esto garantiza que todos los documentos técnicos estén respaldados y accesibles desde cualquier lugar.
La arquitectura combina un frontend Angular con un backend NestJS, PostgreSQL con Prisma ORM, WebSockets para comunicación en tiempo real, y servicios AWS para almacenamiento escalable. El sistema gestiona roles diferenciados (ADMIN, RIDER/TÉCNICO, CLIENT) con permisos granulares y flujos de trabajo automatizados.
Decisiones técnicas
Desarrollé un sistema de webhooks con NestJS que escucha eventos de WooCommerce, procesa pedidos en tiempo real, crea expedientes automáticamente, asigna permisos según tipo de servicio y activa cuentas de usuario. Implementé mecanismos de retry, logging detallado y reconciliación de datos para garantizar consistencia.
Implementé un sistema de sincronización con detección de cambios basado en hashes de archivos, metadata de modificación y seguimiento de estados. El sistema detecta nuevos archivos, modificaciones y eliminaciones, replica la estructura de directorios en S3 y mantiene un registro de todas las operaciones para auditoría.
Arquitectura modular con Angular para el frontend (componentes standalone, lazy loading), NestJS con arquitectura por dominios para el backend, PostgreSQL con Prisma para gestión de datos, BullMQ para colas de trabajo pesadas, Socket.io para WebSockets y AWS S3 para almacenamiento escalable. Implementé guards de autenticación, decoradores de roles y políticas de acceso a nivel de controlador.
Dentro del producto
Integración completa que sincroniza pedidos de la web oficial con la intranet, creando automáticamente expedientes, asignando permisos y activando cuentas de usuario sin intervención manual.
Sistema que detecta cambios en el directorio local de trabajo, sincroniza archivos con AWS S3, mantiene versiones y garantiza respaldos automáticos de toda la documentación técnica.
Sistema de asignación y seguimiento de órdenes de trabajo a técnicos (riders) con estados, ventanas de visita, geolocalización y notificaciones en tiempo real.
Sistema de mensajería instantánea con Socket.io que permite comunicación fluida entre administradores, técnicos y clientes, con soporte para archivos adjuntos.
Máquina de estados completa para expedientes (TO_START, SCHEDULED, IN_PROGRESS, DONE, etc.) con transiciones automatizadas y reglas de negocio.
Calendario integrado para programar visitas técnicas con ventanas horarias, geolocalización de propiedades y reglas de negocio (mínimo 3 días laborables para cambios).
Control de visibilidad de documentos por cliente, organización por expedientes, subida múltiple de archivos y sincronización automática con AWS S3.
Gestión granular de permisos con roles diferenciados (ADMIN, RIDER, CLIENT, MASTER, CONTABILIDAD, EQUIPO, TECNICO) y vistas adaptadas a cada tipo de usuario.
Tecnologías Utilizadas