Automated WhatsApp Upsell Messages for Shopify Cancellations with Rapiwa & Sheet
Go to WorkflowDescription
Who is this for?
This workflow is for Shopify store owners, customer success, and marketing teams who want to automatically check customers’ WhatsApp numbers and send personalized messages with discount codes for canceled orders. It helps recover lost sales by reaching out with special offers.
What This Workflow Does
Automatically checks for canceled orders on a schedule
Fetches canceled orders from Shopify
Creates personalized recovery messages based on customer data
Verifies customers’ WhatsApp numbers via Rapiwa
Logs results in Google Sheets: “Verified & Sent” for successful messages, “Unverified & Not Sent” for unverified numbers
Requirements
Shopify store with API access enabled
Shopify API credentials with access to orders and customer data
Rapiwa account and a valid Bearer token
Google account with Sheets access and OAuth2 credentials
Setup plan
Add your credentials
Rapiwa: Create an HTTP Bearer credential in n8n and paste your token (example name: Rapiwa Bearer Auth).
Google Sheets: Add an OAuth2 credential (example name: Google Sheets).
Set up Shopify
Replace your_shopify_domain with your real Shopify domain.
Replace your_shop_access-token with your actual Shopify API token.
Set up Google Sheets
Update the example spreadsheet ID and sheet gid with your own.
Make sure your sheet’s column headers match the mapping keys exactly—same spelling, case, and no extra spaces.
Configure the Schedule Trigger
Choose how often you want the workflow to check for canceled orders (daily, weekly, etc.).
Check the HTTP Request nodes
Verify endpoint: Should call Rapiwa’s verifyWhatsAppNumber.
Send endpoint: Should use Rapiwa’s send-message API with your template (includes customer name, reorder link, discount code).
Google Sheet Column Structure
The Google Sheets nodes in the flow append rows with these column. Make sure the sheet headers match exactly.
A Google Sheet formatted like this ➤ sample
| Name | Number | Item Name | Coupon | Item Link | Validity | Status |
| ------------ | ------------- | ------------------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------- | ---------- | ------ |
| Abdul Mannan | 8801322827799 | Samsung Galaxy S24 Ultra 5G 256GB-512GB-1TB | REORDER5 | Re-order Link | verified | sent |
| Abdul Mannan | 8801322827790 | Samsung Galaxy S24 Ultra 5G 256GB-512GB-1TB | REORDER5 | Re-order Link | unverified | not sent |
Important Notes
Do not hard-code API keys or tokens; always use n8n credentials.
Google Sheets column header names must match the mapping keys used in the nodes. Trailing spaces are common accidental problems — trim them in the spreadsheet or adjust the mapping.
Message templates reference - update templates if you need to reference different data.
The workflow processes cancelled orders in batches to avoid rate limits. Adjust the batch size if needed.
Useful Links
Install Rapiwa**: How to install Rapiwa
Dashboard:** https://app.rapiwa.com
Official Website:** https://rapiwa.com
Documentation:** https://docs.rapiwa.com
Shopify API Documentation:** https://shopify.dev/docs/admin-api
Support & Help
WhatsApp**: Chat on WhatsApp
Discord**: SpaGreen Community
Facebook Group**: SpaGreen Support
Website**: https://spagreen.net
Developer Portfolio**: Codecanyon SpaGreen