Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.digifist.com/llms.txt

Use this file to discover all available pages before exploring further.

WhatsApp operates on a 24-hour conversation window that governs what types of messages can be sent at any given time. The window determines whether an agent or automation can send a free-form message, or whether a pre-approved template is required. Understanding this rule directly affects how you configure automations, respond in the Inbox, and manage campaign timing.

What this covers

  • How the 24-hour window opens and resets
  • What is permitted inside and outside the window
  • How Galantis tracks the window at the message level
  • How this affects Inbox agents and automation flows

How the window works

The 24-hour customer service window opens when a customer sends an inbound message to your WhatsApp number. From that moment, a 24-hour window is active for that conversation.
EventEffect on the window
Customer sends an inbound messageWindow opens (or resets to a fresh 24 hours)
24 hours pass with no new inbound messageWindow closes
Agent or automation sends a message within the windowPermitted — no template required
Agent or automation sends a message outside the windowTemplate message required
The window resets with each new inbound message from the customer. A customer who messages you daily effectively keeps the window open continuously.

What is permitted inside the window

Within an active 24-hour window, agents and automations can send session messages — free-form text, images, documents, or other content without requiring a pre-approved template. This is the most flexible messaging mode and applies only to responses to customer-initiated contact.

What is required outside the window

Once the window has closed, the only messages that can be sent are pre-approved WhatsApp templates. This applies to:
  • All campaign broadcasts (which are always proactive and outbound)
  • All automation-triggered messages (which fire based on events, not customer inbound messages)
  • Any message sent by an agent when no active window exists for that conversation
Even if an agent is replying to a historical conversation thread in the Inbox, if the customer’s last inbound message was more than 24 hours ago, a template must be used.

How Galantis tracks the window

Galantis tracks the conversation window at the message level using Message::consumesConversationUsage(). This method identifies messages that open a new billable service window — specifically, messages where no inbound message was received from the customer in the previous 24 hours and an agent replied within that window. This tracking drives both compliance enforcement (ensuring templates are used when required) and billing (conversations that open a new window consume a credit — see Inbox Billing).

Impact on Inbox agents

When an agent opens a conversation in the Inbox:
  • If the window is active, the agent can type and send freely.
  • If the window is closed, the agent must select an approved template to initiate the conversation.
The Inbox interface reflects the current window state per conversation. Agents do not need to manually check the timestamp — the interface guides the correct behavior.

Impact on automations

Automation flows always send template messages, regardless of whether a conversation window is open. This is by design — automations fire on Shopify or platform events, not in direct response to a customer message, so they are always treated as proactive outbound messages. If you want to incorporate a customer reply into an automation’s logic, use a USER_REPLY_STATUS condition node to branch the flow based on whether the customer responded to a previous message.