The WhatsApp 24-hour window, explained for developers
The 24-hour window, which Meta calls the customer service window, is the period during which a business may answer a customer in free text. It opens when the customer writes and lasts 24 hours; each new message from the customer restarts it. Outside it, only an approved template can be sent.
The rule
| Situation | What you may send |
|---|---|
| The customer wrote less than 24 hours ago | Free text, buttons, lists, media, a Flow; and templates |
| The customer wrote more than 24 hours ago | An approved template only |
| The customer never wrote | An approved template only |
What reopens it, and what does not
- A message from the customer reopens the window for 24 hours.
- A template you send does not reopen it. Only the customer's answer does.
- A message written from the WhatsApp Business app, in coexistence, does not reopen it either.
Read it before you send
With Nodium, every conversation carries window: open, expiresAt and minutesLeft, and message.received carries window_expires_at. Free text outside the window is refused before it reaches Meta, with window_closed (409): a message never looks sent when it was not.
const conversation = await nodium.conversations.get(conversationId)if (conversation.window.open) { // Inside the window: free text, buttons, lists await nodium.messages.send({ channelId, to, type: 'text', text: 'Your order has shipped.' })} else { // Outside: only an approved template goes through await nodium.messages.send({ channelId, to, type: 'template', templateName: 'order_shipped', variables: { 1: 'Karim' } })}What it changes on the bill
Meta bills templates per message, and counts free-text replies as service messages, with a monthly free allowance per number. See Meta's pricing explained.
Frequently asked questions
Can I extend the 24-hour window?
No. Only a new message from the customer restarts it. To write after it closed, send an approved template.
Does a button tap from the customer count?
Any message the customer sends, a button reply included, opens or restarts the window.