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
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.
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?
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).
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.
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.
| 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.
{#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.
| 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.
Call Us And Discuss Your Project With Our Experts Today
Call us now to get started
+91 9310 189 890




