Resumen del Proyecto
Este proyecto automatiza la ingesta, normalización y registro de transacciones de tarjetas de crédito en Notion, utilizando Zapier con Google Drive/Sheets. Dado que los bancos argentinos no ofrecen APIs abiertas, el sistema comienza con una exportación manual del banco (CSV/XLS/XLSX). El pipeline convierte el archivo a Google Sheets, recorre cada transacción, limpia los datos (vendedor, monto, moneda), aplica el devengo al primer día del mes siguiente (las tarjetas de crédito impactan el flujo de caja del mes siguiente), deduplica contra Notion y hace upsert de registros estructurados. También realiza limpieza del archivo fuente.
Problema a Resolver
Las tarjetas bancarias argentinas generalmente no se conectan vía API, forzando una exportación manual + contabilidad manual. Puntos de dolor comunes:
- Convertir CSV/XLS a un formato utilizable para procesamiento
- Normalizar campos desordenados (signos/comas en montos, nombres de vendedores)
- Aplicar contabilidad de devengo (consumo de tarjeta de crédito pagado el mes siguiente)
- Evitar duplicados al reprocesar archivos o filas
- Mantener vendedores y monedas consistentes en un sistema de finanzas personales (Notion)
Estos pasos son repetitivos y propensos a errores, y distorsionan el reporte de flujo de caja si el devengo no se maneja correctamente.
Implementación
Arquitectura:
- Zapier orquesta el flujo de trabajo de principio a fin
- Google Drive aloja las cargas manuales; Google Sheets contiene las filas normalizadas
- Utilidades de Zapier (Formatter, Delay, Looping, Paths) transforman y enrutan datos
- Notion sirve como sistema de registro (DB de Transacciones + DB de Vendedores)
Componentes Clave:
- File Conversion (Drive → Sheets): Convierte el extracto cargado a una Google Sheet nativa
- Worksheet Discovery & Read: Encuentra la pestaña correcta y lee todas las filas
- Housekeeping: Elimina la carga original; Delay breve para evitar condiciones de carrera
- Accrual Date Logic: Calcula el primer día del mes siguiente (devengamiento)
- Row Loop: Itera sobre cada transacción
- Vendor Normalization: Busca/relaciona con Notion Vendors
- Amount & Currency Handling: Limpia valores numéricos; bifurca en rutas ARS (Pesos) vs USD
- De-duplication & Upsert: Busca la transacción en Notion; actualiza si la encuentra, crea si no
- Result: Entradas limpias, deduplicadas y alineadas por devengo en Notion
Opciones de Ejecución:
- Manual: soltar una exportación bancaria en la carpeta de Drive para activar
- On-demand: habilitar temporalmente el Zap y ejecutar una prueba con un archivo de muestra
- Cadencia programada: recordatorio opcional para exportar y soltar el archivo mensualmente (fuera del Zap)
Flujo de alto nivel
- Upload to Google Drive → Convert File to Google Sheets(Asegura una tabla nativa de Sheets para pasos posteriores.)
- Find Worksheet → Get All Rows(Lee columnas como
Date,Description,Vendor,Amount,Currency,Reference.) - Delete original upload (Drive) → Delay 1 minute(Higiene de almacenamiento; permite que Google indexe la nueva Sheet.)
- Formatter — Get next Month → Generate Accrual Date (First of Next Month)(Construye una fecha de devengo consistente como
YYYY-MM-01.) - **Loop through each Row (Looping by Zapier)**Para cada fila:
- Find Vendor (Notion) para normalizar la relación
- Format Transaction Amount (Formatter) a un número limpio
- Paths — Split:
- Existing Vendor path (si la búsqueda de vendedor tiene éxito)
- Currency paths: PESOS (ARS) vs USD (reglas, campos, etiquetas)
- De-duplication in Notion (Find/Query por combinación de referencia/monto/fecha)
- If found → Update Page
- If not found → Create Page Las propiedades incluyen:
Date,Accrual Date (primer día del mes siguiente),Amount,Currency,Vendor (relation),Description,Reference.
Servicios principales utilizados
- Plataforma Zapier:
- Google Drive: presencia de archivos, conversión, eliminación
- Google Sheets: descubrimiento de hojas de cálculo, lectura de filas
- Formatter by Zapier: fechas (mes siguiente, primer día), números (normalización de montos)
- Delay by Zapier: buffer de indexación
- Looping by Zapier: iteración por transacción
- Paths: lógica de bifurcación (Existing Vendor; ARS vs USD)
- Notion:
- Find en DB de Vendedores y DB de Transacciones (deduplicación)
- Create/Update Page con propiedades normalizadas y relaciones
Modelo de datos (ejemplo)
Google Sheet (entrada)
Date(texto/fecha)Description(texto)Vendor(texto)Amount(cadena/número; puede ser negativo o con separadores locales)Currency(ARS/USD)Reference(identificador único-ish)
Notion — DB de Transacciones
Date(fecha)Accrual Date(fecha → 1° del mes siguiente)Amount(número)Currency(select: ARS / USD)Vendor(relation → DB de Vendedores)Description(texto enriquecido)Reference(texto, usado en deduplicación)- (Opcional)
Category,Account,Imported From
Notion — DB de Vendedores
Name(título)- (Opcional)
Default Category,Tags,Currency Rules
Detalles de exportación y justificación contable
- **¿Por qué devengo al mes siguiente?**Las compras con tarjeta de crédito afectan el flujo de caja del mes siguiente (cuando se paga el resumen). Fijar una Fecha de Devengo = 1° del mes siguiente alinea el reporte con el impacto real en efectivo.
- **División por moneda (Argentina)**ARS y USD siguen campos/etiquetas de reporte diferentes; la bifurcación asegura montos correctos, notas y manejo opcional de FX.
Alcances / acceso (conexiones típicas de Zap)
- Conexiones de Google Drive/Sheets autorizadas dentro de Zapier
- Integración de Notion con acceso a las bases de datos de Vendedores y Transacciones
Resiliencia e Idempotencia
- De-duplication: «Find Transaction» antes de escribir previene duplicados en reintentos o recargas
- Delay: buffer de 1 minuto para evitar lecturas parciales justo después de la conversión
- File hygiene: la carga fuente se elimina post-conversión para evitar reprocesamiento
Características Clave
- Funciona alrededor de la restricción de sin-API con un punto de entrada robusto basado en archivos
- Contabilidad de devengo integrada (primer día del mes siguiente)
- Normalización de vendedores vía relaciones de Notion
- Bifurcación consciente de moneda (ARS vs USD)
- Patrón de upsert idempotente (find → update/create)
- Limpieza y protecciones (delay, eliminar originales)
Resultados Esperados
Ganancias de Eficiencia
- Reduce la contabilidad mensual de ~30–45 minutos de limpieza manual a unos pocos minutos (solo la exportación y carga)
- Elimina el formateo repetitivo de campos y la reescritura de vendedores
- Minimiza el retrabajo por entradas duplicadas
Consistencia
- Registros de transacciones estandarizados y relaciones de vendedores en Notion
- Lógica de devengo uniforme en todas las transacciones de tarjeta de crédito
- Manejo consistente de ARS vs USD
Confiabilidad
- Pipeline predecible con salvaguardas de find-then-upsert
- Error humano reducido (signos incorrectos, fechas incorrectas, entradas dobles)
- Almacenamiento ordenado y menos «archivos misteriosos» gracias a la limpieza
Escalabilidad
- Fácil de extender con ramas adicionales (ej., otras monedas, cuentas)
- Agregar reglas de categorización, anotaciones de FX o notificaciones (Slack/Email)
- Intercambiar destinos (ej., Airtable) con cambios mínimos de lógica en Zapier
Deja un comentario