Overview
This node is designed to receive and process incoming webhooks from the Zalo platform. It acts as a webhook receiver that listens for POST requests sent by Zalo to a specified URL. The node extracts relevant data from these webhook requests and makes it available for further workflow processing in n8n.
Common scenarios where this node is beneficial include:
- Integrating Zalo messaging events into automation workflows.
- Triggering actions in response to user interactions on Zalo.
- Collecting real-time updates or notifications from Zalo services.
Practical example:
- When a user sends a message to a Zalo Official Account, Zalo sends a webhook to the configured URL. This node captures that webhook, extracts the message details, and triggers an n8n workflow to respond automatically or log the interaction.
Properties
| Name | Meaning |
|---|---|
| User Agent | Optional string to specify the User-Agent header when making HTTP requests (if applicable). |
| Proxy | Optional proxy URL to route HTTP requests through, formatted as http(s)://username:password@host:port. |
| Webhook URL | Required. The public URL where Zalo will send webhook POST requests. This must be accessible by Zalo's servers. |
Output
The node outputs JSON data representing the content of the webhook received from Zalo. The output includes:
user: Information about the user who triggered the webhook event.request_id: A unique identifier for the webhook request.- Additional fields extracted from the webhook payload, such as message content or event details.
If the webhook contains binary data, it would be handled accordingly, but based on the code, the primary output is JSON with structured webhook information.
The output is structured as an array of items, each containing a json property with the webhook data.
Dependencies
- Requires an active internet-accessible webhook URL to receive POST requests from Zalo.
- No explicit external API keys or credentials are shown in the code snippet, but the node expects the webhook URL to be correctly configured in Zalo's developer console.
- Uses internal HTTP request handling libraries (bundled within n8n) to process incoming webhook data and optionally make outgoing HTTP requests.
Troubleshooting
Common Issues
- Webhook URL not reachable: If Zalo cannot reach the provided webhook URL, no data will be received. Ensure the URL is publicly accessible and correctly configured.
- Invalid webhook payload: If Zalo sends malformed data or unexpected formats, the node may fail to parse the webhook correctly.
- Proxy misconfiguration: If using a proxy, incorrect proxy settings can prevent successful communication.
Error Messages and Resolutions
- Missing required property "Webhook URL": Ensure the webhook URL is set and valid.
- Timeout or connection errors: Verify network connectivity and that the webhook URL is accessible from the internet.
- Parsing errors: Check that the webhook payload matches expected Zalo webhook formats.
Links and References
- Zalo Official Account Developer Documentation
- n8n Webhook Node Documentation
- How to Set Up Webhooks in n8n
Note: The source code was heavily obfuscated, so the summary is based on static analysis of the input properties, output structure, and typical webhook node behavior. Internal credential names and specific implementation details were omitted per instructions.