Tutorial · 12 min de lectura

Voucher de WhatsApp → fila en Sheets,
sin tu intervención.

Guía completa para implementar el flujo más pedido por pymes chilenas: el cliente te manda foto del comprobante de transferencia por WhatsApp y aparece registrado automáticamente en tu Google Sheet con monto, banco, fecha y RUT.

Publicado: 22 de mayo de 2026 · Última actualización: 22 de mayo de 2026 · Por Agencia Atiko

¿Por qué automatizar esto?

Si tu pyme cobra por transferencia bancaria (la mayoría de pymes en Chile lo hace), recibes vouchers por WhatsApp todo el día. Anotar cada uno a mano en Excel o Google Sheets te toma 2-4 minutos por voucher. Con 30 vouchers al día son 2 horas diarias solo registrando. Y se te olvidan algunos, se duplican otros, hay errores de tipeo.

El flujo automatizado lo hace en 15 segundos sin tu intervención y con precisión cercana al 98%.

Qué vamos a construir

  1. Cliente envía foto del voucher a un WhatsApp dedicado
  2. n8n recibe el webhook con la imagen
  3. Claude Vision (o GPT-4 Vision) extrae los datos del voucher
  4. Google Sheets se actualiza automáticamente
  5. El cliente recibe confirmación instantánea

Stack tecnológico y costos reales

ComponentePara qué sirveCosto mensual
Twilio WhatsApp BusinessRecibir mensajes y enviar respuestasUSD $5-15 (según volumen)
n8n self-hosted (DigitalOcean)Orquestador del flujoUSD $6 (droplet mínimo)
Anthropic Claude APIOCR + extracción con IAUSD $5-25 (USD $0.005 por voucher)
Google Sheets + DriveAlmacenamiento de datos e imágenesGratis
TOTALUSD $16-46/mes (≈$15.000-43.000 CLP)

Para una pyme que registra 500 vouchers/mes, el costo total ronda los $25.000 CLP/mes. Vs. 2 horas diarias × 30 días × valor hora de tu administradora ($3.000-$5.000) = $180.000-$300.000/mes en sueldos. Se paga 10x el primer mes.

Paso 1 · Crear cuenta WhatsApp Business y conectar Twilio

Twilio es la forma más fácil de conectar WhatsApp Business a una API en Chile (Meta también funciona pero el setup es más burocrático).

Subpaso 1.1 — Crear cuenta Twilio

  1. Ve a twilio.com y crea cuenta con tu email comercial
  2. Verifica tu número celular
  3. En el dashboard, anda a Messaging → Try it out → Send a WhatsApp message
  4. Activa el sandbox (gratis para pruebas)

Subpaso 1.2 — Configurar webhook

En Twilio sandbox, configura la URL de webhook a tu instancia de n8n (la veremos en el paso 2):

https://tu-n8n.com/webhook/voucher-whatsapp

Subpaso 1.3 — Para producción (cuando funcione el flujo)

Comprar un número WhatsApp Business en Twilio (~USD $1/mes) y solicitar aprobación de plantillas. Toma 1-2 días hábiles.

Paso 2 · Levantar n8n self-hosted

n8n es el orquestador del flujo. Versión open-source self-hosted es gratis.

Subpaso 2.1 — Crear droplet en DigitalOcean

  1. Crear cuenta en digitalocean.com
  2. Crear nuevo droplet: Ubuntu 22.04, 1GB RAM, USD $6/mes
  3. Conectar por SSH

Subpaso 2.2 — Instalar n8n con Docker

# Instalar Docker
curl -fsSL https://get.docker.com | sh

# Crear docker-compose.yml
cat > docker-compose.yml <<EOF
version: '3'
services:
  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_BASIC_AUTH_ACTIVE=true
      - N8N_BASIC_AUTH_USER=admin
      - N8N_BASIC_AUTH_PASSWORD=tu-password-fuerte
      - N8N_HOST=tu-dominio.com
      - WEBHOOK_URL=https://tu-dominio.com/
    volumes:
      - n8n_data:/home/node/.n8n
volumes:
  n8n_data:
EOF

docker compose up -d

Subpaso 2.3 — Configurar dominio + HTTPS

Apuntar un subdominio (ej. n8n.atikodigital.cl) a la IP del droplet. Instalar Caddy o nginx con Let's Encrypt para SSL gratis.

Paso 3 · Crear el flujo en n8n

Nodo 1: Webhook (Twilio)

Nodo 2: Filtrar solo si trae imagen

{{ $json.NumMedia > 0 ? true : false }}

Nodo 3: Descargar la imagen

Twilio envía URLs con autenticación. Usar nodo HTTP Request:

Nodo 4: Llamar a Claude Vision para extraer datos

HTTP Request a la API de Anthropic:

POST https://api.anthropic.com/v1/messages
Headers:
  x-api-key: {{ $env.ANTHROPIC_API_KEY }}
  anthropic-version: 2023-06-01
  content-type: application/json

Body:
{
  "model": "claude-haiku-4-5",
  "max_tokens": 1024,
  "messages": [{
    "role": "user",
    "content": [
      {
        "type": "image",
        "source": {
          "type": "base64",
          "media_type": "image/jpeg",
          "data": "{{ $node['Descargar imagen'].binary.data.data }}"
        }
      },
      {
        "type": "text",
        "text": "Eres un sistema OCR especializado en vouchers bancarios chilenos. Analiza esta imagen y devuelve SOLO un JSON con estos campos: { monto: number, fecha: string (YYYY-MM-DD), hora: string (HH:mm), banco_origen: string, rut_depositante: string|null, nombre_depositante: string|null, numero_operacion: string|null, es_voucher_valido: boolean }. Si no es un voucher válido devuelve {es_voucher_valido: false}. Solo el JSON, sin texto adicional."
      }
    ]
  }]
}

Nodo 5: Parsear respuesta JSON

const text = $input.first().json.content[0].text;
return JSON.parse(text);

Nodo 6: Validar y manejar errores

Si es_voucher_valido === false, responder al cliente "No pudimos leer tu comprobante, ¿podrías reenviarlo con mejor calidad?" y terminar.

Nodo 7: Verificar duplicados en Sheets

Buscar en el Sheet si ya existe una fila con el mismo numero_operacion + banco_origen. Si existe, responder al cliente que el pago ya está registrado.

Nodo 8: Append fila a Google Sheets

Nodo 9: Guardar imagen en Drive

Upload de la imagen a la carpeta /Atiko/Vouchers/2026/. Anotar URL en la celda "URL Imagen" del paso anterior.

Nodo 10: Responder al cliente por WhatsApp

POST https://api.twilio.com/2010-04-01/Accounts/{{AccountSid}}/Messages.json
Body: {
  "From": "whatsapp:+14155238886",
  "To": "{{ $json.From }}",
  "Body": "✓ Recibido. Pago de ${{ formatMoney($json.monto) }} registrado. Te llega la boleta en breve."
}

Paso 4 · Probar el flujo

Enviar 5-10 vouchers reales desde distintos bancos chilenos (Estado, BCI, Santander, Itaú, BancoChile, Falabella). Verificar:

Casos a probar especialmente:

Mejoras opcionales

Integración con boletas SII

Una vez registrado el voucher, llamar a OpenFactura/Haulmer para emitir la boleta automáticamente. Ver el servicio completo.

Notificación al equipo

Mensaje a un canal interno (Slack/WhatsApp del equipo) cuando llega un pago superior a cierto monto: "🎉 Pago grande de $XXX.XXX de [cliente]".

Dashboard en Sheets

Una segunda hoja en el mismo Sheet con métricas: total recaudado hoy/semana/mes, top 10 clientes, banco más usado.

Errores comunes y cómo resolverlos

Claude Vision devuelve texto antes del JSON

Refuerza el prompt: "RESPONDE SOLO EL JSON. NADA MÁS. NI EXPLICACIONES NI TEXTO ANTES O DESPUÉS." Usa "claude-haiku-4-5" que es más obediente al formato.

El voucher es muy oscuro / contraluz

El bot debe responder pidiendo reenvío en mejor luz. Si el cliente insiste con la misma foto borrosa, derivar a humano.

Vouchers de bancos digitales (Tenpo, MACH, Tapp)

Suelen tener formatos no-tradicionales. Funcionan, pero al inicio revísalos manualmente para confirmar precisión.

Costo de API se dispara

Establecer un límite mensual de gasto en el panel de Anthropic. Y si superas 2000 vouchers/mes, cambiar a OCR self-hosted (Tesseract o PaddleOCR) para los casos simples y usar Claude solo para los complejos.

¿Lo armas tú o lo armamos por ti?

Si después de leer esto sientes que es factible y tienes ganas, dale: la documentación de n8n es buena y hay tutoriales en YouTube. Calcula 2-4 días de trabajo full-time para tenerlo corriendo bien.

Si prefieres que lo haga alguien con experiencia, esto está incluido en el Plan Pro de Atiko ($190.000/mes) junto con otras automatizaciones, monitoreo continuo y soporte directo por WhatsApp.


¿Te sirvió este tutorial? Comparte el link con otra pyme chilena que esté penando con la misma tarea. Y si quieres más tutoriales sobre automatizaciones, visita el blog.

¿Lo implementas tú o lo armamos por ti?

Si prefieres que tu pyme tenga esto corriendo en 2 semanas sin tocar código, está incluido en el plan Pro.

Quiero que lo armen por mí →