Skip to main content

WooCommerce order updates to customers via WhatsApp with Rapiwa API

Workflow preview

Workflow preview
100%
WooCommerce order updates to customers via WhatsApp with Rapiwa API preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Who is this for? This workflow is for online store owners, support teams, and marketing staff who want to automatically verify WhatsApp numbers and send order invoice links or personalized order up...

Best for

  • Support Chatbot automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.if, n8n-nodes-base.wait, n8n-nodes-base.splitinbatches, n8n-nodes-base.webhook, n8n-nodes-base.code, n8n-nodes-base.googlesheets, n8n-nodes-base.stickynote, n8n-nodes-rapiwa.rapiwa

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Rapiwa.

Original n8n.io source

1.1 Workflow description

Title
WooCommerce order updates to customers via WhatsApp with Rapiwa API
Workflow name
WooCommerce order updates to customers via WhatsApp with Rapiwa API

Who is this for?

This workflow is for online store owners, support teams, and marketing staff who want to automatically verify WhatsApp numbers and send order invoice links or personalized order updates to customers. It’s built against WooCommerce order webhooks but can be adapted to Shopify or other e-commerce platforms that provide billing and line_items.

What this Workflow Does

  • Receives order events (Webhook / WooCommerce order.updated).
  • Normalizes the payload into a compact object: { data: { customer, products, invoice_link } } via a Code node.
  • Iterates items in batches (SplitInBatches) to control throughput.
  • Cleans phone numbers (removes non-digits) and verifies WhatsApp registration using Rapiwa (/api/verify-whatsapp).
  • Sends templated WhatsApp messages through Rapiwa (/api/send-message) for verified numbers.
  • Logs every attempt into Google Sheets: one sheet for verified & sent rows, another for unverified & not sent rows.
  • Uses a Wait node to throttle and loop back into the batch processor.

Key Features

  • Trigger-based automation (Webhook or WooCommerce trigger).
  • Payload normalization and mapping via JavaScript Code nodes.
  • Controlled batching (SplitInBatches) to avoid rate limits.
  • Pre-send verification of WhatsApp numbers using Rapiwa.
  • Conditional branching with the IF node to separate verified vs unverified flows.
  • Personalized message templates that pull customer and product fields from the mapped data.
  • Logging and audit trail stored in Google Sheets (two separate append flows).

How to Use — Step-by-step Setup

  1. Add credentials in n8n

    • Rapiwa: Create an HTTP Bearer credential and paste your Bearer token (example name used in the flow: Rapiwa Bearer Auth).
    • Google Sheets: Create an OAuth2 credential (example: Google Sheets).
    • WooCommerce: Add WooCommerce API credentials for the trigger (or configure Shopify credentials if adapting).
  2. Import / configure nodes in n8n

    • Webhook (or WooCommerce Trigger): receive order payloads. Example Webhook path is present in the exported flow.
    • Code node Format Webhook Response Data: map body.billing, body.line_items, body.payment_url into { data: { customer, products, invoice_link } }.
    • Code node Clean WhatsApp Number: ensure the phone number is a string and strip non-digits: String(rawNumber).replace(/\D/g, "").
    • HTTP Request Check valid whatsapp number Using Rapiwa: POST to https://app.rapiwa.com/api/verify-whatsapp with { number }. Use the Rapiwa Bearer credential.
    • IF If: check verification result. The flow compares {{$json.data.exists}} to "true" in the exported flow; normalize types if your API returns booleans.
    • HTTP Request Rapiwa Sender: POST to https://app.rapiwa.com/api/send-message with number, message_type: 'text', and a templated message (see message template in the flow).
    • Google Sheets Store State of Rows in Verified & Sent and Store State of Rows in Unverified & Not Sent

Google Sheet Column Structure

Create these columns exactly (the Google Sheets nodes in the flow expect these names): A Google Sheet formatted like thissample

Name Number Email Address Product Title Product ID Size Quantity Total Price Product Image Invoice Link Product Status Validity Status
Abdul Mannan 8801322827799 [email protected] mirpur dohs Air Force 1 Reigning Champ Dark Grey 1:1 - 40 251 40 1 BDT 5800.00 Invoice on-hold verified sent
Abdul Mannan 8801322827799 [email protected] mirpur dohs Air Force 1 Reigning Champ Dark Grey 1:1 - 40 251 40 1 BDT 5800.00 Invoice on-hold unverified not sent

Customization Ideas

  • Adapt the Code mapping node for Shopify payloads or other marketplaces.
  • Iterate and include multiple products in the message instead of using products[0].
  • Add filters in the Code node (e.g., only process orders with total > 5000).
  • Add fallback channels (SMS or email) for unverified numbers.
  • Persist logs into a database for analytics and retention beyond Google Sheets.
  • Add admin notifications (Slack, email) at the end of each run.

Useful Links

Support & Help

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - If

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 2 - Wait

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 3 - Loop Over Items

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 4 - Webhook

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2

Block 5 - Format Webhook Response Data

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 6 - Clean WhatsApp Number

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 7 - Store State of Rows in Verified & Sent

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 8 - Store State of Rows in Unverified & Not Sent

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 9 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Sticky Note6

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 13 - Rapiwa

Type / Role
n8n-nodes-rapiwa.rapiwa - rapiwa
Config choices
Version 1

Block 14 - Rapiwa (send message)

Type / Role
n8n-nodes-rapiwa.rapiwa - rapiwa
Config choices
Version 1

3. Summary Table

Workflow WooCommerce order updates to customers via WhatsApp with Rapiwa API
Complexity intermediate
Nodes 14
Categories Support Chatbot
Author Rapiwa
Published 19 Oct 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/9880/9880.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does WooCommerce order updates to customers via WhatsApp with Rapiwa API do?

Who is this for? This workflow is for online store owners, support teams, and marketing staff who want to automatically verify WhatsApp numbers and send order invoice links or personalized order up...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Support Chatbot use case.