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.
curl -X POST https://orbit-api.devotel.io/api/v1/compliance/brands \
-H "X-API-Key: dv_live_sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"company_name": "Acme Corp",
"ein": "12-3456789",
"country": "US",
"entity_type": "private_profit",
"vertical": "technology",
"stock_symbol": null,
"website": "https://acme.com",
"contact_email": "compliance@acme.com",
"contact_phone": "+14155551234"
}'
Response:
{
"data": {
"id": "brand_abc123",
"company_name": "Acme Corp",
"status": "pending",
"tcr_brand_id": "BXXXXXX",
"vetting_score": null,
"created_at": "2026-03-08T12:00:00Z"
}
}
Brand vetting typically completes within 24–48 hours.
Step 2: Create a Campaign
Register the specific use case for your messaging.
curl -X POST https://orbit-api.devotel.io/api/v1/compliance/campaigns \
-H "X-API-Key: dv_live_sk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"brand_id": "brand_abc123",
"use_case": "customer_care",
"description": "Sending order updates and support responses to customers who opted in on our website.",
"sample_messages": [
"Your order #12345 has shipped! Track at https://acme.com/track/12345",
"Hi! Your support ticket #567 has been resolved. Reply STOP to unsubscribe."
],
"message_flow": "Customers opt in via web form at checkout. They can reply STOP at any time.",
"opt_in_type": "web_form",
"opt_in_keywords": ["START", "YES"],
"opt_out_keywords": ["STOP", "CANCEL", "UNSUBSCRIBE"],
"help_keywords": ["HELP", "INFO"],
"number_ids": ["num_xyz789"]
}'
Step 3: Wait for Approval
Campaign review takes 1–5 business days. You can check status:
curl https://orbit-api.devotel.io/api/v1/compliance/campaigns/camp_10dlc_001 \
-H "X-API-Key: dv_live_sk_your_key_here"
Statuses:
| Status | Description |
|---|
pending | Submitted, awaiting carrier review |
approved | Approved — you can start sending |
rejected | Rejected — see rejection_reason for details |
suspended | Suspended due to compliance violation |
Step 4: Start Sending
Once approved, messages sent from registered numbers receive full 10DLC throughput and deliverability.
Use Case Types
| Use Case | Description | Throughput |
|---|
customer_care | Support, account alerts | 75 msg/sec |
marketing | Promotions, offers | 75 msg/sec |
notifications | Transactional alerts | 75 msg/sec |
two_factor_auth | OTP/2FA codes | 75 msg/sec |
account_notifications | Account changes, billing | 75 msg/sec |
delivery_notifications | Shipping, delivery updates | 75 msg/sec |
mixed | Multiple use cases | 15 msg/sec |
low_volume | Under 6,000 msg/month | 1 msg/sec |
Vetting Scores
Your brand vetting score (0–100) affects throughput limits:
| Score | Throughput |
|---|
| 75–100 | Maximum (75 msg/sec per campaign) |
| 50–74 | Medium (15 msg/sec) |
| 1–49 | Low (4 msg/sec) |
Improve your vetting score by providing complete, accurate brand information including EIN, website, and stock symbol (if public).
Compliance Requirements
- Opt-in consent. You must have explicit consent from every recipient before sending.
- Opt-out handling. Honor STOP requests immediately. Orbit automatically processes STOP, CANCEL, and UNSUBSCRIBE.
- Message content. Sample messages must be representative of actual traffic.
- 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:
- Navigate to Settings > Compliance > 10DLC
- Click Register Brand and fill in your company details
- Once the brand is approved, click Create Campaign
- Select your use case, add sample messages, and assign numbers
- Submit for carrier review
Troubleshooting
| Issue | Solution |
|---|
| Brand rejected | Verify your EIN matches IRS records exactly |
| Campaign rejected | Ensure sample messages match the selected use case and include opt-out language |
| Low vetting score | Provide complete brand info (website, stock symbol, full legal name) |
| Messages still filtered | Confirm the campaign status is approved and numbers are assigned |
Sending high-volume SMS without 10DLC registration may result in carrier filtering, message blocking, and potential number suspension.