Why Failed Transactions Must Be Handled in Real Time In Nigeria's fast-growing fintech ecosystem, real-time…

SMPP Integration for Nigerian Banks: Setup, Throttling & Fallback
Why Nigerian Banks Rely on SMPP
SMPP (Short Message Peer-to-Peer) remains one of the most critical messaging protocols for financial institutions across Nigeria. With millions of customers depending on real-time alerts—transaction notifications, OTPs, fraud alerts, and loan confirmations—banks need a robust and scalable messaging pipeline.
While REST APIs have become popular for general messaging, SMPP remains unrivaled in high-throughput, low-latency environments like banking. Nigerian banks depend on this protocol to connect directly to SMS aggregators and Mobile Network Operators (MNOs) for optimal performance, control, and delivery success.
This comprehensive guide walks you through everything a Nigerian bank needs to know to set up, scale, and maintain SMPP integration—from basic setup and throughput planning to fallback design and NDPR-compliant delivery architecture.
What Is SMPP?
SMPP (Short Message Peer-to-Peer) is an open industry standard protocol designed to exchange SMS messages between Short Message Service Centers (SMSC) and External Short Messaging Entities (ESME), such as banks or service providers.
Key Benefits for Banks:
- Real-time delivery with low latency
- Direct delivery routes to MNOs
- Bulk transactional capacity (OTP, debit/credit alerts)
- High throughput with session control
- Multiple delivery reports (DLRs)
SMPP uses a binary TCP/IP connection and supports session-based communication between clients and messaging gateways, unlike stateless HTTP APIs.
SMPP vs HTTP APIs in Banking
Feature | SMPP | HTTP API |
---|---|---|
Protocol | Binary over TCP | REST over HTTP |
Throughput | 200-500+ TPS | 20-100 TPS (typical) |
DLR Support | Full | Partial or async |
Latency | Low | Higher |
Ideal Use Case | Banking & Financial Alerts | Marketing, low-volume messages |
SMPP allows banks to manage connectivity in a persistent way—ensuring every message is acknowledged at the network level, retried, and, if needed, routed through a backup provider.
Prerequisites for SMPP Integration
Before setting up SMPP, Nigerian banks need to ensure the following infrastructure is in place:
- Dedicated IP/Server: A server that can maintain long TCP connections.
- Static IP Address: Whitelisted by SMS gateway or MNO.
- Firewall & Port Settings: SMPP ports (usually 2775) should be open.
- Software/Library: Use tools like Kannel, Jasmin, or custom SMPP clients in Java, Python, or Go.
- Monitoring & Retry Engine: For failover, retries, and delivery rate visibility.
SMPP Account Types
You’ll generally encounter three SMPP account bindings:
- Transmitter (TX): Can only send messages.
- Receiver (RX): Can only receive DLRs or incoming messages.
- Transceiver (TRX): Can send and receive messages (recommended).
Example Setup Using Kannel (Linux)
Kannel is an open-source SMS gateway often used for SMPP clients.
Installation:
sudo apt-get update
sudo apt-get install kannel
Configuration:
Edit /etc/kannel/kannel.conf
:
group = smpp-client
smsc = smpp
smsc-id = aggregator_1
host = smpp.aggregator.com
port = 2775
system-id = bank_nigeria
password = YOUR_PASSWORD
interface-version = 34
bind-addr-ton = 1
bind-addr-npi = 1
source-addr-ton = 5
source-addr-npi = 0
Start the service:
sudo systemctl start kannel
Handling Delivery Receipts
DLRs are critical in banking to confirm message status.
- DLR Success: Message delivered to handset.
- DLR Failed: Phone unreachable, network failure, etc.
- NDPR Note: Store logs but do not keep PII longer than needed.
Kannel can be configured to write DLRs to a file or webhook for processing.
Throttling: Avoiding Overload & Bans
Throttling is a technique to control the number of messages sent per second.
Common MNO/aggregator thresholds:
- MTN: 100-200 TPS
- Airtel: 50-100 TPS
- Glo: 50 TPS
- 9mobile: 30 TPS
Exceeding these rates may result in temporary bans.
Implement Throttling:
- Use a queue (e.g., RabbitMQ) to limit outbound rate
- Configure client to obey TPS limits per route
- Distribute load across bind connections
Load Balancing SMPP Sessions
When sending millions of messages per day, scale horizontally:
- Multiple Binds: Spread traffic over multiple SMPP sessions.
- Connection Pooling: Maintain a pool of TRX binds.
- Shard by Traffic Type: OTPs vs alerts vs marketing.
Use round-robin or weighted routing based on TPS requirements.
Fallback Architecture for Nigerian Banks
A resilient setup includes a fallback SMPP route.
Architecture:
- Primary SMPP Bind: Connected to main aggregator
- Secondary SMPP Bind: Connected to alternate provider
- Health Checks: Ping binds every 5s
- Auto Failover: If bind fails, reroute messages
Use Redis or in-memory flags to trigger failover routing rules.
NDPR Compliance & Message Logging
- Mask phone numbers in logs
- Purge logs after 30 days
- Encrypt DLR and SMPP logs
- Host messaging infrastructure locally or on NDPR-compliant cloud
Alert and Retry Strategy
Use a retry schedule for failed messages:
- Retry after 30s → 5 min → 10 min → abandon
Retry via fallback route if DLR not received within 20s.
Monitoring Metrics
Track the following for performance:
- TPS per bind
- Bind uptime
- Average latency
- DLR success/failure ratio
- SMPP error codes (ESME_RINVDSTADR, etc.)
Use Grafana or Prometheus with log exporters.
SMPP Vendors Supporting Nigerian Banks
Several vendors offer SMPP delivery for banks:
- Yournotify (local support + NDPR compliance)
- Termii
- Infobip
- Africa’s Talking
- RouteSMS
Work with vendors offering Nigerian routes with DND delivery logic and throughput guarantees.
Best Practices Checklist
- Use TRX (transceiver) binds for send-and-receive flexibility
- Monitor bind uptime and track transactions per second (TPS)
- Set up fallback SMPP sessions with automatic failover
- Ensure compliance with Nigeria Data Protection Regulation (NDPR)
- Work only with aggregators that support Nigerian delivery with DND logic
- Implement throttling based on each MNO’s TPS limit
- Log failed messages and set up structured retry strategies
- Encrypt logs and sensitive user data at rest and in transit
- Monitor delivery ratios (DLRs) and analyze SMPP error codes
- Use health checks (e.g., every 5 seconds) to detect bind failure early
- Run on dedicated, high-availability infrastructure
- Set up automated log purging (30 days max for NDPR)
- Separate messaging flows (e.g., OTPs vs marketing) into different binds
- Scale horizontally using bind pools and traffic sharding
- Use monitoring tools like Grafana, Prometheus, or ELK for visibility
- Schedule regular delivery tests with your SMPP vendor
- Configure alerts for abnormal TPS patterns or bind drops
- Mask all MSISDNs in logs before storage
- Perform periodic compliance audits and reviews
- Maintain and document escalation paths for failures
Wrapping Up: SMPP is Mission-Critical
SMPP is still the gold standard for transactional messaging in Nigeria’s financial ecosystem. HTTP APIs work well for general use, but for serious banking alerts—nothing beats SMPP’s speed, reliability, and control.
If you’re a Nigerian bank planning to integrate or upgrade your messaging layer, consider a hybrid model: primary delivery over SMPP, fallback via HTTP. And most importantly—build for scale, security, and compliance.
Next Steps:
- Contact Yournotify to get started with an SMPP bind for Nigerian delivery
- Review your current message logs and setup for DLR failures and bottlenecks
This article is part of the Yournotify Banking Infrastructure Series.
Visit yournotify.com/blog for more implementation guides, use cases, and integration tips.