DLT registration for SMS and voice in India
Every commercial message to an Indian mobile number passes through the DLT framework. This is what DLT is, the four things you register, how they show up in an API call, and the mistakes that hold approvals up.
What DLT is, and why it exists
DLT — Distributed Ledger Technology — is the framework TRAI, the Telecom Regulatory Authority of India, put in place to cut spam and unsolicited commercial communication. Every business that sends commercial SMS or voice registers itself, its sender names, and its message templates on a DLT platform run by the operators. The operators then only deliver traffic that matches a registration.
In practice that means you can't send a message to an Indian number from an unregistered sender or with unregistered content. It sounds heavy, but once the registration is done it runs in the background: you pass two identifiers on each send, and compliant traffic goes through while non-compliant traffic is stopped at the gate rather than after you've paid for it.
The four things you register
1. Principal entity
Your business, registered with its PAN, GST, and other documents. Approval gives you a principal entity ID that identifies you across everything else you register.
2. Headers (sender IDs)
The six-character names a message appears to come from, like SMSAPI. Each header is registered against a purpose — transactional, service, or promotional — and approved before it can be used.
3. Content templates
The exact message text, with the parts that change marked as variables. Each template is registered in a category and gets a template ID. You can fill the variables per send, but the fixed text is locked to what was approved.
4. Consent and category
How you collect opt-in, and which category a template belongs to. The category decides whether a message can reach a number on DND and at what hours, so getting it right at registration matters more than anything else.
How it shows up when you send
On the API, DLT is two fields: your principal entity ID and the template ID for the message you're sending, alongside the registered header. We validate both against the registry before the message leaves, so a template ID that doesn't match the content, or a header that isn't approved for that category, fails immediately with a clear error rather than being accepted and then scrubbed by the operator.
That fail-fast behaviour is the point: a scrubbed message still costs you and still misses the customer, while a rejected API call costs nothing and tells you exactly what to fix. The bulk SMS API and the OTP API both take the same two identifiers.
Template categories, briefly
Transactional and service-implicit messages — OTPs, account alerts, a delivery update — are a direct response to something the customer did, so they reach any number at any hour and are exempt from DND. Service-explicit messages are service updates a customer consented to receive. Promotional messages are marketing, and they respect DND and permitted hours.
The same sentence can be compliant in one category and rejected in another, which is why category is the first decision, not an afterthought. A promotional message dressed up as transactional is the classic mistake — it gets the template rejected or, worse, the traffic scrubbed after launch.
NDNC and consent
The National Do Not Call (NDNC) registry lets people opt out of promotional contact. Promotional SMS and voice are scrubbed against it; transactional and service traffic is not, because it isn't marketing. Consent is yours to collect and evidence — we keep the per-message records, honour opt-outs immediately, and apply them across channels, so a customer who opts out of WhatsApp marketing isn't then sent a promotional SMS.
Voice follows the same framework
DLT isn't only an SMS rule. Outbound voice — a recorded broadcast, a reminder call, an OTP read aloud — registers a calling line and a message template the same way, and promotional voice is scrubbed against NDNC just like promotional SMS. A voice OTP or a service call reaches the customer as a response and is exempt, while a marketing call is held to permitted hours.
If a flow mixes channels — a missed call that triggers an SMS, say — each leg follows its own registration, but the consent and the opt-out are shared. The voice broadcasting pages cover the voice side in more detail.
What holds approvals up
- — A template whose category doesn't match its content.
- — Variables used for content that should be fixed, or fixed text that needs a variable.
- — A header that hasn't been approved for the category you're sending on.
- — Entity documents that don't match across PAN, GST, and the registration.
We draft headers and templates to clear these on the first pass, so the registration is days rather than weeks of back-and-forth.
Frequently asked
How long does DLT registration take?
Principal entity registration is often approved within a day or two once your business documents are in order. Header and template approvals are usually faster. The common cause of delay is a template whose category or wording doesn't match its content, which bounces for a correction — we draft templates to avoid that.
What is a principal entity ID?
It's the identifier issued to your business when you register as a principal entity on a DLT portal. You pass it on every message so the operator can tie the traffic back to a registered sender. It stays the same across all your headers and templates.
Do OTPs and alerts need DLT too?
Yes. Every commercial SMS to an Indian number goes through DLT, including OTPs and transactional alerts. The difference is the category: service and transactional messages are exempt from DND scrubbing and time-of-day rules, while promotional messages are not.
Can I reuse a template with different content?
Only within the variables the template defines. The fixed text is approved as-is; the parts that change are marked as variables. If you need materially different wording, you register a new template. Sending content that doesn't match an approved template is the most common reason messages get scrubbed.
Who registers all this — me or SMSAPI?
You own the principal entity registration, because it's tied to your business identity. We handle the header and template registration with you, validate your entity and template IDs on every send, and tell you up front what documents the entity registration needs so nothing stalls.
Does DLT apply to WhatsApp?
No. DLT is the SMS and voice framework. WhatsApp is governed separately by Meta's template approval and your opt-in. If you send both, the SMS leg follows DLT and the WhatsApp leg follows Meta's rules, and we keep the consent consistent across the two.
What documents does principal entity registration need?
Typically your PAN, GST registration, and a letter of authorisation, with details that match across all of them. Mismatches between the PAN, the GST record, and the registration are a common reason an entity application is sent back, so we check them before submission.
Can I start sending before registration is fully done?
You need an approved header and at least one approved template to send live, because the operator validates them. While the principal entity and templates are in review, we set up everything on our side so you go live the moment approval lands rather than starting the integration then.