Zapier MCP + WhatsApp → Google Sheets in 15 Minutes
WhatsApp messages flowing into Google Sheets — without writing a line of backend code. Connect Omdaa API, Zapier Catch Hook, and Google Sheets in under 15 minutes.
Series: Free Forever WhatsApp Dev · Full version on omdaa.com blog
Why Zapier + Omdaa?
- Free Forever Omdaa API — unlimited WhatsApp sessions & webhooks
- Zapier — no-code CRM / message log
- Google Sheets — instant spreadsheet with zero code
- Works alongside n8n if you prefer self-hosted
- Optional: drive setup from Cursor via Zapier MCP + Omdaa MCP
Architecture
WhatsApp → Omdaa Webhook → Zapier Catch Hook → Google Sheets Row
Step 1: Create Catch Hook Zap
- Trigger: Webhooks by Zapier → Catch Hook
- Action: Google Sheets → Create Spreadsheet Row
- Map fields:
Timestamp,From,Message,Session ID,Event - Copy your Catch Hook URL (
https://hooks.zapier.com/hooks/catch/...)
Optional: use Zapier MCP inside Cursor to create/manage the Zap from your editor.
Step 2: Point Omdaa webhook to Zapier
npm install @omdaafreeapi/omdaa-api-client
const { OmdaaClient } = require('@omdaafreeapi/omdaa-api-client');
const client = new OmdaaClient({ apiKey: process.env.OMDAA_API_KEY });
await client.webhooks.set({
url: 'https://hooks.zapier.com/hooks/catch/XXX/YYY/',
enabled: true,
events: ['message', 'message.received'],
});
await client.webhooks.test();
Or CLI:
OMDAA_API_KEY=your-key \
ZAPIER_WEBHOOK_URL=https://hooks.zapier.com/hooks/catch/XXX/YYY/ \
node backend/scripts/setup-n8n-webhook.js
Step 3: Test with sample payload
{
"event": "message.received",
"sessionId": "default",
"data": {
"from": "201234567890",
"text": "Hello from customer",
"messageId": "ABC123"
}
}
A new row appears in your sheet instantly.
Tips for production
| Tip | Detail |
|---|---|
| Verify signature | Check HMAC on X-Webhook-Signature
|
| Filter events | Prefer message.received only |
| Deduplicate | Store messageId in the sheet |
| Scale | Use n8n on omdaa.com/n8n for self-hosted pipelines |
Next in this series
Omdaa API — Free Forever. Get started →
Top comments (0)