🔓 TRAI DLT TCCCPR 2018

DLT SMS Error Codes India 2025 — Complete Reference Guide

Every DLT Scrubbing Error Code Explained — With Cause & Step-by-Step Fix

When a bulk SMS fails to deliver in India, a DLT error code is generated by the telecom operator's scrubbing engine — identifying exactly which component of your DLT registration has failed. This complete reference guide covers every TRAI DLT error code across all six categories: Entity (PE), Telemarketer (TM) & PE–TM Binding, Header (Sender ID), Template & Content, Preference & DND, and General Scrubbing — with the cause and resolution for each error.

What is DLT Scrubbing and Why Do SMS Fail?

DLT scrubbing is the real-time validation process performed by India's telecom operators on every commercial SMS submitted for delivery. Before any message is transmitted to the recipient's handset, the operator's DLT platform checks every component of the SMS submission against the TRAI-registered records on the DLT blockchain — including the Principal Entity (PE) ID, the Sender ID (Header), the Content Template ID, the PE–TM Binding Chain, and the recipient's preference (DND) status.

If any of these components fails validation — because it is unregistered, inactive, blacklisted, mismatched, or missing — the message is blocked and a DLT error code is returned to the sending platform. This error code appears in your Fivo SMS delivery report and identifies the exact reason your message was not delivered.

Understanding these error codes is essential for diagnosing and resolving delivery failures quickly — and for maintaining a consistently high SMS delivery rate for your business.

🔄 How DLT Scrubbing Works — Step by Step

1

Message Submitted by Business

Your application or Fivo SMS panel submits an SMS with the PE ID, Header ID, Template ID, and message content to the operator gateway.

2

DLT Scrubbing Engine Validates

The operator's DLT scrubbing engine checks: Is the PE ID registered and active? Is the Header registered for this PE? Is the Template registered and linked to this Header? Does the submitted message exactly match the registered template? Is the PE–TM binding chain active?

3

DND & Preference Check

For Promotional and Service Explicit messages, the platform checks whether the recipient is DND-registered and whether the message is being sent within permitted hours (10:00 AM to 9:00 PM for promotional SMS).

4

Pass → Delivered / Fail → Error Code

If all checks pass, the message is transmitted to the recipient. If any check fails, the message is blocked and a DLT error code is returned to the Fivo SMS platform — visible in your delivery report.

⚠️ DLT Scrubbing Charge: A DLT scrubbing charge of ₹0.025 per SMS unit is levied by the telecom operator on every commercial SMS submitted — including messages that fail DLT scrubbing. This charge is separate from the per-SMS delivery cost and is not refunded for failed messages. Keeping your DLT registrations accurate and up-to-date minimises failed submissions and avoids unnecessary scrubbing charges.

How to Prevent DLT Errors — Pre-Campaign Checklist

The majority of DLT errors are preventable with correct setup and regular maintenance of your DLT registrations. Before running any bulk SMS campaign, verify the following:

✅ Entity & Binding Checks

  • PE registration is Active on DLT portal
  • Annual DLT panel subscription is renewed
  • PE ID entered correctly in Fivo SMS settings
  • PE–TM Binding Chain status is Active
  • PE–TM Hash value is correct in Fivo SMS

🔢 Header Checks

  • Header status is Active on DLT portal
  • Header validity period has not expired
  • Header spelling is entered exactly (case-sensitive)
  • Header is registered under the correct PE ID
  • Header category matches the SMS route being used

📋 Template Checks

  • Template ID entered correctly in Fivo SMS
  • Template status is Active on DLT portal
  • Template text matches registered content exactly
  • All variables are pre-tagged (post Oct 2024)
  • Variable values do not exceed 30 characters
  • All URLs/CTAs in template are whitelisted
  • Template is linked to the correct Header
  • Brand name is present in the template text

🚫 DND & Time Checks

  • Promotional list scrubbed against TRAI DND
  • Promotional campaigns scheduled 10AM–9PM IST only
  • SE-route consent records valid and registered
  • Correct route used for content category

🏛

Group 1 — Principal Entity (PE) Errors  Error Codes 600–609 & 7001–7005

Errors related to your business's Principal Entity registration on the TRAI DLT platform.

Code Status Meaning Severity How to Fix
600 ENTITY_NOT_FOUND No DLT record found matching the Entity ID (PE ID) submitted with the message. The PE ID does not exist on the DLT platform. 🔴 High Verify your PE ID in your DLT panel. Ensure you are passing the correct 13-character PE ID (format: XXXXXXXXXX) in your API call or Fivo SMS panel settings.
601 ENTITY_NOT_REGISTERED Your business has not completed Principal Entity registration on any DLT portal. No entry exists for this entity on the TRAI DLT platform. 🔴 High Complete PE registration on a TRAI-authorised DLT portal (Airtel SmartPing, Jio TrueConnect, VILPOWER, BSNL UCC, Tattele, or PingConnect). View DLT Guide >>
602 ENTITY_INACTIVE Your PE registration exists on the DLT platform but has been marked as inactive — typically due to expired annual DLT panel subscription or non-renewal. 🔴 High Log in to your DLT portal and renew your annual DLT panel subscription. Once renewed, your PE status will revert to Active within 1–2 business days.
603 ENTITY_BLACKLISTED Your PE has been blacklisted across all DLT platforms — typically due to repeated violations of TRAI TCCCPR 2018 regulations, spam complaints, or fraudulent activity. 🔴 High Contact the DLT operator where your PE is registered to understand the specific grounds for blacklisting and the procedure for appeal. Blacklisting is enforced at TRAI's direction and may require regulatory resolution. Contact Fivo SMS support for guidance.
604 INVALID_ENTITY_ID The PE ID submitted with the message is in an incorrect format, contains invalid characters, or the PE ID field tag is missing entirely from the API request. 🔴 High Check that your PE ID is exactly 13 characters in the correct format. Verify that the Entity ID field is correctly tagged in your API request payload. Update the PE ID in your Fivo SMS account settings if it is incorrectly entered.
605 ENTITY_ID_NOT_ALLOWED_FOR_TM The PE–TM Binding Chain between your Principal Entity and Fivo SMS (your Telemarketer) is not approved or is not active on the DLT platform. 🔴 High Complete the PE–TM Binding Chain process on your DLT portal and notify Fivo SMS to approve the binding from our side. View PE–TM Guide >>
7001 ENTITY_INACTIVE (Alt) Platform-specific alternative code for Entity Inactive (same as 602). Generated by certain operator platforms. 🔴 High Same resolution as error 602 — renew your DLT panel annual subscription to reactivate your PE.
7002 ENTITY_BLACKLISTED (Alt) Platform-specific alternative code for Entity Blacklisted (same as 603). 🔴 High Same resolution as error 603 — contact your DLT operator to understand the grounds for blacklisting and the appeal process.
7003 ENTITY_NOT_IN_DB Platform-specific alternative code for Entity Not Registered (same as 601). 🔴 High Same resolution as error 601 — complete PE registration on a TRAI-authorised DLT portal.
7004 ENTITY_ID_BLANK The PE ID field is completely absent or blank in the SMS submission payload. 🔴 High Add your PE ID to your Fivo SMS account settings. If using the API, ensure the Entity ID parameter is included and populated in every SMS request payload.
7005 ENTITY_OP_INACTIVE Your PE Entity is inactive at the specific operator's DLT platform end — even if active on the portal where you originally registered. 🟠 Medium Check your PE status on all operator DLT portals. Cross-operator sync can sometimes lag. Contact the relevant operator's DLT support team directly to reactivate your PE at their end.
🔗

Group 2 — Telemarketer (TM) & PE–TM Binding Chain Errors  Codes 610–619 & 812–813

Errors related to Fivo SMS as your registered Telemarketer and the PE–TM Binding Chain linking your PE to our platform.

📌 TRAI PE–TM Binding Enforcement (11 December 2024): From 11 December 2024, TRAI enforced mandatory PE–TM binding chain scrubbing for all commercial SMS in India. Any SMS without a valid, mutually approved PE–TM binding chain is blocked by all operators. If you are seeing errors 610–619 or 812–813, your PE–TM binding chain with Fivo SMS is the first place to check. PE–TM Binding Guide >>
Code Status Meaning Severity How to Fix
610 TELEMARKETER_NOT_REGISTERED Fivo SMS (your Telemarketer) is not registered on the DLT platform. This may indicate an incorrect Telemarketer ID was used in the binding request. 🔴 High Contact Fivo SMS support to verify the correct Telemarketer ID for your DLT portal operator. Re-submit the PE–TM binding request using the correct TM ID provided by us.
611 TELEMARKETER_INACTIVE Fivo SMS's Telemarketer registration is inactive on the operator's DLT platform. This is typically a platform-side issue with the Telemarketer's DLT registration status. 🔴 High Contact Fivo SMS support immediately at support@fivosms.co.uk or +91 9310 189 890 so we can resolve the Telemarketer status on our end.
612 TELEMARKETER_BLACKLISTED Fivo SMS's Telemarketer registration has been blacklisted across all DLT platforms. This is an exceptional scenario and would be caused by a regulatory enforcement action. 🔴 High Contact Fivo SMS support immediately. This is a critical platform-level issue that requires immediate resolution from our side.
613 TELEMARKETER_NOT_ALLOWED_FOR_ENTITY Fivo SMS is not authorised to send messages for your PE on the DLT platform — meaning the PE–TM Binding Chain has not been completed or has not been approved by both parties. 🔴 High Submit the PE–TM binding request from your DLT portal and notify Fivo SMS so we can approve it from our Telemarketer side. Both-party approval is mandatory. Binding Guide >>
614 PE_TM_HASH_NOT_RECEIVED The PE–TM Hash (the unique identifier for your PE–TM binding link) was not submitted with the SMS message payload. 🔴 High Ensure your Fivo SMS account settings contain the correct PE–TM Hash value. If using the API, verify the hash parameter is being passed correctly in every request. Contact Fivo SMS support for the correct hash value.
615 PE_TM_HASH_NOT_REGISTERED The PE–TM Hash submitted does not exist on the DLT platform — indicating the binding has not been completed or the hash value is incorrect. 🔴 High Re-submit the PE–TM binding request from your DLT portal. After both-party approval, obtain the new binding hash and update your Fivo SMS account settings.
616 PE_TM_HASH_INACTIVE The PE–TM binding chain exists on the DLT platform but is currently inactive — due to expiry, suspension, or non-renewal of the binding. 🔴 High Log in to your DLT portal and check the status of your PE–TM binding chain. Reactivate or re-submit the binding request. Notify Fivo SMS to approve the reactivation.
617 PE_TM_HASH_BLACKLISTED The PE–TM binding chain has been blacklisted — typically due to regulatory enforcement following non-compliant traffic detected through this binding. 🔴 High Contact Fivo SMS support immediately. This requires investigation and resolution with the DLT operator and TRAI before any SMS traffic can resume.
618 PE_TM_HASH_SUSPENDED The PE–TM binding chain has been temporarily suspended — due to regulatory action, operator suspension, or pending compliance review. 🔴 High Contact Fivo SMS support at support@fivosms.co.uk so we can investigate the suspension reason and work with you to restore the binding chain status.
812 MISSING_PETM_HASH The PE–TM Hash linkage record is missing from the operator's internal database — even though the binding may appear approved on the DLT portal. A platform-sync issue. 🟠 Medium Contact Fivo SMS support with your PE ID and the error details. This may require the operator to force-sync the binding record at their backend. Usually resolved within 1 business day.
813 PE_ID_MISMATCH The PE ID submitted in the message does not match the PE ID that is linked to Fivo SMS as Telemarketer in the DLT database — a configuration mismatch. 🔴 High Verify the exact PE ID registered in your Fivo SMS account settings matches your DLT-registered PE ID precisely. Even a single character mismatch will cause this error. Update your Fivo SMS account settings with the correct PE ID.
🔢

Group 3 — Header (Sender ID) Errors  Error Codes 620–629

Errors related to the 6-character Sender ID (Header) registered on your DLT portal.

Code Status Meaning Severity How to Fix
620 HEADER_NOT_FOUND The Sender ID (Header) submitted with the message is not found on the DLT platform. This is a case-sensitive check — even a capitalisation difference will cause this error. 🔴 High Log in to your DLT portal and verify the exact registered Header name — it is case-sensitive. Ensure the Header entered in your Fivo SMS panel or API request matches the registered Header exactly, character for character.
621 HEADER_INACTIVE Your registered Sender ID (Header) exists on the DLT platform but is currently inactive — due to expiry of validity period, non-usage suspension, or manual deactivation. 🔴 High Log in to your DLT portal and check the Header's status and validity date. Renew the Header's validity or reactivate it through the DLT portal's Header management section.
622 HEADER_BLACKLISTED Your Sender ID (Header) has been blacklisted across all DLT platforms — typically due to spam, fraudulent, or abusive message content being sent through this Header. 🔴 High Contact your DLT operator to understand why the Header was blacklisted. Depending on the grounds, you may be able to appeal the blacklisting. If the Header cannot be restored, register a new Header on your DLT portal.
623 PEID_NOT_MATCHED_WITH_HEADER The PE ID submitted with the message does not match the PE ID under which this Header (Sender ID) was registered on the DLT platform. 🔴 High Verify that you are using the correct PE ID for the Header being used. Each Header is registered under a specific PE ID — you cannot use a Header registered under one PE ID with a different PE ID.
624 HEADER_SUSPENDED_DUE_TO_VALIDITY The Header has been automatically suspended because its registered validity period has expired and has not been renewed. 🟠 Medium Log in to your DLT portal and renew the Header's validity period. Once renewed, the Header status will return to Active — typically within 1 business day.
625 HEADER_SUSPENDED_DUE_TO_USAGE The Header has been automatically suspended due to extended non-usage — the Header has not been used to send any messages for a prolonged period as defined by the operator. 🟠 Medium Log in to your DLT portal and reactivate the Header through the Header management section. Contact your DLT operator's support if reactivation is not available through self-service.
626 HEADER_SUSPENDED_DUE_TO_CUSTOMER The Header has been suspended due to an action taken by the Principal Entity itself — e.g. the PE manually suspended the Header through the DLT portal. 🟠 Medium Log in to your DLT portal and reactivate the Header. If you did not intentionally suspend it, check whether another authorised user of your DLT account has made changes to the Header status.
627 / 629 HEADER_MISUSED_FOR_INVALID_CONTENT Invalid, spam, or prohibited content has been detected being sent through this Sender ID — triggering an operator-level content violation flag on the Header. 🔴 High Review all content being sent through this Header for compliance with TRAI TCCCPR 2018 content restrictions. Ensure all templates are registered, all variables are correctly tagged, and no prohibited content categories are being transmitted. Contact Fivo SMS support for compliance guidance.
📋

Group 4 — Template & Content Errors  Error Codes 630–649

The most common DLT errors — caused by template mismatches, unregistered templates, or content violations.

⚠️ October 2024 — TRAI Variable Tagging Enforcement: From 1 October 2024, all variables in DLT content templates must be pre-tagged according to their purpose (OTP, amount, date, name, URL, etc.). Untagged generic {#var#} variables are no longer permitted. Businesses with untagged templates will see increased template errors from this date. Update all templates with correct variable tags to resolve.
Code Status Meaning Severity How to Fix
630 TEMPLATE_NOT_FOUND No DLT record found for the Template ID submitted with the message. The Template ID does not exist on the DLT platform. 🔴 High Verify the Template ID in your DLT portal. Ensure the exact Template ID is entered in your Fivo SMS panel (Manage Templates). Register and get template approval if it does not yet exist. Template Guide >>
631 TEMPLATE_INACTIVE The template exists on the DLT platform but its status is Inactive — due to expiry of validity, suspension, or prolonged non-usage. 🔴 High Log in to your DLT portal and reactivate the template through the Template management section. Check the template's validity period and renew if expired.
632 TEMPLATE_BLACKLISTED The template has been blacklisted across all DLT platforms — typically because it was used to send spam, fraudulent, or prohibited content. 🔴 High Do not attempt to use this template again. Register a new, compliant template on your DLT portal. Review the content that was being sent to ensure future templates comply with TRAI content guidelines.
633 TEMPLATE_NOT_MATCHED The most common DLT error. The actual SMS content submitted does not exactly match the registered DLT template — including differences in spacing, punctuation, capitalisation, or fixed-text wording. 🔴 High Compare your actual message content character-by-character against the registered template text in your DLT portal. Even a single extra space, full stop, or capital letter difference will cause this error. Update the template in Fivo SMS to exactly match the approved DLT template text.
634 HEADER_NOT_REGISTERED_FOR_TEMPLATE The Sender ID (Header) being used is not linked to the Template ID being submitted. Each template must be registered under a specific Header. 🔴 High In your DLT portal, verify that this template is registered under the correct Header. If not, re-register the template under the intended Header. Ensure you are using matching Header and Template ID combinations in your Fivo SMS campaigns.
635 TEMPLATE_VARIABLE_EXCEEDED_MAX_LENGTH A variable field in the message content exceeds the maximum permitted length of 30 characters (including spaces and punctuation) as configured in the registered template. 🟠 Medium Reduce the length of the variable content being inserted at the {#var#} position to 30 characters or fewer. If longer variable values are genuinely required, update the registered template with a higher variable length limit (if permitted by the operator).
636 ERROR_IDENTIFYING_TEMPLATE The DLT scrubbing engine encountered an error while attempting to identify the correct template for the submitted message — often a platform-side processing issue. 🟠 Medium Retry the message after a short delay. If the error persists, contact Fivo SMS support with the message details and Template ID so we can investigate the scrubbing engine response.
637 INVALID_TEMPLATE_ID The Template ID submitted is in an incorrect format, contains invalid characters, or the Template ID field is missing from the API request payload. 🔴 High Verify the Template ID from your DLT portal and enter it correctly in your Fivo SMS panel. If using the API, ensure the Template ID parameter is correctly named and populated in every request.
638 ENTITY_NOT_REGISTERED_FOR_TEMPLATE The PE ID submitted does not match the Principal Entity under which the submitted Template ID is registered on the DLT platform. 🔴 High Verify that the Template ID you are using was registered under your specific PE ID. You cannot use templates registered under a different entity's PE ID.
639 TEMPLATE_SUSPENDED_DUE_TO_VALIDITY The template's validity period has expired and it has been automatically suspended by the DLT platform. 🟠 Medium Log in to your DLT portal and renew the template's validity period. Once renewed, the template will return to Active status — typically within 1 business day.
640 TEMPLATE_SUSPENDED_DUE_TO_USAGE The template has been suspended due to extended non-usage — it has not been used for messaging for a prolonged period as defined by the operator. 🟠 Medium Log in to your DLT portal and reactivate the template. If reactivation is not available, re-register a new template with the same content.
641 TEMPLATE_SUSPENDED_DUE_TO_CUSTOMER The template has been suspended by the Principal Entity's own action — either manually, or as a result of an account-level change. 🟠 Medium Log in to your DLT portal and reactivate the template. Check whether another authorised user of your DLT account has made changes to the template status.
642 CTA_NOT_WHITELISTED The template contains a URL, phone number, or other Call-to-Action (CTA) element that has not been whitelisted on the DLT portal. From October 2024, all domains and CTAs in templates must be whitelisted. 🔴 High Log in to your DLT portal and whitelist the domain/URL or phone number included in your template. After whitelisting is approved, update the template submission. Do not use non-whitelisted domains or URLs in any DLT template. This is a mandatory TRAI requirement effective from October 2024.
🚫

Group 5 — Preference (DND) & Consent Errors  Error Codes 650–669

Errors caused by the recipient's Do Not Disturb (DND) registration, time restrictions, or missing consent.

⚠️ Promotional SMS Time Restriction — TRAI TCCCPR 2018: Promotional SMS may only be sent between 10:00 AM and 9:00 PM (Indian Standard Time). Any promotional message submitted outside this window will be blocked with error 651 (INVALID_PROMO_TIME). The only exception is bank/financial transaction OTPs, which may be sent at any time.
Code Status Meaning Severity How to Fix
650 PREFERENCE_NOT_MATCHED The recipient's mobile number is registered on the TRAI Do Not Disturb (DND) list for the message category you are sending. The message has been blocked to respect the subscriber's communication preference. 🟢 Normal This is expected and correct behaviour — the recipient has opted out of receiving this category of commercial communication. Do not attempt to send to DND-registered numbers using Promotional routes. Scrub your contact lists against the TRAI DND registry before sending Promotional campaigns. This error does not indicate a problem with your DLT registration.
651 INVALID_PROMO_TIME A Promotional SMS was submitted outside of TRAI-permitted hours (before 10:00 AM or after 9:00 PM IST). The message has been blocked by the DLT scrubbing engine. 🟢 Normal Schedule Promotional SMS campaigns to send only between 10:00 AM and 9:00 PM IST. Use the campaign scheduling feature in your Fivo SMS panel to ensure promotional messages are delivered within permitted hours. This is a TRAI regulatory restriction — not a platform error.
652 SE_CATEGORY_BLOCK A Service Explicit (SE) category message has been blocked for a recipient who is fully DND-registered and has not provided explicit consent to receive Service Explicit communications from your business. 🟠 Medium Service Explicit messages require the recipient's prior explicit consent — even if they are DND-registered — as they relate to services the customer has specifically subscribed to. Ensure your consent records for SE-category recipients are valid and properly registered on the DLT consent platform before sending SE messages to DND numbers.
660 CONSENT_FAILED A general consent error — the consent record for the recipient is missing, expired, or invalid for the category of message being sent. Most commonly seen for Service Explicit route messages. 🟠 Medium Verify the consent record for the recipient on your DLT portal's consent management section. Ensure consent was collected correctly, registered on the DLT platform, and is still within its validity period. Do not send Service Explicit messages to recipients without valid, registered consent.
⚙️

Group 6 — General Scrubbing Errors  Error Code 670

General exception errors generated during the DLT scrubbing process when no specific error category applies.

Code Status Meaning Severity How to Fix
670 SCRUBBING_FAILED A general exception occurred during the DLT scrubbing process that does not map to a specific error category. This may be caused by a temporary platform issue, data sync delay, or an unusual combination of submission parameters. 🟠 Medium Retry the message submission after a short delay (5–10 minutes). If the error recurs consistently, contact Fivo SMS support with the affected message details, Template ID, Header, and PE ID — so we can investigate the scrubbing engine response with the operator.

Still Seeing a DLT Error? We Can Help.

Contact the Fivo SMS compliance and support team — provide us with the error code, your PE ID, Header, and Template ID and we will diagnose and resolve the issue with you directly.

Contact Support DLT Registration Guide PE–TM Binding Guide

📞 +91 9310 189 890   |   💌 support@fivosms.co.uk   |   💬 WhatsApp Us

How Can we Partner Up?

From the very first day to the very last day, we make sure we provide you the best of our services with effective communication, skilled team members and a lot of passion for marketing. Contact Us Now.

24/7 Telephone
Support

More Than 2,500+
Happy Customers

100% Ownership
Rights

Money Back Guarantee

Client Satisfaction
Before Profit.

Delivery Software
At Pace

Call Us And Discuss Your Project With Our Experts Today

Call us now to get started +91 9310 189 890
Place an Order support@fivosms.co.uk
How can I help you?