WhatsApp Flow
9 min
we recognize that entering information via whatsapp chats may be challenging and time consuming for users, potentially leading to a drop in engagement to make things smoother, you can use whatsapp flows to schedule appointments, and reservations, book a service, or schedule a consultation within whatsapp or any other form based use case where structured interactions are more relevant for your business \<font color="#f6b32a">\</font> ensure that your bot is deployed on whatsapp using 360dialog as the provider by following these steps navigate to configure > deployment > whatsapp > provider, and select 360dialog to locate the node, go to bot builder > add node > data input nodes > whatsapp flows \<font color="#f6b32a">\</font> to display your flows on the 'whatsapp flows' node, it is essential to initially create these flows on facebook business manager (fbm) https //business facebook com/wa/manage/ \<font color="#f6b32a">\</font> select whatsapp manager from fbm & select the business account that we need to manage & select the flows option 2\ select the flows option & this will display a list of the flows 3\ click on create new flow fill in the flow name & categories for which flow is being used 4\ once the new flow is created, it is created with the default script we can update the script accordingly to create different flows with multiple screens 5\ once the flow is created, publish the flow 6\ you can also refer to the meta’s official documentation on whatsapp flows https //developers facebook com/docs/whatsapp/flows/gettingstarted/creatingaflow https //developers facebook com/docs/whatsapp/flows/gettingstarted/creatingaflow \<font color="#f6b32a">\</font> ect an existing flow choose the appropriate flow from the dropdown menu set up in your facebook business manager (fbm) message compose an initial message that introduces and outlines the purpose of your flow button label specify a name for your action button that will activate your flow choose the path choose the appropriate path from your current bot using the dropdown menu this path will be activated after interacting with the mentioned button attribute values for dynamic fields specify attributes for this field to retrieve a dynamic value according to your specific use case \<font color="#f6b32a">\</font> 1 multiple screens (login) { "version" "3 0", "screens" \[ { "id" "login", "layout" { "type" "singlecolumnlayout", "children" \[ { "type" "form", "name" "flow path", "init values" { "path" "happy find ap" }, "children" \[ { "type" "textinput", "name" "name", "required" true, "input type" "text", "label" "name" }, { "type" "textinput", "name" "email", "required" true, "input type" "text", "label" "email" }, { "type" "footer", "label" "continue", "on click action" { "name" "navigate", "next" { "type" "screen", "name" "confirmation" }, "payload" { "name" "${form name}", "email" "${form email}" } } } ] } ] }, "title" "login", "data" {} }, { "terminal" true, "data" { "name" { "type" "string", " example " "john" }, "second name" { "type" "string", " example " "kane" } }, "id" "confirmation", "title" "confirmation", "layout" { "type" "singlecolumnlayout", "children" \[ { "type" "textheading", "text" "confirm details" }, { "type" "textsubheading", "text" "name" }, { "type" "textbody", "text" "${data name}" }, { "type" "textsubheading", "text" "email" }, { "type" "textsubheading", "text" "${data email}" }, { "type" "footer", "label" "continue", "on click action" { "name" "complete", "payload" { "name" "${data name}", "second name" "${data email}" } } } ] } } ] } 2\ ticket booking { "version" "3 1", "screens" \[ { "id" "sign up", "title" "finish sign up", "data" {}, "terminal" true, "success" true, "layout" { "type" "singlecolumnlayout", "children" \[ { "type" "form", "name" "form", "children" \[ { "type" "textinput", "name" "firstname", "label" "first name", "input type" "text", "required" true }, { "type" "textinput", "label" "last name", "name" "lastname", "input type" "text", "required" true }, { "type" "textinput", "label" "email address", "name" "email", "input type" "email", "required" true }, { "type" "footer", "label" "done", "on click action" { "name" "complete", "payload" { "firstname" "${form firstname}", "lastname" "${form lastname}", "email" "${form email}" } } } ] } ] } } ] }