Si llevas tus facturas en Google Sheets, Make.com puede revisar la hoja cada mañana y enviar un recordatorio breve desde tu cuenta de Gmail cuando una factura haya vencido. Aquí tienes los módulos, los filtros, la programación y los fallos más habituales. Al final encontrarás una plantilla si prefieres importar el escenario.
Los nombres de módulos, menús, columnas y estados se mantienen en inglés para que coincidan con la configuración descrita.
Qué necesitas
- Una cuenta de Make.com. El plan gratuito sirve para este escenario diario si tu volumen de envíos cabe en sus límites. Cuando se publicó el original, incluía 1.000 créditos al mes, dos escenarios activos y un intervalo mínimo de 15 minutos entre ejecuciones programadas. Consulta los límites actuales en make.com/pricing. ¿Aún no tienes cuenta? Crea una cuenta gratuita de Make (enlace de afiliado).
- Una cuenta de Google con Google Sheets y Gmail. Puede ser una cuenta personal de Gmail o de Google Workspace.
- Una lista con una fila por factura.
Cómo funciona la automatización
Un escenario se ejecuta una vez al día. Lee la hoja, selecciona las facturas sin pagar para las que ya toca enviar un recordatorio, registra el intento en la fila y después envía el mensaje adecuado:
Programación diaria → Google Sheets: Search Rows → filtro → Google Sheets: Update a Row → Router → Gmail: Send an Email
Las tres etapas son un aviso amable, uno más firme y un último recordatorio.
Paso 1: Prepara la hoja de facturas
Crea la hoja directamente en Google Sheets, en lugar de limitarte a subir un archivo .xlsx. Llama Invoices a la pestaña y añade estos encabezados en la primera fila:
| Columna | Encabezado | Contenido |
|---|---|---|
| A | Invoice number | Número de factura |
| B | Client name | Nombre del cliente |
| C | Client email | Correo del cliente |
| D | Amount | Importe numérico, por ejemplo 1250, sin símbolo de moneda |
| E | Currency | Moneda |
| F | Due date | Fecha de vencimiento guardada como fecha real |
| G | Payment link | Enlace de pago, opcional |
| H | Status | Estado de pago |
| I | Reminders sent | Número de recordatorios registrados; empieza con 0 |
| J | Last sent at | Fecha del último intento de envío; déjala vacía al principio |
El escenario actualizará I y J. Usa el mismo formato para F y J: Format → Number → Custom date and time, con el patrón YYYY-MM-DD. Al leer la hoja desde Make, selecciona Formatted value en Value render option para que las fórmulas reciban las fechas con ese formato visible.
Convierte Status en una lista desplegable mediante Data → Data validation. Añade Unpaid, Paid, Paused y Disputed: pendiente de pago, pagada, en pausa y en disputa. No traduzcas los valores guardados, ya que el filtro compara el texto exacto. Un valor como unpaid, con un espacio final, no coincidiría.
Paso 2: Busca las facturas pendientes
En Make, crea un escenario y añade Google Sheets → Search Rows. Conecta tu cuenta de Google, elige el archivo y la pestaña Invoices y establece Table contains headers en Yes. En el filtro del módulo, configura Status (H) Equal to Unpaid.
Search Rows devuelve un bundle por cada fila que coincide, con su número de fila. Lo necesitarás en el paso 4. Puedes empezar este escenario programado con el módulo de búsqueda, sin añadir un disparador aparte.
Indica un Limit explícito, por ejemplo 500, para que un límite demasiado bajo no deje resultados fuera. La búsqueda consume un crédito por ejecución, incluso si ese día no corresponde enviar ningún recordatorio.
Paso 3: Filtra los recordatorios que ya corresponden
Haz clic en la conexión después de Search Rows y selecciona Set up a filter. Añade estas tres condiciones unidas con AND:
- Menos de tres recordatorios registrados: Compara
{{ifempty(1.`8`; 0)}}con Numeric operators: Less than3. - Ha llegado la fecha del recordatorio: Para avisos a los 3, 7 y 14 días del vencimiento, utiliza:
Compara el resultado mediante el operador de fecha Earlier than con{{addDays(parseDate(1.`5`; "YYYY-MM-DD"); switch(trim(toString(ifempty(1.`8`; 0))); "0"; 3; "1"; 7; 14))}}{{now}}. La partetrim(toString(…))convierte el valor de I en texto para compararlo como texto. Así, un"1"no acaba por error en la opción de 14 días por una diferencia de tipos. - No se ha intentado enviar hoy: Compara
Last sent at, es decir,1.`9`, mediante Text operators: Not equal to con{{formatDate(now; "YYYY-MM-DD")}}.
En estas fórmulas, 1.`5` significa módulo 1, columna F; las columnas se cuentan desde 0. Selecciona los campos en el panel de mapeo, en lugar de escribir las referencias a mano. Si recibes las fechas con otro formato, adapta "YYYY-MM-DD". Los filtros y los routers no consumen créditos.
Paso 4: Registra el recordatorio antes de enviarlo
Añade Google Sheets → Update a Row y mapea el número de fila de Search Rows. En Reminders sent (I), introduce:
{{ifempty(1.`8`; 0) + 1}}
En Last sent at (J), introduce:
{{formatDate(now; "YYYY-MM-DD")}}
¿Por qué registrar antes? Si Gmail envía el mensaje y luego falla la actualización, la fila seguirá pareciendo pendiente en la siguiente ejecución. Eso puede provocar un duplicado. Registrar primero cambia el riesgo: puede quedar anotado un mensaje que no llegó a enviarse. Por eso necesitas identificar y revisar los fallos.
Añade una columna K llamada Send error. Haz clic derecho en cada módulo de Gmail y selecciona Add error handler. Crea una ruta de error que escriba NOT sent en K para esa factura, sin sobrescribir el contador ni la fecha. Termina la ruta con Skip para continuar con las demás facturas. Así verás qué recordatorio no se envió y podrás reenviarlo.
Paso 5: Elige el mensaje con un router
Añade Flow Control → Router con tres rutas. Filtra cada ruta según el valor original de Reminders sent que devuelve Search Rows, antes de actualizarlo: 0 para el mensaje amable, 1 para el más firme y 2 para el último aviso.
En cada ruta, añade Gmail → Send an Email. Mapea Client email (C) al campo To. Incluye el número de factura, el importe y el vencimiento en el asunto y el cuerpo.
Mantén un tono educado. Por ejemplo: «Si ya has realizado el pago, muchas gracias. Puedes ignorar este mensaje». No incluyas amenazas ni consecuencias inventadas en el último aviso. Si mencionas recargos por retraso, comprueba que correspondan a tu contrato y a las reglas aplicables.
Durante las pruebas, escribe tu propia dirección en To y añade la dirección prevista del cliente al asunto. Así sabrás de qué fila procede cada mensaje. Vuelve a mapear el correo del cliente solo cuando actives los envíos reales.
Paso 6: Haz una prueba y programa la ejecución diaria
Mantén desactivada la programación automática. Añade filas ficticias con direcciones @example.com y fechas de vencimiento pasadas. To debe seguir apuntando a tu correo. Pulsa Run once y comprueba tres cosas: que se procesen las filas correctas, que se actualicen I y J y que una segunda prueba el mismo día no envíe más mensajes.
Abre la programación desde la barra del escenario, donde por defecto aparece Every 15 minutes. Elige Daily o Weekdays (Mon-Fri) y una hora, por ejemplo las 09:00. Se usa la zona horaria de tu organización de Make. Guarda y activa el escenario.
En una ejecución correcta, este escenario básico consume un crédito por búsqueda y dos por recordatorio: actualización y Gmail. Si registras cada correo en otra pestaña, son tres por recordatorio. En 30 días, calcula unos 30 créditos más 40 para 20 recordatorios, o más 60 si añades el registro. Los errores y reintentos pueden aumentar el consumo. Una búsqueda cada 15 minutos consumiría por sí sola unos 2.880 créditos en 30 días, por encima de los 1.000 indicados para el plan gratuito.
Errores habituales
- Las fechas llegan con otro formato de texto. La condición de fecha puede fallar o impedir la ejecución. Abre la burbuja de salida de
Search Rowsy mira el valor recibido. - Gmail necesita una nueva autorización. Las conexiones personales de Gmail en Make requieren volver a autorizarse aproximadamente cada seis meses. Consulta la documentación de Gmail en Make. También se aplican los límites diarios de envío de Gmail.
- El escenario no sabe que el cliente ha pagado. Debes actualizar
Status. Este flujo no consulta el banco, el proveedor de pagos ni las respuestas del cliente.
Si prefieres importar el escenario
Nuestra plantilla Polite Invoice Reminder cuesta 19 USD e incluye un blueprint de Make.com terminado y probado. Añade:
- Una pestaña
Settingscon los días de recordatorio, 3, 7 y 14 por defecto, el nombre del remitente y los datos de pago. Test modeactivado por defecto: todos los mensajes llegan a tu correo y muestran el cliente previsto en el asunto.- Estados de parada
Paid,Paused,DisputedyPartial, con una secuencia que termina después del último aviso. - Registro antes del envío, marca
NOT sent, control de duplicados del mismo día y pestañaLog. - Hojas de ejemplo y vacías, tres mensajes editables y una guía de nueve páginas. Reserva unos 30 a 45 minutos para configurarlo.
Si tu programa de facturación ya envía recordatorios, utiliza esa función. Si solo quieres una lista diaria para ti, el resumen gratuito de facturas vencidas (en inglés) envía el correo únicamente a tu dirección.