🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

WhatsApp + Airtable proposals sent as branded PDFs

Lisa Granqvist Partner Workflow Automation Expert

Prospects ask for a quote on WhatsApp, and suddenly you’re digging through old proposals, copying prices, and rewriting the same “here’s what we recommend” message. It’s slow. Worse, it’s inconsistent.

This WhatsApp Airtable proposals flow hits sales reps first, but agency owners and consultants feel it too. You will reply faster, keep your pricing tidy, and send a polished PDF without rebuilding it from scratch each time.

Below you’ll see how the automation turns a WhatsApp text or voice note into a branded proposal, which gets sent back automatically. Then you’ll learn what you need to run it, what to customize, and the common places it can break.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: WhatsApp + Airtable proposals sent as branded PDFs

The Problem: Quotes Get Stuck in “Manual Mode”

WhatsApp is where deals start, but it’s also where momentum dies. A prospect sends a voice note with real intent, and you can’t respond in the moment because you still need to transcribe it, figure out what they actually want, hunt down the right service package, and format something that looks professional. By the time you send a PDF, the lead is colder, the details are fuzzy, and you’ve probably under- or over-quoted because you were rushing. And honestly, “I’ll send something later today” is the fastest way to lose urgency.

The friction compounds. Here’s where it breaks down most often.

  • You retype the same information from voice notes, which invites errors and missed requirements.
  • Service packages live in someone’s head or a messy spreadsheet, so pricing changes don’t propagate.
  • Branding is inconsistent because the “latest template” is never actually the latest template.
  • Follow-up links (payment, booking, intake forms) get forgotten, so prospects stall even when they’re ready.

The Solution: WhatsApp In, Branded PDF Out

This workflow listens for new inbound WhatsApp messages via the WhatsApp Business Cloud trigger. If the message is a voice note, it fetches the media and transcribes it using OpenAI (Whisper). If it’s text, it maps the payload cleanly. Then an AI agent extracts the specifics that matter for a proposal: who the prospect is, what they need, any timeline or urgency, and useful context. With that clarified, the workflow pulls your available service packs from Airtable and matches the most relevant option to the prospect’s request. Finally, it fills your branded proposal template in APITEMPLATE, generates a PDF, and sends the document back through WhatsApp automatically.

The flow starts with a WhatsApp message and routes by message type (voice vs. text). AI turns raw conversation into structured fields, then Airtable supplies the “truth” on packages and links. APITEMPLATE produces a clean PDF, and WhatsApp sends it in the same chat thread where the prospect asked.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you get 10 WhatsApp quote requests a week, and half are voice notes. Manually, you might spend about 10 minutes to transcribe and interpret each voice note, then another 15 minutes pulling the right package from Airtable (or wherever it lives), formatting a PDF, and adding links. That’s roughly 25 minutes per request, or about 4 hours a week. With this workflow, you spend maybe 2 minutes confirming details if needed, while the automation handles transcription, package matching, and PDF creation in the background, then sends it back immediately.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • WhatsApp Business Cloud for inbound messages and sending PDFs.
  • Airtable to store service packs, pricing, and links.
  • OpenAI API key (create it in your OpenAI dashboard).

Skill level: Intermediate. You’ll connect accounts, set a webhook, and adjust a couple of prompts and template fields.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A prospect messages you on WhatsApp. The WhatsApp Business Cloud trigger receives the inbound message and passes it into n8n, including media details if it’s audio.

Voice notes get turned into text. The workflow looks up the media file, fetches it via HTTP, and runs transcription (Whisper) so you get clean text to work with.

AI extracts what matters and selects the best offer. A chat model and drafting agent pull out structured fields like need and urgency, then retrieve matching service packs from Airtable. A simple calculator tool can help with totals or package math when your template needs it.

A branded PDF is generated and sent back. APITEMPLATE fills your placeholders (name, price, booking link, payment link) and creates a PDF. The workflow sends the document through WhatsApp, so the prospect receives it right where they asked.

You can easily modify the Airtable service-pack matching to use categories, keywords, or deal size based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the WhatsApp Trigger

This workflow starts when a WhatsApp message arrives, so you’ll first configure the trigger that receives incoming messages.

  1. Add or open WhatsApp Incoming Hook and set Updates to messages.
  2. Credential Required: Connect your whatsAppTriggerApi credentials in WhatsApp Incoming Hook.
  3. Verify the webhook URL generated by WhatsApp Incoming Hook is registered in your WhatsApp provider.
Tip: Use the built-in “Test” webhook URL first, then switch to production mode after validation.

Step 2: Split and Route Incoming Messages

Messages are split into items and routed by message type (audio vs text) before being processed.

  1. In Split Message Items, set Field To Split Out to ={{ $json.field }}.
  2. Configure Route by Message Type with two rules: voice when ={{ $('WhatsApp Incoming Hook').item.json.messages[0].type }} equals audio, and text when it equals text.
  3. Confirm the execution flow: WhatsApp Incoming HookSplit Message ItemsRoute by Message Type.
⚠️ Common Pitfall: If the incoming payload lacks messages[0].type, the switch will not match any route. Validate your webhook sample payload first.

Step 3: Handle Audio Messages and Transcription

Audio messages are fetched, downloaded, and transcribed before being transformed into proposal input text.

  1. Configure WhatsApp Media Lookup with Resource set to media, Operation to mediaUrlGet, and Media Get ID to ={{ $json.audio.id }}.
  2. Credential Required: Connect your whatsAppApi credentials in WhatsApp Media Lookup.
  3. In External Media Fetch, set URL to ={{ $json.url }} and keep Authentication as predefinedCredentialType with Credential Type whatsAppApi.
  4. Credential Required: Connect your whatsAppApi credentials in External Media Fetch.
  5. Configure Audio Transcription AI with Resource set to audio and Operation set to transcribe.
  6. Credential Required: Connect your openAiApi credentials in Audio Transcription AI.
  7. Confirm the flow for audio: Route by Message TypeWhatsApp Media LookupExternal Media FetchAudio Transcription AIPrepare Message Kind.

Step 4: Map Text Messages and Normalize Input

Text messages are extracted and normalized so the proposal agent can use a consistent input format.

  1. In Map Text Payload, create a field named text with value ={{ $('WhatsApp Incoming Hook').item.json.messages[0].text.body }}.
  2. In Prepare Message Kind, set the message_type field to ={{ $json.text }}.
  3. Confirm the flow for text: Route by Message TypeMap Text PayloadPrepare Message Kind.
Tip: If you want to support additional message types, add more branches in Route by Message Type and map them into Prepare Message Kind.

Step 5: Configure the AI Proposal Generation Stack

The proposal is generated by an AI agent with tools and memory. Ensure the language model and tool connections are properly configured.

  1. Open Proposal Drafting Agent and set Text to ={{ $json.message_type }} with Prompt Type define.
  2. Connect GPT Chat Engine as the language model for Proposal Drafting Agent; Credential Required: Connect your openAiApi credentials in GPT Chat Engine.
  3. Attach Session Memory Buffer as memory with Session Key ={{ $('Prepare Message Kind').item.json.message_type }} and Session ID Type customKey.
  4. Attach Retrieve Airtable Records as a tool for the agent with Operation search, Return All set to false, Limit 5, and Filter By Formula ={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Filter_By_Formula', ``, 'string') }}.
  5. Credential Required: Connect your airtableTokenApi credentials in Retrieve Airtable Records (credentials are added to the tool node, but it is used by Proposal Drafting Agent).
  6. Attach Math Helper Tool as a tool for Proposal Drafting Agent if calculations are needed (no credentials required).
⚠️ Common Pitfall: AI tool nodes like Session Memory Buffer, Math Helper Tool, and Retrieve Airtable Records are connected to Proposal Drafting Agent — ensure the agent has the language model attached via GPT Chat Engine.

Step 6: Generate the PDF and Send It Back via WhatsApp

The generated proposal JSON is sent to a PDF template service and delivered as a WhatsApp document.

  1. In PDF Template Generator, set Resource to pdf, PDF Template ID to [YOUR_ID], JSON Parameters to true, and Properties JSON to ={{ $json.output }}.
  2. Credential Required: Connect your apiTemplateIoApi credentials in PDF Template Generator.
  3. Configure WhatsApp Document Sender with Operation send, Message Type document, Media Link ={{ $json.download_url }}, and Phone Number ID ={{ $('WhatsApp Incoming Hook').item.json.metadata.phone_number_id }}.
  4. Set Recipient Phone Number to [YOUR_ID] and customize the Media Caption and Media Filename as needed.
  5. Credential Required: Connect your whatsAppApi credentials in WhatsApp Document Sender.

Step 7: Test and Activate Your Workflow

Run a controlled test to confirm each branch and delivery stage works, then activate the workflow for live usage.

  1. Click Execute Workflow and send a WhatsApp text message to verify the text path: WhatsApp Incoming HookSplit Message ItemsRoute by Message TypeMap Text PayloadPrepare Message KindProposal Drafting AgentPDF Template GeneratorWhatsApp Document Sender.
  2. Send a WhatsApp audio message to verify the audio path: WhatsApp Media LookupExternal Media FetchAudio Transcription AIPrepare Message KindProposal Drafting Agent.
  3. Confirm success when a PDF is generated and delivered to the recipient via WhatsApp with the configured caption and filename.
  4. When satisfied, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • WhatsApp Business Cloud credentials can expire or need specific permissions. If things break, check your Meta app settings and webhook subscription status first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • OpenAI prompts in AI nodes start generic. Bake in your brand voice and “how we price” rules early, or you’ll be cleaning up every draft.

Frequently Asked Questions

How long does it take to set up this WhatsApp Airtable proposals automation?

About 45–60 minutes if your accounts and template are ready.

Do I need coding skills to automate WhatsApp Airtable proposals?

No. You’ll mainly connect accounts, paste in API keys, and map a few fields. The “hard part” is deciding what your proposal should include.

Is n8n free to use for this WhatsApp Airtable proposals workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API usage (often a few cents per transcription and draft) and your APITEMPLATE plan.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this WhatsApp Airtable proposals workflow for different service packages and languages?

Yes, and you should. Update the Airtable fields used by the Retrieve Airtable Records tool, then adjust the Proposal Drafting Agent instructions to match how you sell (tone, sections, and language). Many teams add optional upsells, a short “scope boundaries” paragraph, and a different template per service line in APITEMPLATE.

Why is my WhatsApp Business Cloud connection failing in this workflow?

Usually it’s a webhook or token issue, not n8n. Check that your webhook URL is still reachable, that the correct WhatsApp events are subscribed in Meta, and that your access token hasn’t expired. If media downloads fail, confirm the media lookup call is returning a valid URL and that your HTTP Request node is allowed to fetch it.

How many proposals can this WhatsApp Airtable proposals automation handle?

A lot.

Is this WhatsApp Airtable proposals automation better than using Zapier or Make?

Often, yes, because this workflow isn’t just “send data from A to B.” You’re routing message types, fetching media, transcribing audio, running an agent, pulling records from Airtable, and generating a PDF, and that multi-step logic can get expensive or awkward in simpler tools. n8n also gives you the self-hosted option, which is handy if you expect higher volume. If you only need a basic “WhatsApp message → email me a note,” Zapier or Make might feel quicker. Talk to an automation expert if you want help picking the right stack.

This is what “fast follow-up” is supposed to look like: a prospect asks, you respond with a branded PDF that’s ready to act on. Set it up once, then let Airtable and WhatsApp do the repetitive work for you.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal