10-digit long code (10DLC) is a service offered by US mobile network operators (MNO) to explicitly allow A2P messaging over long code phone numbers. 10DLC numbers provide lower surcharges, higher throughput, and less content filtering than unregistered long codes.
To register for 10DLC service, you must first register your brand, which involves providing information about the business that’s sending messages.
Once the brand is successfully registered, you must register campaigns, the 10DLC term for messaging use cases.
Finally, you must link the phone numbers that you’ll use to send messages with registered campaigns.
Two types of business may register for 10DLC.
While registration is straightforward for direct businesses, which need to register just their own brands, it’s a little more complicated for resellers. Resellers must register each of their customers as a separate brand; they may not use their brand as a proxy for their customers’. A violation of this rule is likely to result in the suspension of the brand’s messaging campaigns.
Consider a hypothetical messaging provider, Ovilp Corp., that provides a messaging platform for organizations that send messages in the US. Its customers are hospitals and medical practitioners that might send messages such as
Ovilp also has a console for their customers’ tech teams that requires 2FA to log in. This diagram shows this flow in action.
Ovilp must register its business and each of its clients’ businesses as separate brands and specify their respective use cases (campaigns).
Note: Resellers that don’t have messaging requirements of their own can forgo registering their own business and proceed to register their customers.
To ensure its own messages are registered for 10DLC services, Ovilp must
Then, per the diagram above,
Resellers need to repeat the process for each of their customers.
Plivo customers can use the console or SDKs to complete registration for themselves and their customers.
Plivo also offers SDKs (now in public beta) for customers to use to automate the 10DLC registration process. Consider the example of the imaginary entity Ovilp again. To complete 10DLC registration, Ovilp needs to follow a four-step process:
Register a brand: Once each client has a profile, Ovilp can register a brand for each client using the Brand API. Each profile can create only one brand. For optimal throughput for Standard brands, opt in to vetting.
Check the registration_status field in the Brand API response to check the status of brand registration. It will show up as COMPLETED when the brand has been successfully registered with The Campaign Registry (TCR), the company that handles 10DLC registrations on behalf of US carriers.
Linking numbers to campaigns: Once campaigns have been registered, Ovilp can link its clients’ existing Plivo long code phone numbers with a campaign using the Number API. You can link no more than 49 numbers to a Standard campaign. Also, sending the same content across multiple source numbers specifically to evade content filters is called snowshoeing and violates all carriers’ acceptable use policies. A snowshoeing violation may result in the suspension of the campaign.
You can track the status of your number registration using the Number API. Check the status field in the Number response. A value of COMPLETED indicates the number has been successfully linked to the campaign. To link more numbers, you can make more calls to the API.
Once all the brands and campaigns are registered and the numbers are linked, Ovilp and its clients can start using them to send messages to US customers on 10DLC registered routes.
If you no longer need a source number to be linked with a campaign, you can unlink it using the Number API. Unlinking a number is irreversible; if you do it mistakenly, you must link the number to the campaign again to use it for 10DLC.
If you unrent a number, Plivo automatically unlinks it from 10DLC campaigns.
To use 10DLC APIs you must have a standard Plivo account with sufficient credits to cover the costs associated with 10DLC registration.
10DLC processes depend on integration with some third-party providers. Requests remain in the PROCESSING stage until all of the processes are complete. You can get the latest status using Plivo’s GET APIs for Brand, Campaign, and Number endpoints.
See our 10DLC registration guidelines for advice on how to register brands and campaigns.