Article summary
Start from Senegal’s +221 closed nine-digit numbering plan, then normalize, run WA/WS Registration, reconcile Excel and interpret unknowns without confusing platform state with reachability.
The first step in a Senegal WhatsApp Registration check is not upload. It is determining whether a phone can be represented as a candidate “+221 plus nine-digit national number.” Passing that syntax only prepares the input. A WA/WS Registration result is a platform observation, not telecom reachability, phone ownership or marketing permission.
The official basis for +221 structure
Rules published by Senegal regulator ARTP describe a closed nine-digit national numbering plan, with international callers using country code 221 followed by the nine national digits. The ITU also maintains a Senegal national numbering-plan entry with update documents. Current allocation details should always come from the latest regulator material.
Normalization is not inventing digits
| Raw situation | Treatment | Do not |
|---|---|---|
| +221 plus nine digits | Remove display separators and validate | Declare it reachable |
| National nine digits with country evidence | Create +221 candidate | Overwrite phone_raw |
| Existing 00221 prefix | Normalize under international-prefix rule | Add 221 twice |
| Unclear country or length | Create format_exception | Guess missing digits |
Why country evidence matters
A Francophone West Africa file may contain several countries. Interface language, personal name and filename do not reliably select a calling code. Keep country_evidence from a form country field, contractual address or explicit dataset description. Pause on conflicting evidence instead of adding +221 based on the majority of rows.
When WS Registration is the right task
If the question is only whether well-sourced Senegal phones return an observed WhatsApp registration state, WS Registration is sufficient. AIPUSH exports phone and registration result. Activity time, if genuinely needed, is a separate task and purpose; it cannot be inferred from Registration.
Create the TXT and internal crosswalk
The uploaded TXT contains one normalized phone per line and no name, city, order, language or customer stage. An internal crosswalk stores batch_row, contact_id, phone_raw, phone_normalized and normalization_version. After generation, check line count, unique count, encoding and hash.
Five states for an Excel result
| State | Meaning | Action |
|---|---|---|
| Registration observed | Task returned platform registration | Store checked_at |
| No registration observed | Task returned a negative | Do not call it telecom empty |
| Unknown | No explicit conclusion available | Retain reason |
| Input error | Phone-preparation issue | Return to exception queue |
| System error | Processing did not complete | Controlled retry |
Do not turn a prefix into a current carrier
Phones may be ported and allocations can change. A block historically assigned to a network does not guarantee today’s operator or account state. Prefixes can support structural validation and exception research, but they are not customer-value, location or channel-preference labels.
French, Wolof and customer preference
A calling code is not a language. Senegal customers may use French, Wolof or another language, and diaspora users may retain +221 phones. preferred_language comes from customer choice or a service interaction, not code, name or WhatsApp state.
Cross-border outreach requires a separate basis
Observed registration creates no permission. Before sending, evaluate source, relationship, channel, purpose, opt-out and frequency under applicable local and destination-market requirements. A customer who opted out remains suppressed even when registration is observed.
When to rerun
Give registration_observation a validity window and refresh only a small set still inside an approved workflow and near a decision. Do not rerun a historical database merely because a month passed. When official numbering rules change, update normalization_version and reevaluate exception rows first.
The complete interpretation of one Senegal result
A complete record states where the phone came from, which +221 rule normalized it, its TXT batch, when WS Registration ran, what Excel observed, whether uncertainty remains, and why downstream use is allowed or blocked. This requires more columns than “valid phone,” but prevents most misuse.
