Code is almost never what delays a messaging launch. Sender registration is. Most networks in regulated markets will not carry an alphanumeric sender until it has been registered, matched to a licensed entity, and approved - and the calendar time for that ranges from same-day to about a month. Planning for it is the difference between a launch date you can commit to and one you cannot.
Pick an identity you can defend
The identity should be the brand a player already recognises from the site they registered on. Networks reject anything that reads as impersonation, anything generic enough to be someone else's, and anything that implies a service the entity does not provide.
- Eleven characters maximum, letters and digits, no spaces on most networks.
- Match the brand exactly as it appears on the operating licence, not a shortened marketing form.
- Avoid words that describe a regulated activity or a payment instrument.
- Register one identity per brand rather than one per campaign. Campaign-level identities burn goodwill with the network and make consent harder to defend.
What the network asks for
Requirements differ per network, but the set is fairly stable. Having these ready before you submit saves the round trip that usually adds a week.
- The operating licence or its registration number in the destination jurisdiction.
- Company registration documents for the entity that holds the licence.
- Sample message bodies for each traffic class you intend to send.
- A description of how consent is collected, and where the opt-out is honoured.
- For some networks, a signed undertaking that traffic will not be sent outside agreed hours.
Submit through the API
Registration is an API resource, not an email thread. Submit once per market, attach the documents by reference, and the platform handles the network relationship from there.
POST /v2/senders
curl https://api.textreach.online/v2/senders \
-H "Authorization: Bearer $TEXTREACH_KEY" \
-d id="LUXPLAY" \
-d market="SE" \
-d type="alphanumeric" \
-d entity_ref="ent_04kd91" \
-d traffic_class="marketing"
{
"id": "snd_7ha21",
"sender_id": "LUXPLAY",
"market": "SE",
"state": "submitted",
"networks": [
{ "name": "network-a", "state": "submitted" },
{ "name": "network-b", "state": "submitted" }
]
}Track the status
A registration is not one thing - it is one submission per network in the market, each moving at its own pace. The resource shows every one of them, so a single stalled network is visible instead of hiding behind an overall pending state.
GET /v2/senders/snd_7ha21
{
"sender_id": "LUXPLAY",
"market": "SE",
"state": "partial",
"networks": [
{ "name": "network-a", "state": "approved" },
{ "name": "network-b", "state": "info_required",
"note": "Sample bodies missing for marketing class" }
]
}Subscribe to sender.state_changed and the same information reaches you without polling. A partial state still routes: traffic goes over the approved networks and is held for the rest, rather than failing wholesale.
Plan around the lead time
Treat these as planning figures rather than promises - a network can take longer during a regulatory change, and a resubmission restarts the clock.
- Same day to three days - markets with no pre-registration requirement, where the identity is reserved rather than approved.
- One to two weeks - the common case in European regulated markets with a document check.
- Three to five weeks - markets that require a local entity relationship or a per-network commercial agreement.
What gets a submission rejected
Four causes account for nearly all of them, and all four are avoidable before you submit.
- The identity does not match the licensed entity name closely enough for the network to tie them.
- Sample bodies do not include an opt-out instruction in the local language.
- The traffic class on the submission does not match what the samples obviously are.
- Documents are supplied for a group parent rather than the licensed operating entity.
If a submission is rejected, the note on the network entry says which of these it was. Fix it and resubmit through the same resource - there is no separate appeals process to chase.