Railway

Deploy Whatsapp Web Multidevice

High-performance Go-based WhatsApp REST API for chatbots and automation.

Deploy 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

SettingValue
Proxy TypeHTTP Proxy
Target Port3000

Environment Variables

VariableRequiredDescription
APP_PORTNoInternal port for the application server (Default: 3000).
APP_HOSTNoHost address to bind the application server (Default: 0.0.0.0).
APP_BASIC_AUTHYesBasic authentication credentials formatted as username:password.
APP_DEBUGNoEnables debug logging output when set to true (Default: false).
APP_OSNoOS device name displayed in WhatsApp active sessions (Default: Chrome).
WHATSAPP_ACCOUNT_VALIDATIONNoControls WhatsApp account validation check on startup (Default: false).
WHATSAPP_WEBHOOKNoComma-separated list of webhook URLs for receiving incoming events.
WHATSAPP_WEBHOOK_SECRETNoShared secret key used to sign HMAC webhook payloads.
WHATSAPP_WEBHOOK_EVENTSNoComma-separated whitelist of events to forward (e.g., message,message.ack).
WHATSAPP_AUTO_MARK_READNoAutomatically marks incoming WhatsApp messages as read (Default: true).
WHATSAPP_AUTO_REJECT_CALLNoAutomatically 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.

  1. Open the Railway Service dashboard.
  2. Go to Settings > Volumes.
  3. Click Add Volume.
  4. 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

  1. In Railway, navigate to Settings > Networking and click Generate Domain.
  2. Open the generated domain URL in your browser to access the Web Dashboard.
  3. Log in using the credentials defined in APP_BASIC_AUTH.
  4. 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

More templates in this category

View Template
N8N Main + Worker
Deploy and Host N8N with Inactive worker.

jakemerson
120
View Template
Evolution API with n8n
[Jul'26] WhatsApp automation platform using Evolution API, n8n & PostgreSQL

codestorm
56
View Template
Postgres Backup
Cron-based PostgreSQL backup to bucket storage

Railway Templates
868