Skip to main content
Interactive messages let the recipient tap a button, pick from a list, or launch a WhatsApp Flow instead of typing a reply. Pass the result to send under the interactive key — the SDK ships with builders so you rarely construct the raw by hand.

Reply buttons

Up to three buttons, each with an ID you’ll receive back on tap:
When the user taps, you’ll receive an interactive event:

Lists

Lists support up to ten rows grouped into sections. The builder is immutable — chain .section() to add content:
List taps arrive as list_reply:

Product and product list

Single product — opens the catalog page:
Multi-product, grouped by category:
Orders placed through a product message arrive as an order inbound content type — see Events.

Flows

Launch a WhatsApp Flow (a structured form experience) with the flow helper:
Flow submissions arrive as nfm_reply:

Building raw interactive messages

If you need a shape the builders don’t cover, pass a plain :
The builders are thin wrappers — they exist to catch typos and make common shapes ergonomic, not to restrict what you can send.