En producción · Instagram DM · CDMX · Sistema completo In production · Instagram DM · CDMX · Full system

Atico
Film Lab.
Atico
Film Lab.

Un laboratorio de revelado analógico en CDMX recibía pedidos por Instagram DM — a mano, sin sistema. Construí el bot, el backend y el dashboard que su equipo usa para operar hoy.

An analog film lab in Mexico City was taking orders over Instagram DM — by hand, no system. I built the bot, the backend, and the dashboard their team uses to operate today.

~$50K+
MXN procesados
MXN processed
Feb – Mar 2026 (en curso)
Feb – Mar 2026 (ongoing)
~30+
Pedidos procesados
Orders processed
~150+
Rollos revelados
Rolls developed
v3.25
Versión actual
Current version
Activo · 2026
Active · 2026

Operaciones manuales
en una bandeja de DMs.

Manual operations
inside a DM inbox.

Atico recibía pedidos por Instagram. El equipo respondía a mano — sin base de datos, sin historial, sin forma de rastrear qué pasaba con cada rollo.

Atico was taking orders over Instagram DM. The team replied by hand — no database, no history, no way to track what happened to each roll.

01
Sin trazabilidad
No traceability

Cada pedido vivía en la memoria del equipo o en notas dispersas. Errores de cotización, confirmaciones perdidas, clientes sin respuesta.

Every order lived in the team's memory or scattered notes. Quoting errors, lost confirmations, clients left waiting.

02
Sin visibilidad financiera
No financial visibility

¿Cuánto ingresaron esta semana? ¿Cuántos rollos se procesaron? Nadie lo sabía sin revisar manualmente cada conversación.

How much came in this week? How many rolls were processed? Nobody knew without manually reviewing every conversation.

03
Tiempo del equipo desperdiciado
Team time wasted

Responder preguntas repetidas, cotizar manualmente, confirmar pagos por DM. Todo tiempo que podía dedicarse al trabajo real: revelar película.

Answering the same questions, quoting manually, confirming payments over DM. All time that could go toward the actual work: developing film.

04
Canal: Instagram DM
Channel: Instagram DM

Instagram Graph API tiene ventanas de 24h, restricciones de mensajería, webhooks propios. No es WhatsApp — hay que trabajar con sus reglas.

Instagram Graph API has 24h windows, messaging restrictions, its own webhooks. It's not WhatsApp — you have to work with its rules.

Tres capas,
un sistema integrado.

Three layers,
one integrated system.

Bot de IA para capturar pedidos, backend con lógica de negocio real, y un dashboard que el equipo de Atico abre cada mañana.

AI bot to capture orders, backend with real business logic, and a dashboard the Atico team opens every morning.

01 — Bot
Agente conversacional bilingüe
Bilingual conversational agent

GPT-4o-mini con prompt de sistema de negocio real. Detecta intención, maneja edge cases, cotiza rollos, genera órdenes, confirma pagos. Funciona en español e inglés sin intervención humana en el flujo estándar.

GPT-4o-mini with a real business system prompt. Detects intent, handles edge cases, quotes rolls, generates orders, confirms payments. Works in Spanish and English with no human intervention in the standard flow.

GPT-4o-mini Instagram Graph API State machine
02 — Backend
API con lógica de negocio
API with business logic

Node.js + Express desplegado en Railway. Webhooks de Instagram, máquinas de estado por conversación, integraciones con Supabase (PostgreSQL), Sentry para errores. Test suite propio para el extractor de IA.

Node.js + Express deployed on Railway. Instagram webhooks, per-conversation state machines, Supabase (PostgreSQL) integration, Sentry for errors. Custom test suite for the AI extractor.

Node.js Express Supabase Sentry Railway
03 — Dashboard
Panel de operaciones y finanzas
Operations and finance panel

Interfaz web que el equipo de Atico abre todos los días. Kanban de pedidos en tiempo real, historial de conversaciones, KPIs financieros (ingresos, rollos, pedidos) con gráficas por período. Búsqueda global con Cmd+K.

Web interface the Atico team opens every day. Real-time order kanban, conversation history, financial KPIs (revenue, rolls, orders) with charts by period. Global search with Cmd+K.

Vanilla JS Supabase Realtime Vercel

Cada parte,
desde cero.

Every part,
from scratch.

Bot de pedidos
Order bot
Flujo completo de orden en Instagram DM
Full order flow over Instagram DM

El bot recibe el primer mensaje, detecta la intención (revelar, escanear, enmarcar), cotiza según el catálogo real de Atico, confirma los detalles del pedido y guía el pago. Maneja el canal de Instagram con sus restricciones reales — ventana de 24h, tipos de mensaje permitidos, reintentos con backoff.

The bot receives the first message, detects intent (develop, scan, frame), quotes from Atico's real catalog, confirms order details, and guides payment. Handles the Instagram channel with its real constraints — 24h window, allowed message types, retries with backoff.

Bilingüe (ES/EN) Bilingual (ES/EN) Detección de intención Intent detection Cotización automática Automatic quoting Edge cases manejados Edge cases handled
Backend
Backend
Máquina de estados + persistencia + webhooks
State machine + persistence + webhooks

Cada conversación tiene su estado (nuevo, cotizado, confirmado, pagado, en proceso, listo, enviado). El backend maneja los webhooks de Instagram, persiste en Supabase, y sirve la API del dashboard. Suite de tests automatizados para el extractor de IA.

Every conversation has its state (new, quoted, confirmed, paid, in-process, ready, shipped). The backend handles Instagram webhooks, persists to Supabase, and serves the dashboard API. Automated test suite for the AI extractor.

Máquina de estados por conv. Per-conv. state machine PostgreSQL via Supabase PostgreSQL via Supabase Sentry monitoring Sentry monitoring Test suite IA AI test suite
Dashboard
Dashboard
Interfaz de operaciones que el equipo usa todos los días
Operations interface the team uses every day

Kanban de pedidos con drag-and-drop, historial completo de conversaciones, panel de detalle por pedido, módulo de finanzas con KPIs y gráficas de ingresos por semana/mes/3M/6M. Búsqueda global (Cmd+K) sobre pedidos, conversaciones y datos financieros. Dark mode. Responsive.

Drag-and-drop order kanban, full conversation history, per-order detail panel, finance module with KPIs and revenue charts by week/month/3M/6M. Global search (Cmd+K) across orders, conversations and financial data. Dark mode. Responsive.

Kanban en tiempo real Real-time kanban Finanzas con gráficas Finance with charts Búsqueda global Cmd+K Global search Cmd+K Dark mode Dark mode
Docs internas
Internal docs
Manual de operaciones + página de novedades
Operations manual + changelog page

Página de operaciones con todo lo que el equipo necesita saber para usar el sistema. Página de novedades con cada actualización en lenguaje claro, sin jerga técnica — para que Atico sepa exactamente qué cambió en cada versión.

Operations page with everything the team needs to know to use the system. Changelog page with every update in plain language, no tech jargon — so Atico knows exactly what changed in each version.

Manual de operaciones Operations manual Changelog en lenguaje llano Plain-language changelog basicAuth protegido basicAuth protected

En producción
desde marzo 2026.

In production
since March 2026.

~$50K+
MXN procesados (Feb – Mar, en curso)
MXN processed (Feb – Mar, ongoing)
~150+
Rollos revelados
Rolls developed
~30+
Pedidos procesados por el bot
Orders processed by the bot
v3.25
Versión actual · +25 iteraciones
Current version · 25+ iterations

Métricas de febrero – marzo 2026. El proyecto arrancó a mediados de febrero y entró en producción completa a mediados de marzo. Números en crecimiento conforme el equipo migra clientes históricos.

February – March 2026 metrics. The project kicked off mid-February and went fully live mid-March. Numbers growing as the team migrates historical clients.

Tecnologías
usadas.

Technologies
used.

Node.js Express GPT-4o-mini Instagram Graph API Supabase PostgreSQL Railway Vercel Sentry Vanilla JS GitHub Actions