Deploy Whatsapp Web Multidevice
High-performance Go-based WhatsApp REST API for chatbots and automation.
Whatsapp Web Multidevice
Just deployed
/app/storages
Deploy and Host Whatsapp Web Multidevice on Railway
Whatsapp Web Multidevice is a lightweight, self-hosted WhatsApp REST API built with Go for memory efficiency and high performance. It allows users to connect and manage multiple WhatsApp accounts simultaneously in a single instance. Key features include a Web UI, webhook notifications for real-time events, Model Context Protocol (MCP) support for AI agents, and integration with Chatwoot and n8n.
About Hosting Whatsapp Web Multidevice
Hosting Whatsapp Web Multidevice on Railway provides a managed container execution environment with zero infrastructure maintenance. Railway deploys the official Docker image, provides public HTTPS networking, and manages SSL termination automatically. The deployment requires a persistent Railway Volume mounted to store WhatsApp session authentication data, SQLite database files, and cached web assets across service restarts. Built-in HTTP proxying forwards external traffic directly to the container's application port. The service operates efficiently with low resource usage, enabling fast API response times and scalable webhook handling.
Common Use Cases
- Building WhatsApp chatbots, automated customer support replies, and AI agent integrations
- Sending automated system alerts, transactional updates, and multi-device notifications
- Connecting WhatsApp accounts to CRM systems, Chatwoot, or n8n automation workflows
Dependencies for Whatsapp Web Multidevice Hosting
- Railway Volume
Deployment Dependencies
Implementation Details
Docker
This service deploys using the official Docker image:
aldinokemal2104/go-whatsapp-web-multidevice:latest
Public Networking
| Setting | Value |
|---|---|
| Proxy Type | HTTP Proxy |
| Target Port | 3000 |
Environment Variables
| Variable | Required | Description |
|---|---|---|
APP_PORT | No | Internal port for the application server (Default: 3000). |
APP_HOST | No | Host address to bind the application server (Default: 0.0.0.0). |
APP_BASIC_AUTH | Yes | Basic authentication credentials formatted as username:password. |
APP_DEBUG | No | Enables debug logging output when set to true (Default: false). |
APP_OS | No | OS device name displayed in WhatsApp active sessions (Default: Chrome). |
WHATSAPP_ACCOUNT_VALIDATION | No | Controls WhatsApp account validation check on startup (Default: false). |
WHATSAPP_WEBHOOK | No | Comma-separated list of webhook URLs for receiving incoming events. |
WHATSAPP_WEBHOOK_SECRET | No | Shared secret key used to sign HMAC webhook payloads. |
WHATSAPP_WEBHOOK_EVENTS | No | Comma-separated whitelist of events to forward (e.g., message,message.ack). |
WHATSAPP_AUTO_MARK_READ | No | Automatically marks incoming WhatsApp messages as read (Default: true). |
WHATSAPP_AUTO_REJECT_CALL | No | Automatically rejects incoming WhatsApp calls (Default: true). |
APP_PORT=3000
APP_HOST=0.0.0.0
APP_BASIC_AUTH=admin:admin
APP_DEBUG=true
APP_OS=Chrome
WHATSAPP_ACCOUNT_VALIDATION=false
WHATSAPP_AUTO_MARK_READ=true
WHATSAPP_AUTO_REJECT_CALL=true
Persistent Storage
Persistent storage is required to retain WhatsApp session keys and database state.
- Open the Railway Service dashboard.
- Go to Settings > Volumes.
- Click Add Volume.
- Set the Mount Path to:
/app/storages
This volume persists SQLite databases (whatsapp.db), session credentials, downloaded media, and UI assets across redeployments.
Database
By default, the application uses an embedded SQLite database stored locally inside the persistent volume at file:storages/whatsapp.db. An external database service is not required unless custom URIs (such as PostgreSQL) are explicitly configured in the DB_URI environment variable.
Build & Start
The official Docker image executes the following start command by default:
./whatsapp rest
No custom build or start commands are required.
Accessing the Application
- In Railway, navigate to Settings > Networking and click Generate Domain.
- Open the generated domain URL in your browser to access the Web Dashboard.
- Log in using the credentials defined in
APP_BASIC_AUTH. - Scan the presented QR code or use pair code authentication to pair your WhatsApp devices.
Why Deploy Whatsapp Web Multidevice on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Whatsapp Web Multidevice on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
Whatsapp Web Multidevice
aldinokemal2104/go-whatsapp-web-multidevice:latestWHATSAPP_WEBHOOK
Webhook URL(s) for events (comma-separated)