Templates / Send thank-you messages & loyalty coupons via WhatsApp from Shopify using WA

Send thank-you messages & loyalty coupons via WhatsApp from Shopify using WA

Ready for 3.0

by SpaGreen Creative ✓ · 345 views · created 2025-10-06 · Lead Nurturing, AI Chatbot

Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.

Nodes used (7)

Google Sheets

What it does

Shopify Auto Send WhatsApp Thank-You Messages & Loyalty Coupon Using Rapiwa API Who is this for? This workflow is for Shopify store owners, marketers, and support teams who want to automatically message their high-value customers on WhatsApp when new discount codes are created. What this workflow does - Fetches customer data from Shopify - Filters customers where totalspent > 5000 - Cleans phone numbers (removes non-digit characters) and normalizes them to an international format - Verifies numbers via the Rapiwa API (verify-whatsapp endpoint) - Sends coupon or thank-you messages to verified numbers via the Rapiwa send-message endpoint - Logs each send attempt to Google Sheets with status and validity - Uses batching (SplitInBatches) and Wait nodes to avoid rate limits Key features - Automated trigger: Shopify webhook (discounts/create) or manual trigger - Targeted sending to high-value customers - Pre-send verification to reduce failed sends - Google Sheets logging and status updates - Rate-limit protection using Wait node How to use? Step-by-step setup 1) Prepare a Google Sheet - Columns: name, number, status, validity, check (optional) - Example row: Abdul Mannan | 8801322827799 | not sent | unverified | check 2) Configure n8n credentials - Shopify: store access token (X-Shopify-Access-Token) - Rapiwa: Bearer token (HTTP Bearer credential) - Google Sheets: OAuth2 credentials and sheet access 3) Configure the nodes - Webhook/Trigger: Shopify discounts/create or Manual Trigger - HTTP Request (Shopify): /admin/api/<version>/customers.json - Code node: filter customers totalspent > 5000 and map fields - SplitInBatches: batching/looping - Code (clean number): waNoStr.replace(/\D/g, "") - HTTP Request (Rapiwa verify): POST https://app.rapiwa.com/api/verify-whatsapp body { number } - IF node: check data.exists to decide branch - HTTP Request (Rapiwa send-message): POST https://app.rapiwa.com/api/send-message body { number, messagetype, message } - Google Sheets Append/Update: write status and validity - Wait: add 2–5 seconds delay between sends 4) Test with a small batch - Run manually with 2–5 records first and verify results Google Sheet column structure A Google Sheet formatted like this ➤ Sample | Name | Number | Status | Validity | | -------------- | ------------- | -------- | ---------- | | Abdul Mannan | 8801322827798 | not sent | unverified | | Abdul Mannan | 8801322827799 | sent | verified | Requirements - Shopify Admin API access (store access token) - Rapiwa account and Bearer token - Google account and Google Sheet (OAuth2 setup) - n8n instance (nodes used: HTTP Request, Code, SplitInBatches, IF, Google Sheets, Wait) Customization ideas - Adjust the filter (e.g., order count, customer tags) - Use message templates to insert name and coupon code per customer - Add an SMS or email fallback for unverified numbers - Send a run summary to admin (Slack / email) - Store logs in a database for deeper analysis Important notes - data.exists may be a boolean or a string — normalize it in a Code node before using in an IF node - Ensure Google Sheets column names match exactly - Store Rapiwa and Shopify tokens securely in n8n credentials - Start with small batches for testing and scale gradually Useful Links - Dashboard: https://app.rapiwa.com - Official Website: https://rapiwa.com - Documentation: https://docs.rapiwa.com Support & Help - WhatsApp: Chat on WhatsApp - Discord: SpaGreen Community - Facebook Group: SpaGreen Support - Website: https://spagreen.net - Developer Portfolio: Codecanyon SpaGreen

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.