Zapier MCP + WhatsApp → Google Sheets in 15 Minutes
November 3, 20262 min read663 views
Admin

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
1. Trigger: Webhooks by Zapier → Catch Hook
2. Action: Google Sheets → Create Spreadsheet Row
3. Map fields: Timestamp, From, Message, Session ID, Event
4. 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
`bash
npm install @omdaafreeapi/omdaa-api-client
`
`javascript
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:
`bash
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
`json
{
"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
Next in this series
Omdaa API — Free Forever. Get started →