Skip to main content
← Back to glossary
Messaging channels

24-hour messaging window

ما هو 24-hour messaging window?

هذا المصطلح متوفر حاليًا باللغة الإنجليزية فقط.

The 24-hour messaging window is the rolling customer-service window Meta opens on a WhatsApp conversation the moment the customer sends your business a message. For 24 hours from their last inbound message you can reply with any free-form content; once the window lapses, only a pre-approved template message reaches that customer, and the window re-opens on the customer's next inbound message.

More detail

Every new inbound message from the customer restarts the 24-hour clock, so an active back-and-forth conversation stays in free-form session mode indefinitely. Session-mode replies are also the lower-cost reach: Meta prices customer-service conversations differently from business-initiated template conversations.

Orbit enforces the window before dispatch rather than after the error: a free-form send attempted after the window lapses is refused with WHATSAPP_SESSION_EXPIRED, and the docs' troubleshooting walkthrough maps that refusal to the fallback — send an approved template, which re-establishes delivery even with the window closed, or wait for the customer to reply and reopen the window. The 24h-window guide covers the pre-flight window-state check and the re-engagement error family (WHATSAPP_OUTSIDE_24H_WINDOW, WHATSAPP_RE_ENGAGEMENT_WINDOW_CLOSED, WHATSAPP_RE_ENGAGEMENT_REQUIRED).

The same window semantics apply per WABA per customer pair: the window is scoped to the conversation between one business phone number and one customer, so an inbound message on one of your WhatsApp numbers does not open the window on another.

الأسئلة الشائعة

When exactly does the 24-hour window open and close?
It opens the moment the customer sends your business any inbound message, and it re-opens on every subsequent inbound message. It closes 24 hours after the most recent inbound message; from then on you can only reach that customer with a pre-approved template until a new inbound message re-opens the window.
Why did my WhatsApp send fail with WHATSAPP_SESSION_EXPIRED?
You attempted a free-form (non-template) send after the window lapsed. Orbit checks the window state before dispatch and refuses the send with that code rather than handing Meta a message it would reject. Send an approved template instead — templates reach the customer whether or not a window is open — or wait for the customer's next inbound message to re-open the window.
How do I check the window state before sending?
The 24h-window guide's window-status section covers the pre-flight check Orbit exposes for a given conversation, so a send can pick free-form versus template before it dispatches instead of catching the refusal after the fact.

Build it on Orbit

Voice, messaging, email, video, and AI agents on one platform and one pay-as-you-go bill. Start free — no credit card required.