AutomationFlowsAI & RAG › AI Whatsapp Chatbot with Rag: Automate Text, Voice, Image & PDF Responses

AI Whatsapp Chatbot with Rag: Automate Text, Voice, Image & PDF Responses

BySpaGreen Creative @spagreen on n8n.io

This n8n workflow creates an intelligent WhatsApp customer support bot that can handle text, image, audio, and document messages. The workflow automatically processes incoming messages through different AI agents, maintains conversation context, accesses company knowledge bases,…

Event trigger★★★★★ complexityAI-powered59 nodesHTTP RequestN8N Nodes RapiwaAgent ToolHTTP Request ToolGoogle Sheets ToolTool ThinkMemory Buffer WindowGoogle Sheets
AI & RAG Trigger: Event Nodes: 59 Complexity: ★★★★★ AI nodes: yes Added:

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

This workflow follows the Agent → Agenttool 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": "wEEo55FR0zCoHUqe",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "AI WhatsApp Chatbot with RAG: Automate Text, Voice, Image & PDF Responses",
  "tags": [],
  "nodes": [
    {
      "id": "88319fa8-a2e6-4ac3-be97-01eedef1b53f",
      "name": "Extract from PDF",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        1568,
        1504
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "3a3e7067-b059-44f7-bb03-579c6c4bcc41",
      "name": "Extract from XLS",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        1568,
        1664
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "0a413a07-eb53-4a36-a1a9-71f9eb9df4c5",
      "name": "Extract from XLSX",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        1568,
        1824
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "252cdce8-47ee-46c0-a6c9-cab9f110e144",
      "name": "Map JSON",
      "type": "n8n-nodes-base.set",
      "position": [
        1760,
        1760
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "38936e3d-1c39-4406-beb3-9b705eb1cc46",
      "name": "Map file extensions",
      "type": "n8n-nodes-base.code",
      "position": [
        1072,
        1472
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "f5073df4-92f4-4d34-bdc3-f735e0f7f100",
      "name": "Map document prompt",
      "type": "n8n-nodes-base.set",
      "position": [
        1744,
        1392
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "a6f09ced-b4d0-47ce-b9e0-7065a27f57ee",
      "name": "Download Document",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        880,
        1472
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "77873039-fb85-4d69-87ba-f23e00e777fe",
      "name": "Route Types",
      "type": "n8n-nodes-base.switch",
      "position": [
        512,
        560
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "3a519a5c-a997-4e85-a086-48380cae24aa",
      "name": "Route Document Types",
      "type": "n8n-nodes-base.switch",
      "position": [
        1312,
        1328
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "4da1958d-d057-4646-8b7d-d2c5dad426b5",
      "name": "Rapiwa Trigger",
      "type": "n8n-nodes-rapiwa.rapiwaTrigger",
      "position": [
        304,
        624
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "9806b28a-997e-4688-bdf5-c136b5ff9132",
      "name": "Research",
      "type": "@n8n/n8n-nodes-langchain.agentTool",
      "position": [
        3008,
        912
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "1dbe91b4-08d3-494e-8439-05b6872ab226",
      "name": "Support Desk",
      "type": "n8n-nodes-base.httpRequestTool",
      "notes": "https://docs.salebot.app/\nhttps://docs.delix.cloud/ \nhttps://socialvibe.spagreen.net/docs/\nhttps://faculty.spagreen.net/docs/\nhttps://docs.spagreen.net/docs/yoori/get-started/introduction\nhttps://meetair.spagreen.net/docs/\nhttps://oxoo.spagreen.net/documentation/android/\nhttps://docs.flixoo.app/",
      "position": [
        3616,
        992
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "ed146af7-813a-4b99-9abc-97356ef8665a",
      "name": "Read Company Information",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        3232,
        1280
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "031673c8-a8af-47c3-a15a-0aaa33b0696c",
      "name": "Read Product",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        3072,
        1280
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "c06bb8ab-3b29-4d5a-8d09-9ff5b2c20ac3",
      "name": "Read Service",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        3232,
        1136
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "9f99c72a-3b18-48fa-8f17-9f9d39803ea4",
      "name": "Log Customer Issues",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        3088,
        1136
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "6570422c-15a5-464b-88b3-cc19b9c566cf",
      "name": "salebot",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3728,
        992
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "65139b11-6ba7-42d2-ae54-b234fa13b21d",
      "name": "delix",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3840,
        992
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "aae551de-3d5e-403a-9835-d63cd9c5bd62",
      "name": "socialvibe",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3616,
        1296
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "fdb70795-2e69-4e18-9ef7-20a6e6e52bf7",
      "name": "faculty",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3616,
        1152
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "df6ad0d5-a92d-4405-99df-32bf104b8d70",
      "name": "yoori",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3728,
        1152
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "500495fb-283f-4bc1-a7b8-236889fedbdf",
      "name": "meetair",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3840,
        1152
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "c48e6ef2-33ad-4660-bfe5-5b4266837826",
      "name": "oxoo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3728,
        1296
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "5306b77d-7bd5-4002-80a2-eafc6106b726",
      "name": "flixoo",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        3840,
        1296
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "5f55db2b-c4d0-42a7-b4eb-3754caefe458",
      "name": "Think",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        2512,
        1088
      ],
      "parameters": {},
      "notesInFlow": true,
      "typeVersion": 1
    },
    {
      "id": "c3f18ed5-177a-426d-95ec-5594f73f4fb4",
      "name": "Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        2416,
        1088
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "32761115-4a61-46ae-a166-da61b44404fc",
      "name": "Reaction",
      "type": "n8n-nodes-base.noOp",
      "position": [
        832,
        128
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "28efbc99-2be7-499b-9a94-1bf579adf529",
      "name": "Status",
      "type": "n8n-nodes-base.noOp",
      "position": [
        832,
        0
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "1bf1e483-17b7-4ab1-9dfc-ecc9734cd4e1",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        816,
        1328
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "93dac5e7-2fb1-4bb6-9ed5-7d535df2161b",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        288,
        528
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "1ab6fad9-ddd9-4a88-b038-c6ccb0e6bd43",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        816,
        464
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "06d5de17-43ad-4d56-a8d6-f064c9ee2615",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        784,
        960
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0569ead7-e17a-41c9-bb8b-22cba2371723",
      "name": "Rapiwa (document replay)",
      "type": "n8n-nodes-rapiwa.rapiwa",
      "position": [
        1936,
        1600
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "314bc658-c146-4ac0-9359-85b5f11dff18",
      "name": "Rapiwa (text replay)",
      "type": "n8n-nodes-rapiwa.rapiwa",
      "position": [
        1184,
        512
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "bcb90881-4fc7-43f6-a76c-1dcb029b2c93",
      "name": "Rapiwa (image replay)",
      "type": "n8n-nodes-rapiwa.rapiwa",
      "position": [
        1600,
        1024
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "0d45db44-31e2-4fdf-a4ca-8360eda00324",
      "name": "Rapiwa (audio/voice replay)",
      "type": "n8n-nodes-rapiwa.rapiwa",
      "position": [
        2528,
        608
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "3e5b6c24-7a54-40f4-9df4-e6fb62bc4d2d",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1536,
        544
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b91aa15b-08de-468f-9a79-b47ce55f2564",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2368,
        912
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "de802159-2ad7-4d2c-9f5c-c2845fbc5484",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        816,
        -64
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "526f38fa-c8b1-413c-8fe2-569a6acfab92",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -304,
        448
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e06d23ac-f503-4e87-be9b-142af026860f",
      "name": "Save Message status in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1024,
        64
      ],
      "parameters": {},
      "typeVersion": 4.7
    },
    {
      "id": "d6a22c77-3545-4a46-883c-a3462bf49538",
      "name": "Generates AI responses, maintains context, retrieves info",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        832,
        512
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "44d50dd5-c63a-425d-ae7a-43b126d1b4e9",
      "name": "Downloads audio from message URL",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1568,
        608
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "a060dbba-0e69-41f3-8a15-0a48282852c6",
      "name": "Transcribes and analyzes",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1792,
        608
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "df66faf8-5b61-4a66-b4c8-b5c16671be6d",
      "name": "Processes audio and generates a response",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1952,
        608
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "30f8a17a-4960-4998-8953-fe0eca688cbf",
      "name": "Summarizes audio for concise replies",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2240,
        608
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "6bcc559f-805e-41d1-90c0-c3a8b7317656",
      "name": "Fetches image data via HTTP request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        832,
        1024
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "dc8c93b5-322d-4524-a16b-4ee31a1e5616",
      "name": "Analyzes the image content",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1008,
        1024
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "6db70df5-d7e3-4f3c-92f8-b70b14d8c0af",
      "name": "Formats the image analysis into a structured prompt",
      "type": "n8n-nodes-base.set",
      "position": [
        1184,
        1024
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "3bcfd7af-b6cb-45e8-a8df-0e501a5ad8e5",
      "name": "Processes the image analysis and generates a response",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1328,
        1024
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "f8ae7213-3ed0-403e-b26c-b53a6f6e0af3",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2720,
        1216
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7b570f47-62a8-4696-be68-ecd671747b34",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        816,
        1392
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "acfe0c22-b86f-4297-bc48-c5def0d1272e",
      "name": "Rapiwa (Sends an error for unsupported file types.)",
      "type": "n8n-nodes-rapiwa.rapiwa",
      "position": [
        1296,
        1824
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "712e4844-68a1-4e82-80a0-eac3c14c5b4e",
      "name": "Analyzes the document and generates a response",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1888,
        1392
      ],
      "parameters": {},
      "typeVersion": 1.9
    },
    {
      "id": "c96f8781-7a38-42c4-b00d-fa7c2430ffc4",
      "name": "OpenAI",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2608,
        1088
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "322298c3-b89b-43b8-a2b7-f73c7bb1269c",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3568,
        912
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "79c5e47c-52da-425e-b18e-56f74499a9aa",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3040,
        1088
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "ed764dab-6ff0-41a6-bf2a-7a6eb81b2e72",
      "name": "Docs (retrieves company documentation)",
      "type": "n8n-nodes-base.googleDocsTool",
      "position": [
        2880,
        1264
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "60cd7a2c-b825-44b9-9c55-2bba77d39de1",
      "name": "Company documentation",
      "type": "n8n-nodes-base.googleDocsTool",
      "position": [
        2752,
        1264
      ],
      "parameters": {},
      "typeVersion": 2
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "d56381e7-8013-4e34-8680-ed7698bcded4",
  "connections": {
    "oxoo": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Think": {
      "ai_tool": [
        [
          {
            "node": "Processes the image analysis and generates a response",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Processes audio and generates a response",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Generates AI responses, maintains context, retrieves info",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "delix": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "yoori": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Memory": {
      "ai_memory": [
        [
          {
            "node": "Generates AI responses, maintains context, retrieves info",
            "type": "ai_memory",
            "index": 0
          },
          {
            "node": "Processes the image analysis and generates a response",
            "type": "ai_memory",
            "index": 0
          },
          {
            "node": "Analyzes the document and generates a response",
            "type": "ai_memory",
            "index": 0
          },
          {
            "node": "Processes audio and generates a response",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI": {
      "ai_languageModel": [
        [
          {
            "node": "Research",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Summarizes audio for concise replies",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Processes audio and generates a response",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Generates AI responses, maintains context, retrieves info",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Processes the image analysis and generates a response",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Analyzes the document and generates a response",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Status": {
      "main": [
        [
          {
            "node": "Save Message status in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "flixoo": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "faculty": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "meetair": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "salebot": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Map JSON": {
      "main": [
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Reaction": {
      "main": [
        [
          {
            "node": "Save Message status in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Research": {
      "ai_tool": [
        [
          {
            "node": "Processes the image analysis and generates a response",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Processes audio and generates a response",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Generates AI responses, maintains context, retrieves info",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Analyzes the document and generates a response",
            "type": "ai_tool",
            "index": 0
          },
          {
            "node": "Summarizes audio for concise replies",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "socialvibe": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Route Types": {
      "main": [
        [
          {
            "node": "Status",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Reaction",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Generates AI responses, maintains context, retrieves info",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Downloads audio from message URL",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Fetches image data via HTTP request",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Download Document",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read Product": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Read Service": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Support Desk": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Rapiwa Trigger": {
      "main": [
        [
          {
            "node": "Route Types",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from PDF": {
      "main": [
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from XLS": {
      "main": [
        [
          {
            "node": "Map JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Document": {
      "main": [
        [
          {
            "node": "Map file extensions",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from XLSX": {
      "main": [
        [
          {
            "node": "Map JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Log Customer Issues": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Map document prompt": {
      "main": [
        [
          {
            "node": "Analyzes the document and generates a response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Map file extensions": {
      "main": [
        [
          {
            "node": "Route Document Types",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Route Document Types": {
      "main": [
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map document prompt",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Extract from PDF",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Map JSON",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Extract from XLS",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Extract from XLSX",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Rapiwa (Sends an error for unsupported file types.)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Company documentation": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Read Company Information": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Transcribes and analyzes": {
      "main": [
        [
          {
            "node": "Processes audio and generates a response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyzes the image content": {
      "main": [
        [
          {
            "node": "Formats the image analysis into a structured prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Rapiwa (audio/voice replay)": {
      "main": [
        []
      ]
    },
    "Downloads audio from message URL": {
      "main": [
        [
          {
            "node": "Transcribes and analyzes",
            "type": "main",
            "index": 0
          },
          {
            "node": "Processes audio and generates a response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetches image data via HTTP request": {
      "main": [
        [
          {
            "node": "Analyzes the image content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Summarizes audio for concise replies": {
      "main": [
        [
          {
            "node": "Rapiwa (audio/voice replay)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Docs (retrieves company documentation)": {
      "ai_tool": [
        [
          {
            "node": "Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Processes audio and generates a response": {
      "main": [
        [
          {
            "node": "Summarizes audio for concise replies",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyzes the document and generates a response": {
      "main": [
        [
          {
            "node": "Rapiwa (document replay)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Formats the image analysis into a structured prompt": {
      "main": [
        [
          {
            "node": "Processes the image analysis and generates a response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Processes the image analysis and generates a response": {
      "main": [
        [
          {
            "node": "Rapiwa (image replay)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generates AI responses, maintains context, retrieves info": {
      "main": [
        [
          {
            "node": "Rapiwa (text replay)",
            "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 creates an intelligent WhatsApp customer support bot that can handle text, image, audio, and document messages. The workflow automatically processes incoming messages through different AI agents, maintains conversation context, accesses company knowledge bases,…

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

More AI & RAG workflows → · Browse all categories →

Related workflows

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

AI & RAG

🎯 Create viral TikToks, Shorts, Reels, podcasts, and ASMR videos in minutes — all on autopilot.

OpenAI, HTTP Request, Form Trigger +7
AI & RAG

Generate AI viral videos with NanoBanana & VEO3, shared on socials via Blotato 2. Uses @blotato/n8n-nodes-blotato, googleSheets, lmChatOpenAi, toolThink. Event-driven trigger; 94 nodes.

@Blotato/N8N Nodes Blotato, Google Sheets, OpenAI Chat +9
AI & RAG

Who is this for? Agencies, consultants, and service providers who conduct discovery calls and need to quickly turn conversations into professional proposals.

Tool Think, Tool Calculator, Agent Tool +18
AI & RAG

Jarvis is a powerful multi-agent productivity assistant built in n8n. It works directly from Telegram and can understand both text messages and voice notes.

Telegram Trigger, Telegram, OpenAI +10
AI & RAG

This template is designed for marketers, content creators, and e-commerce brands who want to automate the creation of professional ad videos at scale. It’s ideal for teams looking to generate consiste

Telegram, Telegram Trigger, Google Drive +8