SMS Error Code 113: Why Your Approved Template Is Still Getting Rejected
Your template is approved. Your campaign is ready. And yet your messages are failing with Error 113.
SMS Error Code 113 means the message you sent doesn't match the approved template registered on the DLT platform. Even a small difference in wording, spacing, punctuation, or variable values can trigger a rejection, because operators compare messages character by character, not by meaning.
This guide explains why SMS template content mismatch happens, shows real examples, walks through a step-by-step fix, and covers how to prevent it when sending through a Bulk SMS API or Bulk SMS service. At Zapim, we help businesses send messages at scale, and template mismatch is one of the most avoidable causes of failed SMS delivery.
What Does SMS Error Code 113 Mean?
SMS Error Code 113 indicates a template content mismatch: the text submitted for delivery does not match the message template registered and approved for your account. The message is blocked before it reaches the recipient.
Quick Answer: Error 113 means your SMS content doesn't exactly match your registered DLT template, so the message is rejected.
Error 113 in plain language
Think of an approved template as a fixed mold. Your message must fit that mold exactly, with only the variable fields ({#var#}) changing. If anything outside those fields differs, the message is treated as non-compliant and rejected.
Where this error appears
You'll typically see Error 113 in:
- API responses or callbacks
- Delivery reports (DLRs)
- Your messaging dashboard logs
Why Does SMS Template Content Mismatch Happen?
Template content mismatch happens when the final message text differs from the registered template in any way beyond the permitted variable fields. Under TRAI regulations, every commercial SMS in India must use a pre-registered template. This helps prevent spam and protect recipients, and operators enforce it automatically.
How DLT template matching works
Before delivery, the operator validates a few linked elements:
- Entity ID: your registered business identity
- Sender ID (header): the name or code that appears as the sender
- Template ID: the unique ID of the approved template
- Template body: the exact approved text, including {#var#} placeholders
The {#var#} placeholders are the only flexible parts of a template. Everything else must appear exactly as approved. The operator compares your final message against the registered pattern, and if it doesn't fit, you get an SMS delivery error. If you haven't registered yet, our DLT registration guide explains the process.
Top causes of template mismatch
- Text edited after approval. Someone "improves" the wording without re-registering it.
- Wrong template ID. The message text is right, but it's mapped to a different template.
- Variable values that are too long or badly formatted. Variables often have length or format limits.
- Extra or missing spaces, line breaks, or special characters. Even a double space can break a match.
- Wrong sender ID for the template. The template is linked to a specific header.
- Auto-formatting by tools. CRMs, spreadsheets, and API clients can silently insert smart quotes, hidden characters, or trailing spaces.
- Content type mismatch. A promotional message sent against a transactional or service template (or vice versa).
Common Examples of SMS Template Mismatch
The examples below use placeholder names and sample data only.
The key takeaway: template matching is character-level, not meaning-level. A message that reads perfectly well to a human can still fail validation.
How to Fix SMS Error 113 (Step-by-Step)
Follow these steps to find and fix the mismatch:
- Pull the failed message from your delivery report and copy the exact text that was sent.
- Open the approved template in your DLT portal or messaging dashboard.
- Compare the two character by character. Check spaces, punctuation, capitalization, and line breaks.
- Verify the template ID passed in your request matches the template you intended to use.
- Check your variable values for length, format, and unsupported characters.
- Confirm your sender ID and entity ID are linked to that template.
- Re-test with a single message before relaunching the full campaign.
- If the wording genuinely needs to change, submit a new template for approval. Don't edit the live message and hope it passes.
Quick troubleshooting checklist
- Is the template ID correct?
- Does the text match the approved template exactly?
- Are there extra spaces or hidden characters?
- Are variable values within the allowed length?
- Is the sender ID mapped to this template?
- Does the content type (promotional, transactional, service) match?
When to contact support
If you've checked everything and still see Error 113, share these details with your provider's support team to speed up resolution:
- Message ID and timestamp
- Template ID and sender ID
- The exact text sent
- A sample API payload (with sensitive data removed)
How to Avoid Template Mismatch When Using a Bulk SMS API
The most reliable way to avoid Error 113 in a Bulk SMS API integration is to stop building message text freely and instead map each template ID to a fixed message structure in your code. Here's how.
Validate payloads before sending
Run automated checks for variable length, allowed characters, and trimmed whitespace before a request ever reaches your Bulk SMS API.
Sanitize inputs from CRMs and spreadsheets
Strip hidden characters, convert smart quotes to standard quotes, and remove stray line breaks from imported data. This is a major, often invisible, cause of mismatches.
Separate templates and sender IDs by traffic type
Use distinct templates and sender IDs for OTP, transactional, and promotional messages. This keeps content types clean and makes errors easier to trace.
Test in small batches first
Send a handful of messages before a full campaign. A 10-message test can save you from 100,000 failed ones.
Monitor delivery reports in real time
Set alerts for spikes in Error 113 so you can pause a campaign early instead of discovering the problem afterward.
Map each template ID to a fixed message structure
Store approved template bodies in your system and populate only the variable fields. Developers and campaign managers should never be typing free-form text into the API call. Our API documentation covers how requests are structured.
Best Practices for Sending SMS Through a Bulk SMS Service
A reliable Bulk SMS service is only as good as the template discipline behind it. These habits keep rejection rates low as you scale:
- Maintain a template library. Keep version history and assign an owner to each template.
- Standardize naming conventions for templates and variables so teams know what's what.
- Run a pre-send audit for large campaigns, comparing final content against the approved template.
- Train non-technical teams. Many mismatches come from well-meaning edits by marketing or operations teams who don't know how DLT approval works.
- Review delivery analytics weekly to catch recurring failure patterns before they become costly.
- Use enterprise messaging workflows with approval steps, so no one can change live template content without review.
Sending at scale with Zapim: Zapim's Bulk SMS service and Bulk SMS API are built for businesses that send messages at scale. Pairing a dependable platform with strict template discipline is the surest way to keep delivery rates high and rejections low.
Conclusion
SMS Error Code 113 is a content-matching problem, and it's almost always preventable. Approved templates are exact patterns, and the safest approach is strict template discipline: fixed structures, validated variables, clean data, and regular monitoring.
Sending SMS at scale? Explore Zapim's Bulk SMS API and Bulk SMS Service to send business messages with confidence.
FAQs
Q1 What does SMS Error Code 113 mean?
SMS Error Code 113 means the message content doesn't match the approved template registered on the DLT platform. The message is rejected because the text, spacing, punctuation, or variables differ from what was approved.
Q2 Why is my SMS rejected even though my template is approved?
Approval only covers the exact registered text. If your sent message differs even slightly, through altered wording, extra spaces, wrong punctuation, or an incorrect template ID, it's treated as a mismatch and rejected despite the template being valid.
Q3 Can a small change like an extra space cause template content mismatch?
Yes. Template matching is character-level, so an extra space, an added punctuation mark, or a changed word can cause rejection. Hidden characters from CRMs and spreadsheets are a common cause, since they're invisible to the human eye.
Q4 How do I fix SMS Error 113 in my Bulk SMS API?
Compare the failed message with your approved template character by character. Then verify the template ID, variable values, and sender ID in your Bulk SMS API request. Send a single test message to confirm the fix before relaunching your campaign.
Q5 Do I need to re-register my DLT template if I change the message?
Yes. Any change to the fixed text of a message requires a new template to be submitted and approved. Only the content inside variable ({#var#}) fields can change without re-registration, and only within permitted limits. See our DLT registration guide for the process.
Q6 Does Error 113 mean my template ID is wrong?
Not always, but it's a common cause. Error 113 can result from the wrong template ID, but also from altered text, invalid variable values, or a sender ID that isn't linked to the template. Check all of these.
Q7 How many times can I retry a message that failed with Error 113?
Retrying won't help until the underlying mismatch is fixed. Resending identical content will fail again. Correct the template mismatch first, test with one message, and then retry the failed messages.
Q8 How can I reduce template mismatch errors in bulk campaigns?
Map template IDs to fixed message structures, validate variables before sending, sanitize imported data, and test in small batches. Monitoring delivery reports in real time also helps you catch Error 113 spikes early.