Skip to main content

10DLC Registration

10DLC (10-Digit Long Code) is the US carrier-mandated system for sending Application-to-Person (A2P) SMS messages using standard 10-digit phone numbers. All businesses sending SMS to US numbers must register through 10DLC to ensure deliverability and compliance.

Overview

US carriers (T-Mobile, AT&T, Verizon) require 10DLC registration for A2P messaging. Unregistered traffic faces:
  • Aggressive filtering — messages silently blocked
  • Higher fees — per-message surcharges for unregistered senders
  • Low throughput — limited to ~1 message/second vs. 75+ when registered
Orbit handles the registration process through The Campaign Registry (TCR).

Registration Steps

Step 1: Register Your Brand

Create a brand identity that represents your organization.
entity_type must be one of PRIVATE_PROFIT, PUBLIC_PROFIT, NON_PROFIT, GOVERNMENT, or SOLE_PROPRIETOR. display_name, company_name, phone, street, city, state, postal_code, and email are required; ein and website are optional. Response (201 Created):
Brand vetting typically completes within 24–48 hours.

Step 2: Create a Campaign

Register the specific use case for your messaging.
description must be at least 40 characters, message_flow at least 40, and both help_message and optout_message at least 20. sample_message is an array of 1–10 representative messages. Political-vertical campaigns (usecase of POLITICAL_ADVOCACY or POLLING_AND_VOTING, or is_political: true) additionally require a Campaign Verify cv_token. Response (201 Created):

Step 3: Wait for Approval

Campaign review takes 1–5 business days. You can check status:
Response:
The top-level status is the CSP-level decision. mnoStatuses is the per-carrier approval map (keys are MNO carrier ids — e.g. 10017 T-Mobile, 10035 AT&T, 10095 Verizon); a campaign can be APPROVED at the CSP level while still in REVIEW at an individual carrier. Statuses:

Step 4: Start Sending

Once approved, messages sent from registered numbers receive full 10DLC throughput and deliverability.

Use Case Types

Pass one of these values in the usecase field when creating a campaign (Step 2). TCR codes are uppercase — send them exactly as shown; a lowercase value is rejected at registration.

Throughput Tiers

10DLC throughput is granted as a per-day, per-number message-segment cap, not a per-second rate. Your tier is set by your brand vetting score (0–100) and your registered entity type. Each tier’s daily cap applies to every number assigned to the campaign, so total campaign throughput scales with the count of assigned numbers. Caps reflect T-Mobile defaults; AT&T and Verizon are within roughly 10%. You are granted the highest tier your vetting score qualifies for. A brand with no score yet defaults to the Low Volume Standard baseline.
Improve your vetting score by providing complete, accurate brand information including EIN, website, and stock symbol (if public). A score of 75 or higher unlocks the Top Tier daily cap.

Compliance Requirements

  1. Opt-in consent. You must have explicit consent from every recipient before sending.
  2. Opt-out handling. Honor STOP requests immediately. Orbit automatically processes STOP, CANCEL, and UNSUBSCRIBE.
  3. Message content. Sample messages must be representative of actual traffic.
  4. Consistent use. Only send messages that match your registered campaign use case.

Dashboard Registration

You can also complete the entire 10DLC registration through the Orbit dashboard:
  1. Navigate to Settings > Compliance > 10DLC
  2. Click Register Brand and fill in your company details
  3. Once the brand is approved, click Create Campaign
  4. Select your use case, add sample messages, and assign numbers
  5. Submit for carrier review

Country-Rule Feed Configuration

This section is for platform operators / self-hosted deployments. SaaS customers on api.orbit.devotel.io do not need to set these — Orbit keeps the 10DLC country rules current for you.
Orbit keeps its canonical US-10DLC country ruleset (sender types, throughput posture, registration requirement) fresh by pulling from the iconectiv TCR partner feed. The connector lives in @devotel/compliance/country-rule-feeds and runs in two places:
  • On-demand — the admin “Refresh from upstream” action (POST /api/v1/compliance/country-rules/sync?provider=iconectiv).
  • Weekly — the auto-refresh tick in the webhook-worker’s compliance-sync scheduler.
The connector is optional and fail-open: when its credentials are unset it logs an error and skips, leaving any existing country rules in place. It is a read-only metadata feed — never a message-transport path, so outbound SMS still exits via the Devotel softswitch. Both DEVOTEL_TCR_API_KEY and DEVOTEL_TCR_PARTNER_ID must be set for the feed to run; if either is missing the connector no-ops. Register Devotel as a TCR partner at iconectiv.com to obtain these credentials.

Troubleshooting

Sending high-volume SMS without 10DLC registration may result in carrier filtering, message blocking, and potential number suspension.