💬 Send automatic WhatsApp order confirmations from Shopify with Rapiwa API

⚡ 934 views · 💬 Lead Nurturing & AI Sales Agents

💡 Pro Tip — If you’ve run into Facebook’s Graph API permission restrictions, ScraperNode is a community node that scrapes pages, groups, posts, and comments directly — no app review needed.

View All Scrapers

Description

Send Automatic WhatsApp Order Confirmations from Shopify with Rapiwa API

Who’s it for

This n8n workflow helps Shopify store owners and teams automatically confirm orders via WhatsApp. It checks if the customer’s number is valid using Rapiwa API, sends a personalized message, and logs every attempt in Google Sheets—saving time and reducing manual work.

Whether you’re a solo entrepreneur or managing a small team, this solution gives you a low-cost alternative to the official WhatsApp Business API, without losing control or personalization.

Features

How it Works / What It Does


How to Set Up

  1. Set up a Shopify webhook for new orders (or connect a Google Sheet).

  2. Create a Google Sheet with columns:

    • name, number, order id, item name, total price, validity, status
  3. Create and configure a Rapiwa Bearer token in n8n.

  4. Add Google Sheets OAuth2 credential in n8n.

  5. Import the workflow in n8n and configure these nodes:

    • Webhook or Sheet Trigger
    • Loop Over Items (SplitInBatches)
    • Normalize Payload (Code)
    • Clean WhatsApp Number (Code)
    • Rapiwa WhatsApp Check (HTTP Request)
    • Conditional Branch (If)
    • Send WhatsApp Message (HTTP Request)
    • Update Google Sheet (Google Sheets)
    • Wait Node (delay per send)

Requirements


How to Customize the Workflow


Workflow Highlights


Setup in n8n

1. Check WhatsApp Registration

2. Branch Based on Validity

3. Send Message via Rapiwa

Hi *{{ $json.customer_full_name }}*,
Thank you for shopping with *SpaGreen Creative*! We're happy to confirm that your order has been successfully placed.
🧾 Order Details
• Product: {{ $json.line_item.title }}
• SKU: {{ $json.line_item.sku }}
• Quantity: {{ $json.line_item.quantity }}
• Vendor: {{ $json.line_item.vendor }}
• Order ID: {{ $json.name }}
• Product ID: {{ $json.line_item.product_id }}
📦 Shipping Information
{{ $json.shipping_address.address1 }} {{ $json.shipping_address.address2 }}
{{ $json.shipping_address.city }}, {{ $json.shipping_address.country }} - {{ $json.shipping_address.zip }}
💳 Payment Summary
• Subtotal: {{ $json.subtotal_price }} BDT
• Tax (VAT): {{ $json.total_tax_amount }} BDT
• Shipping: {{ $json.total_shipping_amount }} BDT
• Discount: {{ $json.total_discount_amount }} BDT
• Total Paid: {{ $json.total_price }} BDT
Order Date: {{ $json.created_date }}
Warm wishes,
*Team SpaGreen Creative*

Sample Google Sheet Structure

namenumberorder iditem nametotal pricevaliditystatus
Abdul Mannan88013228277998986469695806Iphone 101150verifiedsent
Abdul Mannan88013228277998986469695806S25 UltraXXXXeen Android Phone23000verifiedsent

Tips


Important Notes


Future Enhancements (Ideas)


Support & Community


🔗 Nodes Used

Google Sheets, HTTP Request, Webhook

📥 Import

Download workflow.json and import into n8n: Workflow menu → Import from File

📖 Importing guide · 🔑 Credential setup