SMPP Router

High-Performance SMPP SMS Routing Engine


The Melrose Labs SMPP Router is a high-performance, scalable solution engineered for telecoms and messaging providers who require uncompromising reliability, flexibility, and precision. Capable of processing up to 5,000 transactions per second, it delivers intelligent routing for both Mobile Terminated (MT) and Mobile Originated (MO) SMS, using SMPP session context, destination-derived attributes (including country code, NDC, and MNC where available from lookups and configuration), and configurable rules—including operator- and geography-oriented logic and external policy via integrated HTTP hooks.

As we expand the capabilities of our messaging platforms, SMPP Router emerges as a foundational component for demanding environments. Whether routing by operator, geography, message attributes, or PDU-level protocol fields exposed to external logic, it handles complex message flows with ease. With support for proxy-style protocol termination and multiplexed operation across many simultaneous ESME and SMSC sessions and weighted upstream pools, carrier-grade throughput, and seamless integration with observability tools—Prometheus metrics out of the box and Grafana (and the rest of your monitoring stack) in the usual way—the platform is built for operational excellence. This is not a GUI-driven gateway—it’s a purpose-built, backend-first router designed for professionals who prioritise capability over cosmetics. In an evolving landscape of protocols, SMS remains critical—and SMPP Router ensures it retains its strategic value.

Features

Key features include:

  • ESME SMPP service — Accepts client connections with per-account routing, throughput limits, and operational controls.
  • Upstream SMSC connectivity — Connects to multiple SMSCs via configurable target groups with credentials, capacity, weighting, and high-availability options.
  • Intelligent MT routing — Rules driven by destination analysis (e.g. country, prefix, operator context) plus global and per-account route tables; optional external logic can override the chosen route.
  • MO routing to applications — Delivers mobile-originated traffic to the correct ESME account using configurable address and pattern matching.
  • Load balancing — Distributes traffic across SMSCs in a target group according to weights and health, with failover when an upstream path cannot accept a submission.
  • Bind and access control — Authenticates binds with credentials (including hashed passwords where configured) and optional source IP restrictions.
  • External Logic Integration — HTTP hook points before lookup, after lookup, and after routing for policy, enrichment, and custom handling.
  • Message and PDU shaping — Adjusts submission parameters and message content from external logic responses (addresses, encodings, protocol fields, and more).
  • Policy-driven rejection — External logic can accept, modify, or reject submissions (including DLR-style outcomes where applicable).
  • MSISDN / number lookup — Integrated lookups with caching and operational metrics; supports XConnect NPQ and other HTTP-based lookup services via configuration.
  • Multipart and long SMS — Recognises segmented submissions and keeps all parts aligned to the same upstream path for consistent delivery.
  • Observability — Prometheus-compatible metrics endpoint for monitoring and dashboards (including Grafana in your stack).
  • Call detail records — Configurable CDR output for billing, reconciliation, and analytics.
  • Management APIs — HTTP interfaces for operations, configuration, and integration workflows.
  • SMSC simulation — Built-in path for lab and integration testing without a live SMSC.

Feature availability may vary by release version.

With configurable routing tables, Mobile Terminated and Mobile Originated handling, and operator-aware logic informed by destination structure and enrichment (including NDC and MNC where available from lookups and configuration), SMPP Router is engineered to perform where it matters most. It is built for backend integration—HTTP hooks for policy and enrichment when you need them—prioritising efficiency, throughput, and reliability: industrial-grade SMS routing without compromise.

Articles, posts and tutorials

To support adoption and deepen technical understanding, we are launching a series of educational articles highlighting the capabilities of the SMPP Router - beginning with an introduction to SMPP Router, along with deploying and operation. These resources will benefit messaging engineers, operators, and integration specialists alike. To assist with learning more about SMPP Router, 30-day trial licenses are available on request from sales@melroselabs.com and provide access to all features. Topics covered will include authentication, routing strategy, load balancing, monitoring, credit control, and more. Join us as we demonstrate how SMPP Router redefines intelligent SMS routing in today’s messaging networks.

Melrose Labs SMPP Router – Article Series

  • Introduction to SMPP Router
    An overview of the platform’s purpose, design philosophy, and deployment scenarios.
  • Deploying and Operating SMPP Router
    Outlines the practical steps for installing, configuring, and operating SMPP Router.
  • Routing Mobile Originated (MO) SMS
    How MO SMS is routed to customer ESMEs using session and PDU fields.
  • Routing Mobile Terminated (MT) SMS to SMSC Targets
    Techniques for routing MT SMS using destination address, country code, NDC, and MNC.
  • Authenticating Customer ESME Binds
    Optional authentication strategies for securing ESME connections.
  • MSISDN Lookup Integration
    Using HTTP-based lookups to enrich routing logic.
  • Message Content Modification at Runtime
    When and how to alter message payloads based on defined rules.
  • Rejecting Messages Based on PDU Fields and Time Rules
    Implementing conditional logic for traffic rejection.
  • Load Balancing for ESME-to-Target and Target-to-ESME Flows
    Ensuring optimal distribution of messaging load.
  • Proxy and Multiplex Modes Explained
    Deployment considerations and use cases for each mode.
  • Monitoring and Observability with Prometheus and Grafana
    Metrics, dashboards, and operational insights.
  • Multipart Message Handling and Reassembly
    Ensuring completeness and consistency in multi-part messaging.
  • Handling SubmitSMResp NAKs with Automatic Resubmission
    Reliability features that enhance delivery success rates.
  • CDR Generation and Credit Control
    Capturing detailed delivery records and enforcing usage policies.
  • Load Testing SMPP Router: Achieving 5000 TPS
    Best practices for performance testing and benchmarking.
  • Routing Logic Configuration: NDC vs MNC and Operator Awareness
    Choosing the right approach for accurate and efficient routing.

Read these articles in the SMPP Router section on the Melrose Labs Community Forum

Download

The Debian 12 build of SMPP Router can be downloaded below. Alternatively, it can be downloaded during the "automated" installation process.


Debian 12 - 64-bit (x86)

Perpetual license with 50 TPS limit (free)

Download SMPP Router

Installation

Option 1: Automated Installation

Run the following command on your Debian 12 server. It will update the system, install required dependencies, download the latest version of SMPP Router, install it as a systemd service, and start it:


sudo apt update && \
sudo apt install -y tar apache2-utils jq && \
mkdir -p smpprouter && \
cd smpprouter && \
wget https://melroselabs.com/repo/smpprouter/opMLSMPPRouter_latest.tar.gz && \
tar -xzf opMLSMPPRouter_latest.tar.gz && \
sudo ./install.sh
			  

Option 2: Manual Installation

Alternatively, you may download the SMPP Router package and install it manually, configuring it according to your requirements and operating using tools such as systemd, screen, or tmux.

Documentation

Documentation can be found at the following link: SMPP Router documentation

Pricing

SMPP Router is available for free in limited form with the included license file enabling up to 50 TPS. No features (CDRs, ELI or MSISDN lookup) are enabled with this license. Support is not included with this free version, but may optionally be purchased below (see Support section).

Full pricing can be found at the following link: SMPP Router - Pricing

To purchase base packages (100 TPS/500 TPS), TPS upgrades and features, please contact sales@melroselabs.com.

Support

Support is available for purchased licenses at GBP 525 per year (covers all instances). Purchased base package licenses include one year of support.

Support details can be found at the following link: Support

To add support for your existing 50 TPS SMPP Router instance(s): Purchase Annual Support


Find out more...

Please provide your name.
Please provide a valid company name.
Please type your message.
Please provide a valid email address.