El problema: el lunes se va en armar el reporte
En casi toda marca de ecommerce que hemos auditado pasa lo mismo: Meta dice una cosa, Shopify otra, Google otra, y alguien del equipo pierde la mañana del lunes copiando celdas a un sheet para "cuadrar" — con suerte. La decisión importante (¿escalo, pauso, cambio creativo?) se toma el martes, con datos del viernes.
La respuesta típica es rentar un BI (Looker Studio, Power BI, Triple Whale). Nuestro problema con eso: los conectores fallan justo donde importa — la reconciliación fina entre plataformas — y agregan una renta mensual de por vida para un problema que se resuelve con tres scripts.
La arquitectura: tres piezas, cero renta
Todo el sistema son tres piezas que ya conoces:
- Fetchers en Python — un script por fuente (Meta Graph API, Shopify Admin, Amazon SP-API, Google Ads). Cada uno baja sus números crudos y los deja en JSON.
- Un HTML estático con Chart.js — el dashboard es un solo archivo que lee esos JSON. Sin backend, sin base de datos, sin login que mantener (o con password si la marca lo pide).
- GitHub Actions como reloj — un workflow con cron que corre los fetchers y redeploya a Vercel. Tres veces al día, en horario CDMX.
# .github/workflows/dashboard.yml — el corazón del sistema
on:
schedule: # 07:00 · 13:00 · 19:00 CDMX
- cron: "0 13,19,1 * * *"
jobs:
update:
steps:
- run: python fetch_meta.py && python fetch_shopify.py
- run: npx vercel deploy --prod
Los secretos (tokens de API) viven en GitHub Secrets — nunca en el código. El repo es privado. Y como el deploy sale del Action, el dashboard se actualiza aunque la laptop de todos esté apagada.
La regla de oro: reconciliar al centavo
Un dashboard que "más o menos cuadra" es peor que no tener dashboard: nadie confía en él y todos vuelven al sheet. Por eso cada corrida valida que lo que reporta Meta como ingreso atribuido y lo que registra Shopify como ventas pagadas cierren al centavo — y si la diferencia (Δ) se sale de rango, manda una alerta push en lugar de publicar números rotos.
En producción: para una marca premium de retail, el dashboard reconcilia 4 fuentes (Amazon MX, Shopify, Meta y Google) en una sola vista semanal, con Δ < $0.01. La junta del lunes dejó de ser sobre "de dónde salió este número" y pasó a ser sobre qué hacer con él.
Por qué no Looker (ni Triple Whale)
- Costo: $0/mes de plataforma vs $100–$500 USD/mes de por vida. El sistema se paga solo el primer mes.
- Propiedad: el código y los datos son de la marca. Si mañana dejamos de trabajar juntos, el dashboard sigue corriendo.
- Flexibilidad: ¿la marca vende también en tienda física y quiere cruzar digital ↔ físico? Es un fetcher más, no un ticket de soporte.
Qué necesitas para replicarlo
Acceso de API a tus plataformas (solo lectura), un repo privado de GitHub y una cuenta de Vercel. Nada más. Si tu equipo no programa, esto es literalmente lo que construimos en la capacidad de Data & Dashboards — dashboard corriendo desde la semana 1.
Dos proyectos por trimestre
Empieza por el número que no tienes.
Tres semanas, acceso de solo lectura, sin costo, y un alcance escrito que te quedas, sigas o no.
SIGUIENTE EN EL BLOG → TU ROAS REAL NO VIVE EN META: VIVE EN LA RECONCILIACIÓN CON SHOPIFY