Relay by CEQUENS Help Center
Home

Help Center

πŸš€Getting Started5πŸ‘₯Contacts & Audience7πŸ“£Campaigns5βš™οΈAutomations5βœ‰οΈSMS4πŸ’¬WhatsApp4πŸ€–AI & Support3πŸ›’Commerce & Integrations4🧩Developer3πŸ”§Account & Settings6

Knowledge Base

πŸŽ“Foundations & Strategy6πŸ’šWhatsApp & Meta Essentials8πŸ“²SMS & A2P Essentials6🏷️Industry Playbooks4πŸ”Cross-Vertical Playbooks6
Powered by Cequens
Customer help center

Overview. Relay is passwordless β€” you sign in with your work email and a short code sent to your inbox. Nothing to remember, nothing to leak.

Steps

  1. Enter your work email at your Relay URL.
  2. Enter the 6-digit code from your inbox (expires ~10 min; use Resend if it lapses).
  3. New here? Choose Sign up and verify the same way. Use a company email β€” public domains (gmail, outlook…) are blocked.
  4. If your org uses SSO, use the SSO / β€œAdvanced options” path and sign in with your identity provider.

Best practices

  • Add @your-relay-domain to your email safe-senders so codes don't land in spam.
  • Turn on 2FA right after your first sign-in.

Troubleshooting

  • No code arrives β†’ check spam, wait a moment, then Resend; confirm you used the same email your account is on.
  • β€œCode expired” β†’ request a new one (codes are short-lived by design).
  • Sign-up blocked β†’ you likely used a public-domain email; use your company address.

Related: Set up 2FA Β· Accept a team invitation

Overview. 2FA adds a second factor (a rotating code from an authenticator app) on top of your email sign-in β€” strongly recommended for anyone who can send messages or see customer data.

Steps

  1. Use the MFA setup gate after first sign-in, or open Settings β†’ Security.
  2. Scan the QR code (or copy the manual key) into your authenticator app.
  3. Enter the 6-digit code to confirm. You may β€œskip for 7 days” unless your org enforces it.

Best practices

  • Admins: enforce 2FA org-wide in Settings β†’ Security so every member is protected.
  • Save your authenticator's backup/recovery codes somewhere safe.

Troubleshooting

  • β€œInvalid code” β†’ your phone's clock is likely out of sync; enable automatic time on the device.
  • Lost your device β†’ an admin can reset your MFA from Team Management.

Overview. When a colleague invites you, you activate your account from the invitation email and land in the portal with the role they assigned.

Steps

  1. Click the link in your invitation email (opens the Accept invite screen).
  2. Confirm your name and sign in with your email + one-time code (or SSO).
  3. You'll get your assigned role β€” Admin / Editor / Viewer / Agent.

Troubleshooting

  • β€œInvite expired” β†’ ask an admin to resend it from Settings β†’ Team Management.
  • Wrong permissions β†’ your role controls access; an admin can change it.

Related: Team management (invite & roles)

Overview. The guided wizard (β€œSell on WhatsApp in an afternoon”) stitches the three setup tasks into one place so you reach a live, sending journey quickly. Do the steps in any order β€” progress is saved.

Get Started onboarding wizard β€” Relay Customer Portal
Get Started onboarding wizard β€” Relay Customer Portal (demo data).

Steps

  1. Connect WhatsApp β†’ opens WhatsApp Accounts (flips to β€œManage WhatsApp” once a number is Registered).
  2. Connect a store β†’ Integrations (Salla / Shopify / WooCommerce / Zid; dev-sandbox available).
  3. Choose a kit β†’ Automation Gallery to instantiate a journey.

Best practices

  • Do all three β€” a store connection makes your automations commerce-aware and your AI agent catalogue-grounded.
  • Start with the abandoned-cart or welcome kit for the fastest ROI.

Related: Connect a WhatsApp number Β· Connect your store Β· Use a starter kit

Overview. The left sidebar groups everything by job. Here's the map:

Dashboard (Intelligence Hub) β€” Relay Customer Portal
Dashboard (Intelligence Hub) β€” Relay Customer Portal (demo data).
  • Dashboard β€” live throughput, delivery rate, recent campaigns.
  • Contacts / Segments / Tags / CDP Hub β€” audience & data.
  • Campaigns (broadcasts) Β· Automations (journeys).
  • Channels β†’ SMS / WhatsApp Β· Support β†’ Cases / Performance.
  • eCommerce, Integrations, Developer, Settings.

What you see depends on your plan and what's enabled for your account. Agents see a focused view (Cases + My Performance).

Overview. Upload a CSV to create or update contacts in bulk. The wizard maps your columns, previews the data, and flags duplicates before anything is saved.

Import Contacts β€” Relay Customer Portal
Import Contacts β€” Relay Customer Portal (demo data).

Before you start: a .csv with at least a Phone column (E.164, e.g. +9665…). Optional: name, email, Opt-In, tags, attributes. Up to 50 MB / 100k+ rows.

Steps

  1. Contacts β†’ Import opens the wizard (Upload β†’ Preview β†’ Result).
  2. Drop the file; review the CSV Column Guide, mapping, and duplicates.
  3. Confirm; review imported vs skipped.

Best practices

  • Include and map the Opt-In column β€” consent governs who you can legally message.
  • Only import contacts who gave you consent; never a purchased list (it wrecks deliverability).
  • Add tags/attributes on import so you can segment immediately.

Troubleshooting

  • Rows skipped β†’ usually a missing/invalid phone; fix formatting to E.164 and re-upload.
  • Numbers look wrong β†’ check the country/calling code; the preview shows the parsed value.

Related: Create a segment Β· Deliverability & compliance (Knowledge Base)

Overview. The contact profile is your single source of truth for a person β€” identity, consent, engagement, and commerce history pulled from connected stores.

Contact profile (360) β€” Relay Customer Portal
Contact profile (360) β€” Relay Customer Portal (demo data).

Steps

  1. Click any row in Contacts.
  2. See identity, opt-in status, tags, and engagement score.
  3. Review the eCommerce summary β€” LTV, orders, AOV, last purchase, RFM segment, preferred payment methods.
  4. Edit or delete (delete confirms).

Best practices

  • Use the RFM segment and LTV here to decide how much to invest in a customer (VIP vs win-back).

Related: Building high-value segments with RFM (Knowledge Base)

Overview. Filter your contacts, then save that filter as a segment β€” a named, reusable audience that updates itself as contacts change.

Steps

  1. Filter Contacts β€” the query bar (e.g. rfmSegment = At Risk, totalOrders >= 3), or the Subscribed / Opt-in pills.
  2. Click Save as Segment.
  3. Review the Definition preview and ~N contacts, name it, then Create Segment.

Best practices

  • Combine RFM with commerce attributes (category, COD-risk) for sharp audiences.
  • Keep names action-oriented (β€œVIP – fashion”, β€œAt-risk – 60d”).

Segments saved this way are live (dynamic) β€” membership updates automatically, and they work in both Campaigns and Automation triggers.

Related: Building high-value segments with RFM (Knowledge Base)

Overview. The Segments screen lists every audience you've saved. Segments are created from Contacts, then reused across Campaigns and Automations.

Segments β€” Relay Customer Portal
Segments β€” Relay Customer Portal (demo data).

Steps

  1. Open Segments; search β€œSearch segments…”.
  2. Check Type (live / static) and Contacts count; dynamic ones show their rule.
  3. Click a segment to open Contacts filtered to it.

Troubleshooting

  • β€œNo segments yet” β†’ create one from the Contacts page (Save as Segment).
  • Count looks off β†’ dynamic segments recompute; the count reflects current membership.

Overview. Tags are lightweight labels on contacts (e.g. vip, wholesale). The Tags screen shows each tag's reach so you can spot useful audiences.

Tags β€” Relay Customer Portal
Tags β€” Relay Customer Portal (demo data).

Steps

  1. Open Tags; search β€œSearch tags…”.
  2. Review each tag's Reach bar and Contacts count.
  3. Click a tag to open Contacts filtered to it.

Best practices

  • Apply tags in automations (Add tag) to mark milestones like new-customer or vip, then segment on them.

Overview. The CDP Hub shows the structured attributes Relay has enriched onto your contacts (from messages and connected stores) and suggests segments worth targeting.

CDP Hub β€” Relay Customer Portal
CDP Hub β€” Relay Customer Portal (demo data).

Steps

  1. Open CDP Hub.
  2. Review enrichment KPIs and the attribute distribution/breakdown.
  3. Read the AI advisory items (impact High/Medium/Low) for segment and campaign ideas.

Best practices

  • Act on the highest-impact advisory first, then build a segment for it in Contacts.

Overview. When the same person arrives from multiple sources, Relay stitches them together. High-confidence matches merge automatically; ambiguous ones wait for your decision here.

Steps

  1. Open Integrations β†’ Merge Review.
  2. Compare candidates side-by-side; read the match rationale + confidence.
  3. Choose the primary record and Merge, or Keep separate.

Best practices

  • Clear the queue regularly β€” duplicates split a customer's history and mis-score RFM.

Decisions are audited (who + when). Only ambiguous matches appear here.

Overview. Campaigns are one-time broadcasts. The builder walks you through five steps and shows live cost/parts so there are no surprises.

Campaign Builder β€” Review before launch β€” Relay Customer Portal
Campaign Builder β€” Review before launch β€” Relay Customer Portal (demo data).
Campaign Builder β€” Audience (segments & reach) β€” Relay Customer Portal
Campaign Builder β€” Audience (segments & reach) β€” Relay Customer Portal (demo data).
Campaign Builder β€” Compose (with live preview) β€” Relay Customer Portal
Campaign Builder β€” Compose (with live preview) β€” Relay Customer Portal (demo data).

Steps

  1. Campaigns β†’ New Campaign (Setup β†’ Audience β†’ Content β†’ Schedule β†’ Review).
  2. Setup: channel SMS, name, Sender ID.
  3. Audience: select segments and/or upload a CSV; set the Mobile Number Column; check Estimated Reach.
  4. Content: write the body (live parts counter); Suggest for AI copy; optional CTA link.
  5. Schedule β†’ Review β†’ Confirm Launch.

Best practices

  • Keep it to one part where possible β€” Arabic (UCS-2) is 70 chars/part, so write tight.
  • Personalise with a variable (first name / last product) β€” it lifts response.
  • Send to a segment, not everyone; relevance beats reach.

Troubleshooting

  • Sent later than expected β†’ quiet hours deferred a promotional send to the next open window (by design).
  • Sender ID not selectable β†’ it isn't approved for your account yet (see Sender IDs).

Related: A/B test with holdout Β· Read campaign performance

Overview. WhatsApp broadcasts use pre-approved templates. You map each template variable to a contact attribute or CSV column.

Steps

  1. New Campaign β†’ Setup: channel WhatsApp, pick your WhatsApp Number.
  2. Audience: segments / list.
  3. Content: Select WhatsApp Template, choose Locale, complete Variable Mapping.
  4. Schedule β†’ Review β†’ Confirm Launch.

Best practices

  • Add an SMS fallback so WhatsApp-unreachable contacts still get the message once.
  • Match the template category to intent (marketing vs utility) to avoid throttling.

Troubleshooting

  • No templates to pick β†’ you need an Approved template first (WhatsApp β†’ Templates).
  • Variables blank β†’ check the mapping; unmapped variables fall back to their sample/default.

Overview. A/B testing compares message variants; a holdout (a group that gets nothing) lets you measure the true incremental lift, not just which variant looked better.

A/B test β€” variants & control holdout β€” Relay Customer Portal
A/B test β€” variants & control holdout β€” Relay Customer Portal (demo data).

Steps

  1. In the SMS Compose step, add named variants with a % split.
  2. Optionally set a holdout / control (up to 30%) that receives nothing.
  3. Launch; compare per-variant results and promote a winner to the remaining audience.

Best practices

  • Test one thing at a time (offer or copy), and keep the holdout for high-value sends.
  • Let it run long enough to reach a meaningful sample before declaring a winner.

A/B testing is available for SMS campaigns today.

Related: Measuring what matters (Knowledge Base)

Overview. Send immediately or schedule for a future date/time/timezone. Promotional sends automatically respect quiet hours.

Campaign Builder β€” Schedule β€” Relay Customer Portal
Campaign Builder β€” Schedule β€” Relay Customer Portal (demo data).

Steps

  1. In Schedule, choose Immediate or Scheduled (date/time/timezone, ~40 zones).
  2. Edit a scheduled campaign in its window and Save Changes.

Promotional sends respect your account's quiet hours β€” a message outside the window is deferred to the next open window, never dropped. Transactional/OTP is exempt.

Overview. The performance view shows delivery and engagement for a campaign, including per-variant results for A/B sends.

Steps

  1. Open a campaign and choose View.
  2. Review Sent Β· Delivered Β· Failed Β· Opt-outs Β· Read Β· Clicks Β· Conversions.
  3. For A/B, see the per-variant breakdown.

Best practices

  • Watch opt-outs and failed/blocked β€” a spike signals wrong audience or a deliverability issue.
  • Tie revenue back via the eCommerce dashboard's attributed revenue.

Overview. Automations are journeys that enroll contacts on a trigger and run steps automatically. This is where lifecycle revenue compounds β€” build cart recovery, welcome series, win-backs, and more.

Automation Builder β€” a live flow β€” Relay Customer Portal
Automation Builder β€” a live flow β€” Relay Customer Portal (demo data).

Steps

  1. Automations β†’ New Automation: Name, Category, Create Draft.
  2. Click the entry node β†’ Pick a trigger.
  3. Add a step from the palette; configure it in the side panel.
  4. Save Draft, then Publish.

Best practices

  • Start from the Gallery β€” a proven flow beats a blank canvas.
  • Add an entry condition (e.g. don't enroll people who already bought).
  • Set a frequency cap so overlapping journeys don't over-message a contact.

Troubleshooting

  • Publish is blocked β†’ the linter found an error (empty branch, orphaned step); fix the highlighted node.
  • No one is enrolling β†’ check the trigger and entry condition, and that the automation is Published (not draft).

Related: Cross-vertical playbooks (Knowledge Base) Β· Use a starter kit

Overview. The Gallery has ready-made automations you can instantiate and customise β€” the fastest way to launch a best-practice journey.

Automation Gallery β€” Relay Customer Portal
Automation Gallery β€” Relay Customer Portal (demo data).

Steps

  1. From Automations, click Gallery.
  2. Browse cards by Engagement / Commerce / Transactional / Lifecycle (each shows β€œ{n} min setup”).
  3. Click Use this β€” a customisable draft opens in the builder.

Best practices

  • Some kits need a store integration β€” connect your store first so triggers like cart.abandoned work.

Overview. An automation starts on one trigger and runs a sequence of actions. Here's the full palette.

The step palette β€” Send / Wait / Branch / AI / Commerce β€” Relay Customer Portal
The step palette β€” Send / Wait / Branch / AI / Commerce β€” Relay Customer Portal (demo data).

Triggers (33)

Time (schedule, recurring, N-days-before/after, birthday, Hijri-calendar date) Β· contact lifecycle (created, tag/segment/attribute changes, opt-in/out) Β· outbound events (delivered, failed, read, link clicked, conversion) Β· WhatsApp inbound Β· webhook/API Β· manual Β· eCommerce (order created/paid/fulfilled/delivered/cancelled/refunded, cart/checkout abandoned, wishlist) Β· browse pixel (product/category viewed).

Actions (31)

Sends (SMS, WhatsApp, opt-in request) Β· waits (delay, wait-for-event) Β· branching (if/else, switch, random split) Β· contact mutation (attribute, tag, segment, opt-in/out) Β· Handoff to human Β· HTTP webhook Β· call sub-automation / jump Β· 4 AI steps (generate, classify, sentiment, language) Β· goal tracking (mark conversion, increment counter) Β· eCommerce (catalogue, product carousel, coupon, flag VIP, suppression) Β· End.

WhatsApp send steps can carry an SMS fallback for unreachable contacts.

Overview. Relay gives you real safety rails so a live journey can't run away β€” versioning, an instant stop, and automatic protection against error storms.

Automations β€” lifecycle & kill switch β€” Relay Customer Portal
Automations β€” lifecycle & kill switch β€” Relay Customer Portal (demo data).

Steps

  1. Publish validates and goes live (errors block publishing).
  2. Open Version history β†’ roll back to a prior published version.
  3. Use Pause/Resume, or the kill switch to instantly halt new and in-flight enrollments (reversible).

Best practices

  • Test changes in a draft; publish during business hours so you can watch the first enrollments.
  • Set per-automation compliance flags (quiet-hours, DND, opt-out-footer, transactional exemption) to match the journey's intent.

A circuit breaker auto-pauses an automation if its error rate spikes β€” check the error and re-publish once fixed.

Overview. Analytics show enrolments, completion, conversions, and where contacts drop off β€” so you know exactly which step to improve.

Automation analytics β€” Relay Customer Portal
Automation analytics β€” Relay Customer Portal (demo data).

Steps

  1. Open Analytics for an automation; pick 24h / 7d / 30d.
  2. Review Enrolments, Completion rate, Conversions; read the funnel + recent enrolments.
  3. Export CSV for the window.

Best practices

  • Find the biggest drop-off step and fix one thing (timing, copy, or an over-long wait).

Overview. Templates are reusable message bodies with typed variables and multi-locale support, gated by an approval workflow so only vetted content goes live.

SMS Template editor β€” Relay Customer Portal
SMS Template editor β€” Relay Customer Portal (demo data).

Steps

  1. Channels β†’ SMS β†’ SMS Templates β†’ New Template.
  2. Set Name, Description, Category, Default Locale, allowed senders.
  3. Write per-locale bodies (live parts/encoding counter) and declare variables with fallbacks.
  4. Save, then Submit for Review; track Draft β†’ Pending β†’ Approved / Rejected.

Best practices

  • Give every variable a fallback so a missing value never prints β€œ{token}”.
  • Write the Arabic locale tightly β€” UCS-2 is 70 chars/part.

Troubleshooting

  • Rejected β†’ read the reason, fix, and Resubmit for Review.
  • Can't edit body β†’ approved templates lock body/schema; clone or edit metadata only.

Overview. Send yourself a single SMS to check rendering, parts, and delivery before you broadcast to real customers.

Test Center β€” Relay Customer Portal
Test Center β€” Relay Customer Portal (demo data).

Steps

  1. Channels β†’ SMS β†’ SMS Testing.
  2. In Single Message Test, set the Recipient (locked to your verified number on the free plan) + Sender ID.
  3. Use Live Preview to check parts/encoding; send; review Test History and open Message Detail.

Best practices

  • Always test Arabic content β€” encoding flips to UCS-2 and changes the part count and cost.

Overview. The Messages Explorer is your delivery audit trail β€” search every message, inspect its status, and export for reporting.

Messages Explorer β€” Relay Customer Portal
Messages Explorer β€” Relay Customer Portal (demo data).

Steps

  1. Channels β†’ SMS β†’ Explorer (defaults to today).
  2. Filter by Search (sender, destination, message ID, text) + From/To dates (≀90-day range) + status.
  3. Open a row for Message Detail; Export to CSV.

Troubleshooting

  • Status β€œBlocked” β†’ a content-filter or DND rule stopped it; the detail view shows the reason.
  • Status β€œFailed” β†’ open the detail for the carrier error code (bad number, unreachable, etc.).

Overview. A Sender ID is the brand name recipients see. You can only send under IDs approved for your account β€” this prevents impersonation.

Steps

  1. Settings β†’ Sender ID Registration: submit a brand name (≀11 chars) + use-case description.
  2. Track status (Approved / Pending / Rejected, with reason).
  3. Approved senders appear under Approved Senders and become selectable in the campaign builder.

Troubleshooting

  • Rejected β†’ the reason is shown (e.g. name too generic / not matching your brand); adjust and resubmit.
  • Free tier β†’ sends use the shared Sandbox sender until you register your own.

Overview. Connect your WhatsApp Business Account (WABA) via Meta's Embedded Signup so Relay can send and receive. Relay shares its business credit line with your WABA, so you don't need to set up Meta billing yourself.

Connect WhatsApp β€” Relay Customer Portal
Connect WhatsApp β€” Relay Customer Portal (demo data).

Steps

  1. Channels β†’ WhatsApp β†’ Accounts; start Embedded Signup and authorise.
  2. Expand the WABA to see numbers with state badges (Pending β†’ Verified β†’ Registered).
  3. Use per-number panels to register, edit profile/name, or set the PIN (two-step verification).

Best practices

  • Watch the quality rating β€” keep it green by only messaging opted-in contacts and avoiding high opt-out sends.

Troubleshooting

  • Can't send yet β†’ the number must reach Registered first.
  • Credit line failed β†’ use the β€œAttach credit line” retry, or contact your Relay admin.

Overview. WhatsApp requires pre-approved templates to start conversations. Relay lints against Meta's policy before you submit, so more templates pass first time.

WhatsApp Templates β€” Relay Customer Portal
WhatsApp Templates β€” Relay Customer Portal (demo data).

Steps

  1. Channels β†’ WhatsApp β†’ Templates: Sync all from Meta to import existing ones, or New Template.
  2. Set category (Marketing / Utility / Authentication), locales, components, and {{n}} variables with samples.
  3. Submit to Meta; track per-locale status; use Sync status to refresh.

Best practices

  • Choose the right category β€” mis-categorised marketing-as-utility templates get rejected or throttled.
  • Marketing templates on an enrolled number route via MM Lite for better delivery at the same price.

Troubleshooting

  • Rejected by Meta β†’ the status shows why; fix policy issues (promotional content in a utility template is common) and resubmit.

Overview. A two-pane inbox for live WhatsApp conversations, with the 24-hour service-window timer front and centre so you know when a free-form reply is allowed.

Steps

  1. Channels β†’ WhatsApp β†’ Conversations.
  2. Browse threads (last message, unread count, opt-in, 24h service-window timer).
  3. Reply within the window; click Return to AI to hand a thread back to the agent.

Troubleshooting

  • Can't send a free-form reply β†’ the 24h window has closed; send an approved template instead, or wait for the customer to message again.

Overview. The WhatsApp Explorer mirrors the SMS one for WhatsApp β€” search, inspect the full status timeline, and export.

Steps

  1. Channels β†’ WhatsApp β†’ Explorer.
  2. Filter by direction, status, message type, number, and date (≀90 days).
  3. Open a row for the status timeline (every transition + error codes) and raw payload; Export CSV.

Overview. The AI Sales Agent answers WhatsApp questions from your catalogue and knowledge base, recommends products, and escalates to a human when it should. Results come from a good knowledge base and tight guardrails β€” not the model.

AI Sales Agent setup β€” Relay Customer Portal
AI Sales Agent setup β€” Relay Customer Portal (demo data).

Steps

  1. eCommerce β†’ AI Sales Agent; select or create an agent.
  2. Set Model, greeting, language (auto/Arabic/English), and the WhatsApp number.
  3. Fill the Knowledge Base sections; set guardrails (grounded-only, discount ceiling, off-limits topics) and handoff rules.
  4. Create agent / Save, then set status active.

Best practices

  • Start grounded-only with a full knowledge base; reindex after big edits.
  • Connect your store so the agent references real products, stock, and orders.
  • Review Cases weekly β€” each hand-off is a KB gap to fill (and containment climbs).

Troubleshooting

  • Agent hands everything off β†’ the knowledge base is too thin; add the top questions.
  • Gives away too much discount β†’ set/lower the discount ceiling.

Related: The WhatsApp AI Sales Agent playbook (Knowledge Base) Β· Handle Cases

Overview. When the agent (or an automation) escalates, a Case opens for a human. The workspace gives you the AI summary, the live thread, and dual-mode replies so you can resolve fast.

Cases queue β€” Relay Customer Portal
Cases queue β€” Relay Customer Portal (demo data).

Steps

  1. Support β†’ Cases; filter by Status / β€œmine”.
  2. Open a case: read the AI summary, the live thread, and the contact rail (RFM, LTV, orders).
  3. Reply Via AI (the agent rephrases your draft) or Directly; assign, add notes, Return to AI, or Close.

Best practices

  • Answer within the SLA (default ~60 min); use β€œVia AI” to keep a consistent voice.
  • Note the handoff reason β€” it tells you what to add to the agent's knowledge base.

Overview. Leaderboards for both your human team and your AI agents, so you can see resolution speed, SLA health, and how much the AI is handling on its own.

Steps

  1. Support β†’ Performance; pick 7d / 30d / 90d.
  2. Human Agents: handled/resolved, first-response & resolution times, SLA breaches.
  3. AI Agents: conversations, containment rate, handoffs, avg turns/confidence, sentiment.

Best practices

  • Track containment over time β€” rising containment means your KB is improving.
  • Use the top handoff reason as your next KB fix.

Overview. Connecting your store is the unlock for everything commerce β€” order/cart/browse signals power segments, automation triggers, and revenue attribution.

Integrations β€” Relay Customer Portal
Integrations β€” Relay Customer Portal (demo data).

Steps

  1. Integrations β†’ click Connect on your platform's card.
  2. In β€œConnect {Platform}”, enter the store identifier β€” Salla domain/ID; Shopify *.myshopify.com; Zid OAuth; WooCommerce site URL + Consumer key/secret.
  3. Authorise/verify; the connection goes live and historical backfill begins.

Best practices

  • Connect before building commerce automations so triggers like cart.abandoned have data.
  • Add the browse/cart pixel to power abandoned-browse journeys.

Just exploring? Use a dev-sandbox store (tagged β€œDev stub”) to see the flow before wiring real credentials.

Overview. Each connection card shows health (events received, failures, last event) and lets you pause, refresh, or disconnect.

Steps

  1. On Integrations, click a connection card (Events 24h / Failed 24h / Last).
  2. Pause / resume / disconnect, trigger a manual refresh, and review authorised scopes + the last error.

Troubleshooting

  • β€œNeeds attention” / errors β†’ open the connection, read the last error, and reconnect if the store revoked access.

Overview. The eCommerce dashboard connects your messaging to money β€” attributed revenue, cart recovery, VAT, and your RFM lifecycle distribution in one place.

eCommerce dashboard β€” Relay Customer Portal
eCommerce dashboard β€” Relay Customer Portal (demo data).

Steps

  1. eCommerce β†’ Dashboard; pick 7d / 30d / 90d.
  2. Review revenue & attributed revenue, orders trend, VAT split, top SKUs, cart recovery.
  3. See the RFM distribution (11 segments); click to recompute.

Best practices

  • Watch the RFM distribution monthly β€” more Champions over time means your lifecycle programme is working.

Related: Measuring what matters (Knowledge Base)

Overview. Generate a hosted payment link inside a conversation and track it to paid β€” useful for closing a sale in chat or requiring prepayment from COD-risk customers.

Steps

  1. Generate a hosted payment link from an agent chat, automation step, or inbox reply.
  2. Track its lifecycle (pending β†’ paid / expired / cancelled); a paid link is credited as revenue attribution.

Payment-link support is available and maturing; native WhatsApp Pay is on the roadmap.

Overview. Apps are containers that isolate traffic, rate limits, and credentials β€” create one per integration or environment (e.g. production vs staging).

Apps & credentials β€” Relay Customer Portal
Apps & credentials β€” Relay Customer Portal (demo data).

Steps

  1. Developer β†’ Apps β†’ New App; set TPS cap, daily/monthly limits, default flag.
  2. Open the app to view usage and bind credentials.
  3. Generate a REST key (sk_live_…, shown once β€” copy it) and/or an SMPP binding; add an IP allowlist (single IPs or CIDR).

Best practices

  • Use separate apps/keys per environment so you can revoke one without affecting others.
  • Set an IP allowlist for production credentials.

Troubleshooting

  • 401 / auth errors β†’ the key is wrong, deactivated, or the caller IP isn't allowlisted.
  • Messages not routing β†’ the app may be paused (paused apps block routing).

Overview. An interactive, in-portal API reference β€” read the contract and call endpoints live with your own key.

API Reference β€” Relay Customer Portal
API Reference β€” Relay Customer Portal (demo data).

Steps

  1. Developer β†’ API Reference.
  2. Browse grouped endpoints (Contacts, Segments, Campaigns, Messages incl. bulk ≀1000/request, WhatsApp, Apps, Billing).
  3. Use Try It with your key. SMS is also available over SMPP 3.4 (System ID + password).

Best practices

  • Batch with the bulk endpoint (≀1000 recipients/request) rather than looping single sends.

Overview. Receive delivery receipts at your endpoint, and monitor every outbound webhook delivery with retries, a dead-letter queue, and manual replay.

Webhook deliveries β€” Relay Customer Portal
Webhook deliveries β€” Relay Customer Portal (demo data).

Steps

  1. Set a DLR webhook URL in credentials to receive delivery receipts.
  2. Developer β†’ Webhooks: see status (pending / success / failed / DLQ / replayed), attempts, and last response code.
  3. Open a delivery for the full request/response and per-attempt audit; Replay failed/DLQ items.

Best practices

  • Verify the HMAC signature (SHA-256/512) on inbound webhook endpoints before trusting a payload.
  • Return a 2xx quickly; do heavy work async so deliveries aren't retried needlessly.

Overview. See your plan and usage against included allowances (contacts, seats, AI conversations, WhatsApp numbers), change plan, and manage payment.

Billing & plans β€” Relay Customer Portal
Billing & plans β€” Relay Customer Portal (demo data).

Steps

  1. Open Billing; review your plan and usage vs allowances.
  2. In the catalog, click Select {Plan} or Upgrade Plan and complete checkout.
  3. Manage Payment Method and view Invoice History.

Best practices

  • Watch quota banners across the app β€” they deep-link here before you hit a hard limit.

Relay supports subscription, prepaid-wallet, and postpaid billing. For pricing, contact your Relay account team.

Overview. Your org's identity and the Account ID support will ask for.

Steps

  1. Settings β†’ Organization.
  2. Set org name, logo, website, and primary industry; copy your Account ID when contacting support.

Overview. Invite teammates and give each the least access they need. Roles: Admin (full), Editor (campaigns/contacts/settings), Viewer (read-only), Agent (Cases + performance only).

Settings β€” Team Management β€” Relay Customer Portal
Settings β€” Team Management β€” Relay Customer Portal (demo data).

Steps

  1. Settings β†’ Team Management; invite with name + email.
  2. Choose a role (Admin / Editor / Viewer / Agent).
  3. Resend, suspend, or remove members (admin only).

Best practices

  • Give support staff the Agent role β€” they get a focused Cases view and can't change settings.

Overview. Org-wide security controls β€” enforce 2FA, connect SSO, and restrict access by IP.

Settings β€” Security β€” Relay Customer Portal
Settings β€” Security β€” Relay Customer Portal (demo data).

Steps

  1. Settings β†’ Security.
  2. Enable and optionally enforce 2FA (TOTP) org-wide.
  3. Enable and optionally enforce SSO (OIDC / SAML).
  4. Configure the IP allowlist (REST + SMPP) and session timeout.

Best practices

  • Enforce 2FA (or SSO) org-wide for anyone who can send messages or view customer data.

Overview. Choose which platform events notify you and where (email / in-app).

Settings β€” Notifications β€” Relay Customer Portal
Settings β€” Notifications β€” Relay Customer Portal (demo data).

Steps

  1. Settings β†’ Notifications.
  2. Toggle email / in-app channels and set the per-type matrix (campaign completed, invoice issued, security alert…).

Overview. Relay keeps your promotional sends within regulator-aligned hours automatically, so you stay compliant without thinking about it.

  • Per-country, per-channel quiet hours in the recipient's local time β€” promotional sends are deferred, not dropped; transactional/OTP is exempt.
  • Legal windows for KSA, UAE, Qatar; recommended elsewhere; a Ramadan mode shifts them automatically.
  • A DND registry suppresses do-not-disturb numbers automatically.

These policies are usually set by your operator/admin β€” contact them to adjust windows for your markets.

Related: Deliverability & compliance in MENA (Knowledge Base)

Lifecycle marketing means matching the message to where a customer is in their journey β€” and letting automations do it for you. That's where the compounding revenue is.

The five stages & the Relay tool for each:

  • Acquire β€” get consent β†’ opt-in request step, contact import.
  • Onboard β€” first value/first purchase β†’ welcome series, AI Sales Agent.
  • Grow β€” repeat & higher AOV β†’ post-purchase series, recommendations, segment campaigns.
  • Retain β€” keep them loyal β†’ reorder reminders, VIP treatment, RFM journeys.
  • Win back β€” recover lapsing buyers β†’ win-back ladder, at-risk RFM segments.

The flywheel: signals in (orders/carts/browse) β†’ segments update themselves β†’ automations fire on triggers β†’ revenue is attributed β†’ you double down on what works.

Where to start (first 30 days), by ROI:

  1. Abandoned-cart recovery (fastest money).
  2. Welcome / first-purchase series.
  3. Post-purchase order & shipping updates.
  4. Win-back for lapsed buyers.
  5. The AI Sales Agent to handle the conversations these create.

Next: Cross-Vertical Playbooks

SMS β€” reach & reliability. Works on any phone, no app. Best for OTP/transactional alerts and broad reach. 160 chars/part (70 for Arabic) β€” Relay counts parts live.

WhatsApp β€” conversation & commerce. Media, buttons, catalogues, real replies. Two modes: template messages (Meta-approved, needed to start a conversation) and session messages (free-form, only inside the 24-hour customer-care window).

How to decide:

  • OTP / login code β†’ SMS.
  • You have WhatsApp opt-in and want engagement β†’ WhatsApp.
  • Broad promo, unknown reachability β†’ SMS, or WhatsApp with an SMS fallback.
  • Two-way support / product Q&A β†’ WhatsApp + AI agent.
  • Recipient outside the 24h window β†’ a template, not free-form.

Best practice: set a WhatsApp→SMS fallback so unreachable contacts still get the message once — never double-send.

RFM scores every contact on Recency, Frequency, and Monetary value from order history. Relay computes it nightly (tenant-relative quintiles) and buckets contacts into 11 lifecycle segments you can target directly; recompute on demand from the eCommerce dashboard.

The plays:

  • Champions / Loyal β€” status & early access, not discounts (they'll buy anyway).
  • Potential Loyalists / New / Promising β€” onboarding & education to build the habit.
  • Need Attention / About to Sleep β€” re-engage before they lapse.
  • At Risk / Can't Lose Them β€” win-back scaled to value (high-touch for high value).
  • Hibernating / Lost β€” last-chance incentive, then suppress.

Use it: build segments in Contacts β†’ Save as Segment (e.g. rfmSegment = At Risk + category + COD-risk), feed them into campaigns and automations. Segments are live, so contacts move between journeys automatically as behaviour changes.

Deliverability is consent, timing, content, and channel health β€” not luck.

  1. Consent first. Message only opted-in contacts; track opt-in status & source; use double opt-in where required; honour opt-outs (Relay maintains suppression + a DND registry).
  2. Quiet hours. Relay enforces per-country, per-channel windows in the recipient's local time β€” promotional sends are deferred, not dropped; transactional/OTP is exempt. Legal windows for KSA, UAE, Qatar; a Ramadan mode shifts them automatically.
  3. Sender health. SMS: send only under an approved Sender ID (anti-impersonation enforced). WhatsApp: keep your number's quality rating green and mind your messaging tier.
  4. Content that lands. Keep SMS tight (Arabic costs more per part); get WhatsApp templates approved under the right category; avoid spammy patterns.

Common mistake: importing a purchased (non-consented) list β€” it wrecks deliverability and breaks the rules.

Baseline every metric first, then set a target. The KPIs that matter, by objective:

  • Delivery: delivery rate, failed/blocked (Message Explorer) β€” a drop signals a deliverability/sender problem.
  • Engagement: WhatsApp read rate, clicks, replies.
  • Revenue: conversions & attributed revenue (eCommerce dashboard) β€” the number that matters most.
  • Automation health: completion & per-step drop-off (funnel), error rate.
  • Commerce: cart-recovery rate, new-vs-returning, AOV, RFM shift over time.
  • Conversational: AI containment rate, first-response SLA, sentiment.

Attribution links touches (sent/delivered/clicked, by A/B variant) to orders (last-touch), plus in_chat_payment for payment links.

Always be testing: use A/B with a holdout on SMS to measure true incremental lift, then promote winners.

A great agent answers 60–80% of questions itself (high containment), never invents products/prices, and hands off cleanly when it should.

Set it up for success:

  1. Feed it a real knowledge base β€” fill every section (shipping, returns, checkout, pricing, smart selling, FAQs, about). Reindex after big edits.
  2. Keep it grounded-only; set a discount ceiling and off-limits topics.
  3. Connect your store so it references real products, stock, and orders.
  4. Tune handoff β€” keywords, negative sentiment, low confidence, high order value; plus return-from-handoff.

Best practices: start narrow and loosen once you trust it; review Cases weekly β€” every hand-off is a gap in the KB (fill it and containment climbs); localise (auto language); watch Agent Performance (the top handoff reason is your next KB fix).

Common mistake: an empty knowledge base β†’ the agent hands everything off and your team drowns.

The opportunity. Fashion is visual, seasonal, and identity-driven: high browse-to-cart drop-off (recovery is your biggest lever), seasonal drops & sales (incl. Ramadan/Eid), and style-led repeat purchase β€” people come back for the next look, not to reorder. WhatsApp fits perfectly: show the product, answer "will it fit?", close the sale.

Segments to build: VIP/Champions (early access), category affinity (targeted new-arrival campaigns), browsed-not-bought (from the pixel), seasonal at-risk, COD-risk.

Priority automations: (1) abandoned cart β€” lead with the item's image, skip the coupon for Champions; (2) welcome/first-purchase with a styling + fit/care tip; (3) new-drop announcement to Champions first, then affinity segments; (4) win-back triggered on new drops in a browsed category or a seasonal window β€” not a fixed timer (fashion isn't consumable).

MENA: use the Hijri trigger for Ramadan (modest/eveningwear, gifting) and Eid (new-outfit demand peaks); localise to Arabic.

AI agent KB: sizing & fit (the #1 question), returns/exchanges (high return rates β€” be clear), "style it with…" cross-sell, current drops.

Sample: "Still thinking it over, {{first_name}}? Your {{product_name}} is waiting β€” sizes are selling fast. {{cart_link}}"

KPIs: cart-recovery rate Β· new-drop revenue (Champions vs rest) Β· return rate Β· cross-season repeat rate.

Related: Cross-Vertical Playbooks Β· Foundations

The opportunity. F&B is bought weekly (or more), so small nudges compound fast and WhatsApp is already the ordering channel in MENA. Two dynamics dominate: habit & recency (win the next order this week β€” reorder reminders are the core play) and timing (breakfast/lunch/dinner are different audiences).

Online + offline: unify store (e.g. Salla) + POS (Foodics) into one contact view so a regular is a regular whether they order online or walk in. (Confirm POS connectors enabled for your account.)

Segments: frequent diners, lapsed regulars (act fast β€” a 2-week gap is meaningful), time-of-day, COD-risk.

Priority automations: (1) reorder reminder on the customer's own cadence β€” the money-maker; (2) order & delivery confirmation on WhatsApp; (3) welcome/first-order; (4) abandoned cart with a short fuse (~15–30 min β€” F&B carts expire fast); (5) early win-back.

MENA: Ramadan is the biggest F&B moment β€” use the Hijri trigger for Suhoor/Iftar timing and Eid; pre-Iftar reminders convert strongly.

AI agent KB: menu & availability, cut-off times, delivery zones/ETAs, allergens/halal, combos.

Sample: "Your usual {{item}}, {{first_name}}? Tap to reorder β€” ready in {{time}} ⏱️ {{link}}"

KPIs: order frequency Β· reorder-reminder conversion Β· lapsed-regular reactivation speed Β· Ramadan revenue vs baseline.

The opportunity. Two traits make lifecycle automation unusually powerful: replenishment (consumables run out on a predictable cycle β€” reminding just before run-out is the single highest-ROI automation) and advice-led buying (routines, shade/skin match, ingredients β€” a knowledgeable agent lifts conversion). Together: predict the reorder, and be the expert in the chat.

Segments: replenishment-due (days-since-last-order approaching run-out, per SKU), VIP, routine builders (bought one step, missing complements), lapsed.

Priority automations: (1) replenishment reminder timed just before run-out β€” the money-maker; (2) welcome + how-to-use + routine completion; (3) order/shipping + usage tip; (4) educational cart nudge; (5) win-back for missed replenishment.

MENA: Ramadan/Eid drive gifting & self-care β€” use the Hijri trigger for gift sets and limited editions; localise to Arabic.

AI agent KB: routines & how to layer, shade/skin-type matching, ingredients/suitability, hygiene returns.

Sample: "Running low on {{product_name}}, {{first_name}}? Reorder now so you don't skip a day of your routine ✨ {{link}}"

KPIs: replenishment-reminder conversion (headline) Β· repeat-purchase rate Β· routine-completion rate Β· AI containment on advice.

The patterns adapt to any repeat-purchase vertical β€” commerce segments, the priority automations, a grounded agent, and the cross-vertical playbooks. Only cadence and the agent knowledge base change:

  • Electronics: long cadence between big-ticket items β†’ monetise accessories & warranties post-purchase; agent KB = specs/compatibility/warranty.
  • Home & Living: occasional, project-based β†’ nurture with inspiration + seasonal refresh; agent KB = dimensions/materials/assembly.
  • Grocery & Essentials: weekly β€” reorder-the-basket is the core value; agent KB = availability/substitutions/slots.
  • Kids & Baby: age-stage driven β†’ next-size/next-stage recommendations + replenishment (diapers/formula); agent KB = sizing/age/safety.

How to start any vertical: connect your store β†’ build 3–4 commerce segments β†’ instantiate the priority automations and tune the cadence β†’ fill the agent KB with your top questions β†’ layer the cross-vertical playbooks.

Why. The shopper showed high intent and you already have their contact. On WhatsApp it's conversational β€” they can reply and (you or the AI agent) close the sale.

Trigger: cart.abandoned (connected store; browse/cart pixel improves coverage) with an entry condition so you don't nag someone who bought.

The flow β€” a 3-touch ladder (more feels like harassment):

  1. +1h helpful reminder with the cart items (SMS fallback) β€” no discount yet.
  2. Branch: order.paid? β†’ End (Mark conversion). Else +24h nudge + optional coupon.
  3. +48–72h final "your cart is about to expire".

Message: "Hi {{first_name}} πŸ‘‹ you left {{product_name}} in your cart. Want to finish up? {{cart_link}}"

Best practice: skip the coupon for Champions; lead with it for At-Risk. Quiet hours & frequency caps apply automatically.

Mistakes: discounting on the first touch (trains people to abandon on purpose); >3 messages; no entry condition.

Measure: cart-recovery rate & attributed revenue; per-step drop-off.

Trigger: order.paid; branch on first-order so first-timers get the full series and repeat buyers a lighter one.

Flow: thank-you + what's next β†’ shipping updates (order.fulfilled/delivered) β†’ post-delivery check-in (offer help / route to AI agent) β†’ complementary recommendation or reorder nudge β†’ tag new-customer, add to an onboarding segment.

Messages: "Thanks for your order, {{first_name}}! πŸŽ‰ We're preparing {{product_name}} now." … "People who bought {{product_name}} love {{complement}} β€” here's a little something to try it."

Compliance: order/shipping updates are transactional (exempt from quiet hours); the recommendation is promotional (quiet hours apply). Classify intent correctly so updates always go out immediately.

Measure: repeat-purchase rate, time-to-second-order, attributed revenue from the nudge.

Trigger: order.created where payment = COD.

Flow: WhatsApp "Confirm your order?" (Yes/No buttons) β†’ wait-for-event β†’ on "Yes" proceed; on "No" flag/cancel; on timeout, remind then flag β†’ feed the outcome into a COD-risk segment.

Message: "Hi {{first_name}}, please confirm your COD order of {{order_total}} for delivery to {{city}}. Reply Yes to confirm or No to cancel."

Best practice: for repeat COD-failers, require prepayment via a payment link. Confirmation is transactional (exempt); use a template outside the 24h window.

Mistakes: no timeout branch; not using the outcome to build the COD-risk segment (you keep eating the same failures).

Measure: COD failure/return rate before vs after; confirmation reply rate.

Trigger: order.delivered + a 2–3 day wait (let them use the product).

Flow: optional AI sentiment check β†’ branch: likely happy β†’ review request link; likely unhappy β†’ Handoff to human to fix it privately.

Message: "Hi {{first_name}}, how are you enjoying {{product_name}}? A quick rating helps others shop with confidence: {{review_link}}"

Best practice: ask once, make it one tap. Mistake: asking before delivery or after a delivery problem.

Measure: review reply/click rate; downstream conversion lift on reviewed products.

Trigger: segment entered β€” RFM At Risk, Can't Lose Them, or Hibernating (or days-since-last-order > N).

Flow: "we miss you" + a reason to return (new arrivals) β†’ wait 3–5 days β†’ branch (paid? β†’ End) β†’ stronger incentive (respect the discount ceiling) β†’ last-chance β†’ End.

Scale to value: Can't-Lose-Them β†’ personal/VIP touch, a real reason (not just a coupon). At-Risk β†’ modest incentive + what's new. Hibernating/Lost β†’ biggest incentive or a low-cost final attempt, then suppress.

Mistakes: same offer regardless of past value; never suppressing truly-lost contacts.

Measure: reactivation rate by segment, revenue per win-back, RFM movement (At Risk β†’ Loyal).

Trigger: time.birthday, or a Hijri-calendar date (Ramadan start, Eid Al-Fitr/Adha, or any Hijri month+day).

Flow: personalised greeting referencing their favourite category/last purchase β†’ optional time-boxed offer β†’ Mark conversion on redemption.

Messages: "Happy birthday, {{first_name}}! 🎁 {{coupon}} on your favourites ({{top_category}})." Β· "Ψ±Ω…ΨΆΨ§Ω† ΩƒΨ±ΩŠΩ…ΨŒ {{first_name}} β€” an early look at our Ramadan collection, just for you."

Best practice: time Ramadan/Eid sends with the eCommerce dashboard's Hijri header; segment by past category so it feels personal, not mass.

Measure: redemption rate and occasion-period revenue vs a normal period.

There are three ways a business can send on WhatsApp. Knowing which one you're on explains what you can automate, how you're billed, and who you talk to for support.

The three options

  • WhatsApp Business App β€” the free mobile app for very small businesses. Manual, one device, no automation or CRM. Not what Relay uses.
  • WhatsApp Business Platform β€” Cloud API β€” Meta-hosted, programmatic access for automation, campaigns, and multi-agent inboxes. This is today's standard and what Relay runs on.
  • WhatsApp Business Platform β€” On-Premises API β€” the older self-/partner-hosted version. Meta is sunsetting it; new features and template sending have been moving off it. New deployments should always be on the Cloud API.

What a WABA is

A WhatsApp Business Account (WABA) is the container for your phone number(s), message templates, quality rating, and settings. It lives inside a Meta Business Portfolio (Business Manager). One business can have multiple WABAs; a WABA can hold multiple numbers.

How Relay fits

Relay connects you to the Cloud API through Cequens as a Meta Business Solution Provider (BSP). You get onboarding, number provisioning, template management, and a shared inbox without running any WhatsApp infrastructure yourself.

Not sure what a BSP is or why it matters in MENA? See WhatsApp partner types.

Related: Phone numbers, WABAs & number hosting Β· Partner types Β· Help: Connect a WhatsApp number

Meta lets businesses reach the WhatsApp Business Platform in a few ways, organised under the Meta Business Partners program. The model you pick decides who hosts messaging, who bills you, and how much of the plumbing you own.

The partner models

  • Solution Partner (classic "BSP" β€” Business Solution Provider) β€” a Meta-approved partner that provisions WhatsApp access, hosts messaging, provides tooling, and bills you directly (they settle with Meta on your behalf). Cequens is a BSP, and Relay is built on top of it.
  • Tech Provider β€” builds software on the Cloud API, but the customer holds the direct billing relationship with Meta (your own WABA and credit line; the provider supplies the app layer).
  • Direct / self-serve Cloud API β€” a business integrates with Meta itself and manages its own account, infrastructure, and billing. Most flexibility, most operational overhead.

A note on the names

"BSP" is the long-standing industry term; Meta's program language now uses Solution Partner and Tech Provider tiers, with a verified Meta Business Partner badge for approved companies. You'll hear all of these used interchangeably.

Why the choice matters in MENA

  • Faster onboarding β€” an established regional BSP speeds number approval and verification.
  • Local compliance β€” help with Arabic templates, KSA/UAE rules, quiet-hours and consent.
  • One invoice & local support β€” consolidated billing and a team in your timezone.

Related: The WhatsApp Business Platform, explained Β· How WhatsApp billing works

To start a conversation outside the 24-hour service window, you must use a pre-approved message template. Templates are reviewed by Meta and grouped into three categories that also drive how they're billed.

The three categories

  • Marketing β€” promotions, offers, product launches, newsletters, cart nudges, re-engagement. The most common category for campaigns.
  • Utility β€” messages triggered by a transaction or account event the customer expects: order confirmations, shipping updates, appointment reminders, payment receipts.
  • Authentication β€” one-time passcodes and login/verification codes only.

What a template contains

A name, a language, a category, and a body with {{1}}-style variables. Optionally a header (text/media), a footer, and buttons (quick-reply or call-to-action). You supply sample values so Meta can review it.

Why templates get rejected

  • Promotional content submitted as Utility (wrong category).
  • Variables at the very start/end, back-to-back variables, or missing sample values.
  • Prohibited or regulated content, or content that looks like spam.
  • Formatting/grammar issues or broken links.
Category re-classification: Meta may re-categorise a template it believes is mis-labelled (e.g. a "Utility" that reads as marketing), which changes how it's billed. Template pausing: templates with high block/report rates can be paused or disabled until quality recovers.

In Relay you build, preview, and submit templates under WhatsApp β†’ Templates; each shows its live status (Approved / Pending / Rejected).

Related: How WhatsApp billing works Β· Quality rating & messaging limits Β· Help: WhatsApp templates

Meta's billing model has evolved. You don't need the exact rates to plan well β€” you need to understand the categories, the free service window, and what triggers a charge.

From conversations to per-message

From 2022 WhatsApp billed per 24-hour conversation in four categories. As of 1 July 2025 Meta moved to per-message pricing: you're charged per template message delivered, priced by category (Marketing / Utility / Authentication) and destination country. Free-form service messages are not charged per message.

The 24-hour customer service window

When a customer messages you, a 24-hour window opens. Inside it you can reply with free-form service messages (no template needed, no per-message charge). Outside it, you must send an approved template, which is billed by category.

Free-er paths

  • Free entry points β€” conversations that begin from a click-to-WhatsApp ad or a Facebook Page call-to-action open a longer 72-hour free window.
  • Utility inside the service window β€” utility templates sent while a service window is open have been made free (from Nov 2024).
Prices vary by country and change over time. Relay surfaces your WhatsApp usage and billing in-app β€” for exact current rates, check with your Relay account team.

Related: Template categories & approval Β· Opt-in, consent & the policies

Meta protects users by scoring each sending number and capping how fast you can grow. Two things to watch: your quality rating and your messaging limit tier.

Quality rating

Each phone number carries a rating from the last 7 days of user signals (blocks, reports, "why did I get this"):

  • 🟒 Green β€” High
  • 🟑 Yellow β€” Medium
  • πŸ”΄ Red β€” Low (at risk of restriction)

Phone-number status can read Connected, Flagged (quality dropped, under review), Restricted (hit the limit or low quality), or Pending.

Messaging limit tiers

Your limit is the number of unique customers you can start conversations with in a rolling 24 hours:

  • Trial / unverified β€” a small test volume (around 250 unique customers).
  • Tier 1 β€” 1,000 unique customers / 24h
  • Tier 2 β€” 10,000
  • Tier 3 β€” 100,000
  • Tier 4 β€” Unlimited

How you scale up (and down)

Complete business verification and keep High/Medium quality while regularly using ~50%+ of your current limit β€” Meta then auto-upgrades you to the next tier. If quality falls, limits can be reduced.

What lowers quality: messaging people who never opted in, high block/report rates, and irrelevant or too-frequent marketing. Protect it with clean opt-in, tight segments, and frequency caps β€” Relay's frequency ledger enforces per-contact limits for you.

Related: Opt-in, consent & the policies Β· Display name, verification & the green tick

WhatsApp is a permission-first channel. Getting opt-in right protects your quality rating, keeps you compliant, and is the single biggest driver of deliverability.

The opt-in requirement

Meta requires opt-in before you message someone. The opt-in must make clear that the person will receive messages from your business on WhatsApp, and it must identify the business by name.

Acceptable ways to collect it

  • A checkbox at sign-up or checkout (unchecked by default).
  • A keyword the customer sends to your number ("START", "JOIN").
  • IVR / phone, in-store, or an existing channel where they clearly agreed.

Whatever the method, log the consent (source + timestamp). Relay stores consent state on each contact and offers a double opt-in step (send_optin_request) inside Automations.

The policies

You're bound by the WhatsApp Business Messaging Policy and Commerce Policy. Regulated/prohibited categories include alcohol, tobacco, drugs, weapons, adult content, gambling, and certain supplements and financial products. No unsolicited or bulk spam.

MENA layer: pair Meta's rules with local law β€” KSA PDPL, UAE data rules, and legal quiet hours. Relay's quiet-hours and DND controls enforce these on top of consent.

Related: Quality rating & messaging limits Β· Foundations: consent & deliverability

Three related trust signals often get confused. Here's what each one is and how you get it.

Display name

The business name customers see on your messages. It must follow Meta's display-name guidelines β€” reflect the real business, avoid URLs or emoji-only names, and match your branding. A new display name is reviewed by Meta.

Business verification

Done in Meta Business Manager, this confirms your business is a real, registered entity (documents + domain). It's a prerequisite for raising messaging limits and for applying for the green tick.

Official Business Account (the green tick)

The green checkmark beside your name marks an Official Business Account (OBA). Meta grants it based on brand notability and authenticity β€” it isn't simply purchased. It boosts trust and can lift open/response rates. Without OBA, a verified business still shows its approved display name (customers just don't see the tick).

Order of operations: get your display name approved β†’ complete business verification β†’ maintain good quality β†’ become eligible for OBA.

Related: Quality rating & messaging limits Β· Phone numbers, WABAs & number hosting Β· Help: WhatsApp onboarding

Every WhatsApp message sends from a registered phone number tied to a WABA. Here's how numbers work and what to prepare.

The structure

A WABA can hold several phone numbers, but each number belongs to one WABA at a time. Numbers live under your Business Portfolio.

Choosing a number

  • A brand-new number β€” clean, dedicated to WhatsApp Platform.
  • Migrate an existing number β€” including one currently on the WhatsApp Business App. Migration frees it from the app and registers it on the Platform (you lose app-only chat history).

The number must be able to receive an SMS or voice OTP to register, and must not be active on regular WhatsApp or another WABA.

Registration & the two-step PIN

Numbers are registered with a 6-digit two-step verification PIN that prevents anyone else from re-registering them. Keep this PIN safe.

Hosting

On the Cloud API the number is hosted by Meta (through your BSP). With Relay/Cequens, provisioning, OTP, and the PIN are all handled inside Embedded Signup during WhatsApp onboarding β€” no manual Meta setup.

Related: The WhatsApp Business Platform, explained Β· Display name & verification Β· Help: Connect a WhatsApp number

Almost all business SMS is A2P. Knowing the path a message takes explains why routes, sender IDs, and delivery receipts matter.

A2P vs P2P

  • P2P (person-to-person) β€” normal phone-to-phone texting between individuals.
  • A2P (application-to-person) β€” messages sent from software or a business to a person: OTPs, order alerts, marketing. This is what Relay does, at scale, with tracking.

The delivery chain

A single A2P message hops through several parties before it lights up a phone:

  1. Your brand β€” you send via a Relay campaign, automation, or the API.
  2. Aggregator / provider β€” Cequens, which holds carrier-grade routes across MENA.
  3. Interconnect / SMSC β€” the operator's short-message service centre queues and forwards.
  4. Destination mobile operator (carrier) β€” delivers to the subscriber.
  5. Handset β€” and a delivery receipt (DLR) flows back up the chain.

Why the route matters

Not all routes are equal β€” direct/wholesale routes deliver reliably with real DLRs, while cheap "grey" routes drop messages or fake receipts. Cequens provides carrier-grade A2P routes in the region, and Relay routes each message through the best available carrier connection for you.

Related: Delivery receipts & message statuses Β· Sender IDs explained Β· Help: SMS in Relay

The sender ID is what appears as the sender on the recipient's phone. Choosing and registering it correctly is the single biggest lever on trust and deliverability.

The types

  • Alphanumeric sender ID β€” up to 11 characters of your brand name (e.g. RELAY). Branded and trusted, but one-way β€” recipients can't reply. The default for A2P branding in MENA.
  • Long code (long virtual number) β€” a standard mobile number. Supports two-way replies; lower throughput.
  • Short code β€” a 4–6 digit number. High throughput, often for OTP and high-volume campaigns; leased and registered per country.

Dedicated vs shared

A dedicated sender is exclusive to you (full control, consistent branding). Shared pools are cheaper but you don't control the number and can't brand it.

Registration is mandatory in the GCC

Most Gulf operators require sender IDs to be pre-registered / whitelisted (KSA via CITC, UAE via TDRA, etc.). Unregistered IDs are typically blocked or replaced with a generic label. Arabic sender IDs are supported in some markets.

In Relay you request and track sender IDs under Settings β†’ Sender ID Registration and see live ones under Approved Senders.

Related: Deliverability & MENA regulation Β· Help: Request a Sender ID

SMS has hard character limits that depend on the alphabet you use. Arabic and emoji cost more room than Latin text β€” this directly affects how many message "parts" you pay for.

Two encodings

  • GSM-7 β€” the standard 7-bit alphabet. 160 characters in a single SMS. Latin letters, digits, basic punctuation.
  • UCS-2 / Unicode β€” required for Arabic, emoji, and other non-Latin scripts. 70 characters in a single SMS.

Concatenation (multipart)

Longer messages are split into segments and reassembled on the handset. The join header eats a few characters, so each part shrinks:

  • GSM-7 multipart: 153 chars per part
  • UCS-2 multipart: 67 chars per part

How this hits billing

You're charged per segment, not per message. A 300-character Arabic message = 5 parts (67 each) β†’ five times the cost of one. Keep Arabic tight, or watch the live part counter in Relay's composer.

Watch out: a few "extended" GSM-7 characters (€ { } [ ] ~ ^ \ |) count as two characters, and a single emoji flips the whole message to UCS-2 (70-char limit).

Related: Delivery receipts & message statuses Β· Help: SMS templates

A delivery receipt (DLR) is the status the carrier returns for each message. Reading them correctly is how you measure real reach β€” not just what you sent.

The lifecycle

  1. Submitted β€” accepted by Relay/the provider.
  2. Sent β€” accepted by the carrier (handed off).
  3. Delivered β€” confirmed on the handset. βœ…
  4. …or a terminal failure: Failed, Rejected, Expired, or Unknown.
"Sent" β‰  "Delivered". A message can be accepted by the carrier and still never reach the phone. Always measure on Delivered.

Common non-delivery reasons

  • Invalid or inactive number.
  • Handset off / out of coverage (message expires after the retry window).
  • DND / blocked, or sender ID not permitted on that network.
  • Content filtered, or insufficient balance.

Some routes deliver DLRs late or not at all β€” another reason route quality matters.

In Relay

Statuses surface in Message Explorer and in campaign performance; DLRs flow back internally over the messaging bus and can be exported for reconciliation.

Related: A2P & the delivery chain Β· Deliverability & MENA regulation Β· Help: Messages Explorer

Deliverability is getting the message to the handset β€” and in MENA it's as much about compliance as it is about routing. Regulators actively filter non-compliant A2P traffic.

The regulators

Each market has an authority that governs A2P SMS and sender IDs: KSA β€” CITC/CST, UAE β€” TDRA, Bahrain (TRA), Oman (TRA), Qatar (CRA), Kuwait. They mandate sender-ID registration, may replace or block unregistered IDs, and enforce consent and content rules.

DND & opt-out

Honour STOP / unsubscribe and maintain suppression lists. Relay stores opt-out state per contact and supports keyword opt-out, so unsubscribed customers are automatically excluded.

Quiet hours & Ramadan

Marketing SMS must respect legal quiet hours β€” e.g. roughly KSA 09:00–22:00, UAE 07:00–21:00, Qatar 08:00–21:00, with extra Ramadan sensitivity. Relay's quiet-hours engine holds sends until the allowed window opens in each recipient's timezone.

Content & links

Avoid prohibited/regulated content. Public URL shorteners are sometimes filtered β€” Relay uses its own ShortLink domain so links stay trusted and trackable.

Related: Sender IDs explained Β· Delivery receipts & statuses Β· Foundations: consent & deliverability

SMS and WhatsApp aren't rivals β€” they're a toolkit. The trick is matching the channel to the job.

Where SMS wins

  • Universal reach β€” works on any phone, no app or internet required.
  • Reliability for critical messages β€” OTPs and time-sensitive alerts.
  • Fallback β€” reaches customers who don't have WhatsApp or where a WhatsApp send fails.

Core SMS use cases

  • OTP / 2FA β€” login and verification codes.
  • Transactional β€” order, shipping, delivery, and appointment updates.
  • Time-critical alerts β€” outages, price drops, back-in-stock.
  • Broad promotional reach β€” a short, branded blast.

When to reach for WhatsApp instead

Rich media, two-way conversations, branded templates with buttons, and higher marketing engagement β€” see how WhatsApp billing works and template categories.

Best practice β€” use both: WhatsApp as the primary engagement channel, SMS as the universal fallback and OTP workhorse. In Relay, automations can branch or fall back across channels automatically.

Related: Encoding & length Β· Knowledge Base: WhatsApp & Meta Essentials