> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Country rules console: the per-country regulation map

> Walk Settings → Compliance → Country rules — the console that maps sender-ID registration, content restrictions, and opt-out requirements per country and per channel — and fold what you read there into one country pack that pairs with your quiet-hours window, campaign limits, and evidence binder.

# Country rules console: the per-country regulation map

Sending to a new market fails on details most platforms make you hunt
for one country at a time: which sender types the destination accepts,
whether your Sender ID must be registered before the first send, what
content the carriers block, and which opt-out text the local route
demands. **Settings → Compliance → Country rules**
(`/settings/compliance/country-rules`) collapses all of that into one
map, and you read it before you pick launch markets — not at send time.

<Note>
  Every control that consumes this map — your quiet-hours window, your
  campaign limits, your consent and suppression posture — is
  **tenant-owned**: Orbit gives you the reference data and the gates
  you select; you decide the posture. This page is not legal advice —
  confirm obligations with counsel.
</Note>

***

## 1. Open the console

Navigate to **Settings → Compliance → Country rules**. The console reads
the same endpoint your integrations call —
`GET /api/v1/compliance/country-rules` — so anything visible on screen
is reachable over the API as well. Any authenticated user can read the
map; refresh of upstream feeds and ops edits are owner/admin (and the
feed refresh itself is a platform-admin function).

The header names the console's contract: **per-country sender-ID rules,
content restrictions, and registration requirements**, refreshed from
upstream feeds, with ops overrides stamped row by row. Never static —
every row carries provenance.

## 2. What the surface governs

Five channel tabs — **SMS, WhatsApp, RCS, Voice, Email** — answer to a
different regulator each, so the same country answers per channel. The
search box matches country name, ISO code, calling code, or any rule
text; the region filter narrows the scan (`?region=EU` on the API).

Each country card answers four questions:

* **Sender types** — which sender kinds the destination accepts
  (`alphanumeric`, `numeric`, `long_code`, `short_code`, `ten_dlc`,
  `waba`, `rcs_agent`, or a `from_address` for email).
* **Registration** — `none`, `recommended`, or `required`. A `required`
  badge means unregistered traffic is refused by the destination — plan
  the lead time before you commit to the market.
* **Sender rules and content restrictions** — the free-text detail on
  what that route accepts and what the carriers block.
* **Opt-out requirement, throughput, and route facts** — the
  `stop_requirement` text (the opt-out keywords the local route honours),
  `default_tps`, two-way capability, and delivery-receipt (`DLR`) support.

Every row also carries **provenance**: `Synced from <feed> <time>` on
auto-refreshes, `Ops-reviewed <time>` on manual edits. Ops edits stamp
`last_reviewed_at`; weekly auto-syncs stamp `last_synced_at` and never
overwrite the ops free-text fields. Use the badge to time registration
and the free-text to plan copy and senders.

## 3. Build a country pack per market

A country pack is the ordered checklist you assemble for one market
before you enable sends there. For each `(country, channel)` pair:

1. **Lock the sender.** Read the `sender_types` list and the
   `registration` badge; file the registration with the lead time in
   view (recap on [Sender-ID pre-registration: the market-choosing
   matrix](/guides/sender-id-country-matrix)).
2. **Match the opt-out text.** Read `stop_requirement` and make sure
   your organization's opt-out keyword aliases cover it — the keyword
   alias table is on [Opt-out keyword aliases](/compliance/opt-out-keyword-alias-table).
3. **Check content restrictions.** Fold the blocked-content notes into
   your compose-time lint expectations — the pre-send policy scanner
   runs on every outbound text before dispatch
   ([Policy scanner](/compliance/policy-scanner)).
4. **Set your throughput and quiet-hours posture.** `default_tps` is
   the route's expected throughput; the recipient-local time window
   comes from your own organization settings, not from this map — see
   the next section.

The pack is yours to define; the map only answers the questions.

## 4. Compose the pack with your quiet-hours and campaign limits

The country-rules map tells you **where and with what sender**; your
tenant settings tell you **when and at what volume**.

* **Quiet hours** — the recipient-local window a send respects. The
  org-wide fallback window and the per-channel gates are set on your
  organization settings; walk the mechanism on [TCPA posture across SMS
  and voice](/guides/tcpa-quiet-hours-and-windows) and [Quiet hours
  configuration](/guides/quiet-hours-configuration).
* **Campaign limits** — the audience-cap override and the org default
  quiet-hours window for drip and journey sends live together under
  **Settings → Campaigns**; walk them on [Campaign limits: audience-cap
  override and default quiet-hours window](/guides/campaign-limits-quiet-hours).
* **DNC pre-flight** — for US voice and SMS lanes, scrub the audience
  before the send and hand the country pack a clean list; the batch
  endpoint and the org opt-in gate are on [Batch DNC pre-flight
  scrubbing](/guides/dnc-preflight-scrub).

In each case a blocked send tells you which layer held it: a country
gate answers with the card's badge and rule text; your own window
answers with a `next_allowed_at` timestamp you can schedule to.

## 5. Evidence hooks for audits

The map's audit trail is provenance and the ledger:

* Every ops edit to a row lands in your audit log as a
  `compliance.country_rule.updated` entry; feed refreshes land as
  `compliance.country_rules.synced` — both are filterable under
  **Settings → Audit log** ([Audit log guide](/guides/audit-log)).
* When an auditor asks "which markets did you check and when", export
  the map programmatically (`GET /api/v1/compliance/country-rules`
  per channel) and attach it to your evidence binder alongside the
  quiet-hours and campaign-limits posture — the binder assembly walk is
  on [Assemble and seal an evidence binder](/guides/compliance-evidence-binder)
  with the full endpoint surface on the [binder reference](/compliance/evidence-binder).

## 6. Tenant-owned framing

The country-rules console is a **reference**, not a mandate. It answers
"what does the destination require?" so your own gates — quiet hours,
campaign limits, DNC, policy scanning — are worth enforcing in the
first place. Orbit maintains the data and defaults every gate open;
you pick markets, register senders, set windows, and attest the
posture. Hand the map to counsel before a commercial launch, together
with the statute citations your own gates rely on.

## See also

* [Country Compliance Requirements](/compliance/country-requirements) —
  the flat per-country reference the console renders.
* [Sender-ID pre-registration: the market-choosing matrix](/guides/sender-id-country-matrix) —
  how to read the `registration` badge at choose-time.
* [TCPA posture across SMS and voice](/guides/tcpa-quiet-hours-and-windows) —
  the quiet-hours assembly your windows live in.
* [Campaign limits: audience-cap override and default quiet-hours
  window](/guides/campaign-limits-quiet-hours) — the sibling
  tenant-settings page.
* [Batch DNC pre-flight scrubbing](/guides/dnc-preflight-scrub) — the
  per-number check for US lanes.
* [Assemble and seal an evidence binder](/guides/compliance-evidence-binder) —
  where the exported map lands for audits.
* [Opt-out keyword aliases](/compliance/opt-out-keyword-alias-table) —
  matching STOP keywords to the route's requirement.
