---
title: "WhatsApp Flows JSON Templates and Previewer"
description: "Free WhatsApp Flows JSON examples in six languages, including English and Arabic: lead forms, bookings, surveys and opt-ins. Preview the screens, validate your JSON and copy it."
canonical: "https://omnichannels.ai/tools/whatsapp-flows-templates/"
language: "en"
updated: "2026-10-10"
publisher: "BroadNet Technologies"
brand: "OmniChannels.ai"
---

# WhatsApp Flows JSON Templates and Previewer

Canonical: https://omnichannels.ai/tools/whatsapp-flows-templates/
Language: en
Publisher: OmniChannels.ai by BroadNet Technologies

A WhatsApp Flow is a set of in-chat screens defined in Flow JSON. The simplest valid Flow has a version, such as 7.3, and a screens array. Each screen has an id made of letters and underscores, a SingleColumnLayout with components, and one Footer button. Screens move forward with navigate actions, and the last screen is marked terminal and runs complete, which sends the answers to your webhook.

## How to use a WhatsApp Flow template
1. **Pick a template:** Choose a use case such as lead capture, table booking or a support ticket, then switch between the language versions.
2. **Preview the screens:** Tap the button in the phone preview to move through each screen exactly in the order the customer will see it.
3. **Copy or download the JSON:** Paste the Flow JSON into the Flow editor in WhatsApp Manager or upload it with the Flows API, then publish it.
4. **Validate your edits:** Paste your changed JSON into the validator to catch broken routes, missing fields and labels over Meta's character limits.

## What is in a WhatsApp Flow JSON file

Flow JSON has two required properties: version and screens. Each screen has an id, an optional title shown in the top bar, and a layout of type SingleColumnLayout whose children are components: text, inputs, selection lists, date pickers, opt-ins and one Footer button.
Navigation lives in actions. A Footer with navigate opens the next screen; on the final screen, which is marked terminal, a Footer with complete closes the Flow and sends the payload to your business with the flow token. From Flow JSON 4.0, any screen can read fields from an earlier screen with ${screen.SCREEN_ID.form.field}, so the templates keep navigate payloads empty and collect every answer in the final complete payload.
- version: the Flow JSON version, "7.3" in every template.
- screens: the ordered list of screens; the first one without an inbound route is the entry screen.
- routing_model and data_api_version: only for Flows that call your data endpoint.
- terminal and success: mark the last screen and whether finishing there counts as success.

## Flows with or without a data endpoint

All twelve templates are endpoint-less. They work without a server: options are written into the JSON, Meta generates the routing model, and you receive the answers on your webhook when the customer completes the Flow. Meta recommends endpoint-less Flows whenever live data is not needed, because they open faster and are quicker to build.
Add a data endpoint when the screen depends on live data: available appointment slots, a price that changes, stock, or a check against the customer's account. Then the screens use data_exchange, the Flow needs data_api_version and a routing_model, and your endpoint must decrypt each request and answer within Meta's timeout. That is the part we build and host for clients.

## Character limits and component rules to respect

Most rejected Flows fail on small rules. Labels are short: 20 characters for a text input, text area or dropdown, 30 for a radio or checkbox group, 40 for a date picker and 35 for the Footer button. Option titles are limited to 30 characters and descriptions to 300. Headings take 80 characters and body text 4,096.
Per screen you can use up to 50 components, one Footer, two embedded links, three images and five opt-ins. Screen ids may contain only letters and underscores, and SUCCESS is reserved. Arabic labels count characters, not bytes, so a 20-character Arabic label is fine. The validator checks all of these and points to the screen that needs fixing.

## Arabic and RTL Flows for GCC customers

Every template has a native Arabic version with the same screens and field names, so your webhook code handles both languages without changes. WhatsApp lays out Arabic Flows from right to left on the customer's phone; the preview shows the same direction.
The library includes use cases that matter in the Gulf: Ramadan and Eid offer sign-ups with a message time after iftar, restaurant table booking, real estate viewing requests and a KYC document checklist that asks customers not to send ID photos in the chat.

## How to send a Flow to customers

After you publish a Flow, send it as an interactive flow message with its Flow ID, a flow token you generate, a short button text and the first screen. The library gives you the message payload for each template. Interactive messages work only within the 24-hour customer service window; to reach customers first, attach the Flow to an approved message template with a Flow button.
When the customer finishes, WhatsApp shows them a summary of their answers and you receive the complete payload on your webhook. Reply with a confirmation message that says what happens next and how to change or cancel.

## WhatsApp Flows JSON: common questions

### Which Flow JSON version should I use?

Use 7.3, the version Meta recommends for publishing new Flows when we checked its changelog. Older versions such as 5.0 are frozen: Flows on them can still be sent but not published.

### Do I need a server or data endpoint for these templates?

No. All the templates are endpoint-less. The options are written into the JSON and the answers reach your webhook when the customer taps the final button. You only need an endpoint for live data such as available slots or prices.

### How do I use a template in WhatsApp Manager?

Create a Flow in WhatsApp Manager, open the JSON editor, replace its content with the template, check the preview and publish. You can also create and publish the Flow with the Flows API.

### Can I edit the labels and options?

Yes. Change any text, add or remove options and fields, then paste the JSON into the validator. It warns you when a label goes over the character limit or a route points to a screen that no longer exists.

### Why does my Flow fail to publish?

The common causes are a label over its limit, a screen id with digits or hyphens, a terminal screen without a Footer, the complete action on a non-terminal screen, and data_exchange without data_api_version and a routing model.

### Are the Arabic templates right-to-left?

Yes. They are written in Arabic, and WhatsApp displays them from right to left. Field names and option ids stay in English, so the same webhook code works for both languages.

### Can a Flow collect ID documents?

Flows have photo and document picker components, but sensitive uploads need careful handling. The KYC template only checks which documents the customer has and books a secure submission, which keeps ID images out of the chat.

### Is this validator the same as Meta's?

No. It runs basic static checks modelled on the errors Meta documents. Meta's validator in WhatsApp Manager also checks expressions and data models, so publish only after it reports no errors.
