Who is this for?
This workflow is ideal for WooCommerce store owners who want to automatically send promotional WhatsApp messages to their customers when new coupons are created. It’s designed for marketers and eCommerce managers looking to boost engagement, streamline coupon sharing, and track campaign performance effortlessly through Google Sheets.
Overview
This workflow listens for WooCommerce coupon creation events (coupon.created) and uses customer billing data to send promotional WhatsApp messages via the Rapiwa API. The flow formats the coupon data, cleans phone numbers, verifies WhatsApp registration with Rapiwa, sends the promotional message when verified, and logs each attempt to Google Sheets (separate sheets for verified/sent and unverified/not sent).
What this Workflow Does
- Listens for new coupon creation events in WooCommerce via the WooCommerce Trigger node
- Retrieves all customer data from the WooCommerce store
- Processes customers in batches to control throughput
- Cleans and formats customer phone numbers for WhatsApp
- Verifies if phone numbers are valid WhatsApp accounts using Rapiwa API
- Sends personalized WhatsApp messages with coupon details to verified numbers
- Logs all activities to Google Sheets for tracking and analysis
- Handles both verified and unverified numbers appropriately
Key Features
- Automated coupon distribution: Triggers when new coupons are created in WooCommerce
- Customer data retrieval: Fetches all customer information from WooCommerce
- Phone number validation: Verifies WhatsApp numbers before sending messages
- Personalized messaging: Includes customer name and coupon details in messages
- Dual logging system: Tracks both successful and failed message attempts
- Rate limiting: Uses batching and wait nodes to prevent API overload
- Data formatting: Structures coupon information for consistent messaging
Google Sheet Column Structure
A Google Sheet formatted like this ➤ sample
The workflow uses a Google Sheet with the following columns to track coupon distribution:
| name |
number |
email |
address1 |
couponCode |
couponTitle |
couponType |
couponAmount |
createDate |
expireDate |
validity |
status |
| Abdul Mannan |
8801322827799 |
[email protected] |
mirpur-DOHS |
62dhryst |
eid offer 2025 |
percent |
20.00 |
2025-09-11 06:08:02 |
2025-09-15 00:00:00 |
unverified |
not sent |
| Abdul Mannan |
8801322827799 |
[email protected] |
mirpur-DOHS |
62dhryst |
eid offer 2025 |
percent |
20.00 |
2025-09-11 06:08:02 |
2025-09-15 00:00:00 |
verified |
sent |
Requirements
- n8n instance with the following nodes: WooCommerce Trigger, Code, SplitInBatches, HTTP Request, IF, Google Sheets, Wait
- WooCommerce store with API access
- Rapiwa account with API access for WhatsApp verification and messaging
- Google account with Sheets access
- Customer phone numbers in WooCommerce (stored in billing.phone field)
Important Notes
- Phone Number Format: The workflow cleans phone numbers by removing all non-digit characters. Ensure your WooCommerce phone numbers are in a compatible format.
- API Rate Limits: Rapiwa and WooCommerce APIs have rate limits. Adjust batch sizes and wait times accordingly.
- Data Privacy: Ensure compliance with data protection regulations when sending marketing messages.
- Error Handling: The workflow logs unverified numbers but doesn't have extensive error handling. Consider adding error notifications for failed API calls.
- Message Content: The current message template references the first coupon only (
coupons[0]). Adjust if you need to handle multiple coupons.
Useful Links
Support & Help