AutomationFlowsE-commerce › Automate Shopify Abandoned Cart Whatsapp Reminders with Product Links via Rapiwa

Automate Shopify Abandoned Cart Whatsapp Reminders with Product Links via Rapiwa

BySpaGreen Creative @spagreen on n8n.io

This n8n workflow automatically identifies customers who have abandoned their carts on your Shopify store, cleans and verifies their WhatsApp numbers, and sends them personalized reminders via the Rapiwa API. It also logs each interaction—whether the number was valid or not—into…

Cron / scheduled trigger★★★★☆ complexity19 nodesHTTP RequestGoogle Sheets
E-commerce Trigger: Cron / scheduled Nodes: 19 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #9031 — we link there as the canonical source.

This workflow follows the Google Sheets → HTTP Request recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "H1rJA5MTCuWx5IFF",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Automate Shopify Abandoned Cart WhatsApp Reminders with Product Links via Rapiwa",
  "tags": [],
  "nodes": [
    {
      "id": "4159f1ee-7b87-4320-8716-2d601b41bcd9",
      "name": "HTTP Request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -2064,
        32
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "53535899-1bed-495b-a12c-38f7d4b38e21",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -2400,
        32
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "69fbf648-32c5-42cf-8c8c-f504e3faec97",
      "name": "Rapiwa Sender",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -144,
        112
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "c925eed9-596d-4f47-a3bb-b1e7d366a14c",
      "name": "Clean WhatsApp Number",
      "type": "n8n-nodes-base.code",
      "position": [
        -1264,
        48
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "90aa8a3d-47eb-473f-afb4-906360350cd9",
      "name": "Check valid whatsapp number Using Rapiwa1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -976,
        48
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "a35dc547-b9c5-4a4c-9d7e-7fecd812bf71",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1328,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "45349501-247a-443c-b58e-1cea7f8f7e35",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -736,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "4cffcb7b-6473-4c5d-a52c-23f33c28edfd",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -288,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d789b7a8-84ab-4143-98fc-d9b270302118",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -288,
        352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "6da3b3f7-8e68-41fb-b889-c62a0ca8f88b",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        -576,
        288
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "9ff80aa5-754b-4e07-b21d-c55ea9772a06",
      "name": "Change State of Rows in Verified & Sent",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        112,
        112
      ],
      "parameters": {},
      "typeVersion": 4.6
    },
    {
      "id": "44f406aa-e919-4c6a-a3fb-3eef71d5cb23",
      "name": "Change State of Rows in Unverified & Not Sent",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -144,
        416
      ],
      "parameters": {},
      "typeVersion": 4.6
    },
    {
      "id": "f385eb14-50dd-4cac-82cd-30d9374adf70",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        112,
        416
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "965c02e8-8d9f-4edb-88b5-5cb8a509f633",
      "name": "Format HTTP Response Data",
      "type": "n8n-nodes-base.code",
      "position": [
        -1840,
        32
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "01a37d2b-5e5b-4c00-ac3d-49f0fd7ce840",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -1584,
        32
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "a2e4b5cb-996a-4d6e-a120-4a3c1955bec8",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -4048,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "3524bc1e-7f0d-4cc2-8a45-339d60817664",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2496,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "cbacf837-95cc-4509-aa67-75b57b045e06",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2224,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "35958d98-85da-45fb-ab7f-04057fd18f63",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1680,
        -352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e21de6c3-502d-4100-b905-da2afd677ada",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Rapiwa Sender",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Change State of Rows in Unverified & Not Sent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request": {
      "main": [
        [
          {
            "node": "Format HTTP Response Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Rapiwa Sender": {
      "main": [
        [
          {
            "node": "Change State of Rows in Verified & Sent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Clean WhatsApp Number",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "HTTP Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Clean WhatsApp Number": {
      "main": [
        [
          {
            "node": "Check valid whatsapp number Using Rapiwa1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format HTTP Response Data": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Change State of Rows in Verified & Sent": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check valid whatsapp number Using Rapiwa1": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Change State of Rows in Unverified & Not Sent": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This n8n workflow automatically identifies customers who have abandoned their carts on your Shopify store, cleans and verifies their WhatsApp numbers, and sends them personalized reminders via the Rapiwa API. It also logs each interaction—whether the number was valid or not—into…

Source: https://n8n.io/workflows/9031/ — original creator credit. Request a take-down →

More E-commerce workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

E-commerce

This workflow automates inventory management and predictive reordering for Shopify stores. It integrates Shopify, Google Sheets, and Slack to monitor inventory levels, calculate dynamic reorder points

Shopify, Google Sheets, Gmail +2
E-commerce

A webhook or timer triggers the workflow to automatically fetch inventory data from multiple platforms. Stock levels are compared across stores to identify discrepancies, and any inconsistencies are u

HTTP Request, Google Sheets, Gmail
E-commerce

This workflow is perfect for e-commerce store owners using Shopify who want to automatically recover abandoned carts through personalized WhatsApp messages. It's ideal for businesses looking to increa

HTTP Request, N8N Nodes Rapiwa, Google Sheets
E-commerce

E-commerce store owners and sales managers who want AI-powered insights from their Shopify data without manually crunching numbers every week.

Shopify, HTTP Request, Slack +2
E-commerce

This workflow connects directly to your WooCommerce store using the REST API to fetch all recent orders. It logs them in Google Sheets for easy tracking and visibility. Every day at a scheduled time,

HTTP Request, Google Sheets, Email Send