Connect OpenClaw to Zalo
Integrate OpenClaw with Zalo, Vietnam's leading messenger with 75M+ users, using the zalouser plugin.
- ✓#1 in Vietnam — 75M+ active users, dominant market position
- ✓Local Integration — Deep integration with Vietnamese services
- ✓Business Features — Zalo Official Account for professional bots
- ✓Rich Media — Support for images, files, and structured messages
- ✓Payment Integration — ZaloPay integration for transactions
🔌 Plugin Required
Zalo integration requires the zalouser plugin. Install it before proceeding:
openclaw plugin install zalouserSetup Steps
Create a Zalo Official Account
Set up an Official Account for your bot:
- • Go to Zalo Official Account
- • Log in with your Zalo account
- • Create a new Official Account
- • Complete the verification process
Create an App in Zalo Developers
Register your application:
- • Go to Zalo Developers
- • Create a new application
- • Enable the "Official Account API" product
- • Link it to your Official Account
Get API Credentials
Retrieve the required credentials:
- • In the app settings, find App ID and App Secret
- • Generate an OA Access Token
- • Note your Official Account ID (OA ID)
Configure Webhook
Set up the webhook for receiving messages:
- • In the Official Account API settings, find webhook configuration
- • Set webhook URL:
https://your-server.com/webhook/zalo - • Subscribe to events: "user_send_text", "user_send_image", etc.
- • Verify the webhook connection
Configure OpenClaw
Add the Zalo configuration to your openclaw.json:
{
"channels": {
"zalo": {
"enabled": true,
"plugin": "zalouser",
"appId": "YOUR_APP_ID",
"appSecret": "YOUR_APP_SECRET",
"oaId": "YOUR_OA_ID",
"accessToken": "YOUR_OA_ACCESS_TOKEN",
"allowFrom": ["USER_ID_1"]
}
}
}Restart and Test
Start chatting with your bot:
openclaw restart- • Open Zalo and search for your Official Account
- • Follow the account
- • Send a message to test the connection
{
"channels": {
"zalo": {
"enabled": true,
"plugin": "zalouser",
"appId": "YOUR_APP_ID",
"appSecret": "YOUR_APP_SECRET",
"oaId": "YOUR_OA_ID",
"accessToken": "YOUR_OA_ACCESS_TOKEN",
"allowFrom": ["USER_ID_1", "USER_ID_2"],
"respondToFollowers": true,
"useStructuredMessages": true,
"webhookUrl": "https://your-server.com/webhook/zalo",
"tokenRefreshInterval": 3600
}
}
}plugin— Required: must be "zalouser"oaId— Your Official Account IDrespondToFollowers— Only respond to account followersuseStructuredMessages— Enable rich message templates
- ✓Text Messaging — Full bidirectional text chat support
- ✓Image Support — Send and receive images
- ✓Structured Messages — Templates, buttons, and list messages
- ✓User Profile — Access user profile information
- ✓Event Tracking — Track follows, unfollows, and interactions
Plugin not found?
Make sure the zalouser plugin is installed: openclaw plugin list
Webhook not receiving events?
Verify webhook URL is HTTPS and publicly accessible. Check subscription events in Zalo Developers.
Access token expired?
Zalo tokens expire. Re-generate the OA Access Token in the developer console.
For more detailed configuration options and advanced features, visit the official documentation:
docs.openclaw.ai/channels/zalo →