## Before You Start

If this is your first time using Mini Apps, read [What is a Mini App?](/docs/what-is-a-mini-app) first. It explains what a Mini App does and what your customer sees inside WhatsApp. Then return here to learn how to edit one.

## The Two Sides of the Editor

- The **left side** is a live preview of a mobile phone. It shows exactly what your customer will see. 

- The **right side** is where you build the form.

<Callout type="note" title="📝 Note">
If you started with a ready-made template, the screens, blocks, and Footer Actions are already set up for you. You normally only need to adjust the questions, labels, and choices for your business.
</Callout>

![The Mini App editor showing the phone preview on the left and the screen editor on the right](https://cdn.easybizcloud.app/knowledge/cfc245fa-ffb6-4bc6-989c-d675d2924dc9.png)

---

## Screens

Across the top of the right side you will see your screens laid out in order, like steps in a progress bar. Each screen is one page your customer fills in before tapping to continue.

1. To change the order, grab a screen by its drag handle and slide it left or right.
2. To rename a screen, double click its name and type the new one.
3. To rename or delete a screen from a menu instead, click the <Badge>⋮</Badge> icon on that screen.
4. To add a screen, click the <Badge>+</Badge> at the end of the row.

![The horizontal screen strip across the top of the editor, with one screen's drag handle and ⋮ menu visible](https://cdn.easybizcloud.app/knowledge/982b0f7d-08e3-490f-857d-6a8a2b86b82c.png)

---

## Adding a Screen

When you click <Badge>+</Badge>, you get six choices.

| Choose this | What it does | The screen is named |
| --- | --- | --- |
| <Badge>Contact Form</Badge> | Collects customer name, phone number and email | Contact |
| <Badge>Address Form</Badge> | Collects the address, with postal code lookup | Address |
| <Badge>Service Options</Badge> | Lets the customer pick the services they want, priced from your catalog | Service Options |
| <Badge>Pickup Options</Badge> | Lets the customer pick a pickup date and time slot | Pickup Date & Time |
| <Badge>Delivery Options</Badge> | Lets the customer pick a delivery date and time slot | Delivery Date & Time |
| <Badge>Blank</Badge> | An empty screen you build yourself | Whatever you type |

<Callout type="note" title="📝 Note">
The name in this list and the name of the screen it creates are not always the same. You choose <Badge>Pickup Options</Badge>, and the screen is titled **Pickup Date & Time**.
</Callout>

<Callout type="tip" title="💡 Tip">
Choose the ready-made screen that is closest to the information you need. Use <Badge>Blank</Badge> when none of the five ready-made screens fits the question you want to ask.
</Callout>

![The Add Screen drawer showing all six screen type cards in order](https://cdn.easybizcloud.app/knowledge/cdda9d98-c90e-47bd-ab0d-3c3102f404f6.png)

---

## Blocks

Inside every screen is a list of blocks. A block is one field or question the customer answers, for example their name or their phone number. Click the arrow icon ( <Badge>⌄</Badge> ) next to any block to open its settings.

![What are Screen Blocks](https://cdn.easybizcloud.app/knowledge/dc5fc0c2-273d-4c80-acfd-dc1f83a39b99.png)

**Input Data Field** links the block to a field in EasyBiz, so the system knows where to save the answer. For example the Customer name block saves to the Name field on the customer profile. You create your own fields in <Badge>Settings</Badge>, <Badge>Library</Badge> section, <Badge>Custom Fields</Badge>.

**Label** is the text the customer reads on their phone. You can change it freely without affecting where the answer is saved.

**Required**

| Pick this | What happens |
| --- | --- |
| <Badge>Always Required</Badge> | The customer cannot continue until they answer |
| <Badge>Not Required</Badge> | The customer can skip it |
| <Badge>Conditional</Badge> | It is only required when a condition you set is true |

**Visibility**

| Pick this | What happens |
| --- | --- |
| <Badge>Always Visible</Badge> | Every customer sees this block |
| <Badge>Conditional</Badge> | The block only appears when a condition you set is true, for example show a unit number only when the customer picks HDB or Condo |

<Callout type="note" title="📝 Note">
Most blocks collect an answer. Some blocks only show information or provide a link, so they may not need an Input Data Field.
</Callout>

<Callout type="tip" title="💡 Tip">
To remove a question, click the <Badge>⋮</Badge> next to the block and choose <Badge>Delete</Badge>. To move a question, drag the block up or down.
</Callout>

### How Conditional Visibility Works

When you choose <Badge>Conditional</Badge>, set these three parts:

- <Badge>When</Badge>-> Choose the question or field that EasyBiz should check.
- <Badge>Operator</Badge>-> Choose how EasyBiz should check the answer.
- <Badge>Value</Badge>-> Choose the answer that makes the condition true.

| Operator | Simple meaning |
| --- | --- |
| <Badge>Is</Badge> | The answer must be exactly this value. |
| <Badge>Is Not</Badge> | The answer must not be this value. |
| <Badge>Is Any of</Badge> | The answer can match any one of the values you choose. |
| <Badge>Has Any of</Badge> | For a question that allows several answers, at least one selected answer must match. |
| <Badge>Has Value</Badge> | The customer has entered or selected an answer. |
| <Badge>Is Empty</Badge> | The customer has not entered or selected an answer. |

EasyBiz only shows the operators that work with the field you chose, so you may not see every option in this table.

<Callout type="tip" title="💡 Example">
To show Unit Number only for suitable homes, choose <Badge>When</Badge> Property Type, <Badge>Operator</Badge> Is Any of, then select HDB and Condo as the <Badge>Value</Badge>.
</Callout>

---

## Footer Actions

At the bottom of each screen is the **Footer Action**. This is the button your customer taps to move forward, and it decides what EasyBiz does at that moment.

It has two settings:

- <Badge>Button Label</Badge> is the wording your customer sees on the button, such as **Continue**, **Book Pickup**, or **Confirm Reschedule**.
- <Badge>Action Type</Badge> decides what EasyBiz actually does when they tap it.

Changing the Button Label only changes the words on the button. It does not change what the button does.

<Callout type="tip" title="💡 Tip">
Use a short Button Label that tells the customer what happens next. Use **Continue** when another screen follows, and something final such as **Book Pickup** or **Create Order** on the last screen.
</Callout>

### The Action Types

EasyBiz only offers the Action Types that make sense for the screen you are on, so you will not see every option on every screen.

| Action Type | What happens when the customer taps it | When to use it |
| --- | --- | --- |
| <Badge>Next</Badge> | Moves to the following screen without saving anything | A middle screen that only needs to move the customer along. |
| <Badge>Save Customer</Badge> | Creates or updates the customer profile, then moves on | A Contact screen. |
| <Badge>Save Address</Badge> | Saves the address to that customer, then moves on | An Address screen, after the customer details have been saved. |
| <Badge>Schedule Job</Badge> | Books the pickup or delivery on an order that already exists, then closes the form | The last screen of a Schedule Delivery or Reschedule Mini App. |
| <Badge>Create Order</Badge> | Creates a new order in EasyBiz and closes the form | The last screen of a New Order Mini App. |
| <Badge>Fetch Booking Options</Badge> | Reloads the available dates and time slots without leaving the screen | Rarely needed here — the <Badge>Refresh</Badge> link already on the date screens does this for you. |
| <Badge>Complete Flow</Badge> | Closes the form without saving anything | A thank you or information screen at the very end. |
| <Badge>Go Back</Badge> | Sends the customer to the previous screen | When you want to give them an extra way back. |

<Callout type="note" title="📝 Note">
<Badge>Schedule Job</Badge> works out for itself what to do. If the order already has a pickup or delivery booked, it moves that one to the new date. If it does not have one yet, it creates it. That is why the same action covers both the Schedule Delivery and the Reschedule Mini Apps, and why there is no separate "Create Job" option to look for.
</Callout>

### What Each Screen Offers

| Screen | Action Types you can choose |
| --- | --- |
| Contact | Next, Complete Flow, Save Customer |
| Address | Next, Complete Flow, Save Address |
| Service Options | Next, Complete Flow, Create Order |
| Pickup Date & Time | Next, Complete Flow, Fetch Booking Options, Schedule Job, Create Order |
| Delivery Date & Time | Next, Complete Flow, Fetch Booking Options, Schedule Job, Create Order |
| Blank | Every Action Type, including some advanced ones most shops never need |

<Callout type="important" title="⚠️ Important">
Every ready-made template already has the right Footer Action on every screen, including <Badge>Schedule Job</Badge> on the Schedule Delivery and Reschedule templates. Leave them as they are unless you add a new screen or change the order of your screens.
</Callout>

<Callout type="tip" title="💡 Tip">
A Service Options screen can never be the last screen of a Schedule Delivery or Reschedule Mini App, because it does not offer <Badge>Schedule Job</Badge>. Put it before your date screens.
</Callout>

![What is a Footer Action](https://cdn.easybizcloud.app/knowledge/6bdfe4154e9e6836255f9e271fe947df5cf49350c8db1c37b7b6c59d785cc22d.png)
---

## Publish and Test

1. Click the black <Badge>Publish</Badge> button at the top right of the editor.

![Click the black Publish button at the top right corner of the editor.](https://cdn.easybizcloud.app/knowledge/2ab191ec-6113-4320-bcf2-b8f58eac8408.png)

2. Check that the correct <Badge>WhatsApp Business Account</Badge> is selected, then click <Badge>Publish</Badge> again to confirm.

![A confirmation dialog box will pop up.](https://cdn.easybizcloud.app/knowledge/e06ef958-8d8e-42fa-bb9c-e73356bb0ffc.png)

3. You are taken to the Live Preview screen, where you have three options.

![You will now be taken to the Live Preview screen.](https://cdn.easybizcloud.app/knowledge/36a08d9e-76e1-4f57-8263-f2a3884d3957.png)

| Button | What it does |
| --- | --- |
| <Badge>Send Test</Badge> | Sends the form to a phone number you choose, so you can fill it in like a real customer |
| <Badge>Draft</Badge> | Takes the Mini App back to editing mode |
| <Badge>Publish</Badge> | Makes the Mini App live and ready to send to customers |

<Callout type="important" title="⚠️ Important">

Send Test only works after the Mini App has been published. A draft cannot be sent through WhatsApp, so publish first, then send yourself a test.

</Callout>

---

## FAQs

**Do I need to publish again every time I make a small change?**

> Yes. Your edits stay in draft until you publish. Customers keep seeing the last published version until then.


**If I put a Mini App back to Draft, do customers who already have it lose it?**

> No. <Badge>Draft</Badge> takes you back to editing mode. Customers continue using the last published version until you publish your new changes.


**Why can I not drag or delete the block on a Service Options screen?**

> That block is built into the screen and is managed by EasyBiz. You can still reorder and choose which individual service options appear inside it.


**Can I change what a Footer Action does?**

> Yes, but only to the actions allowed on that screen type. A Contact screen will not offer Create Order, for example.



**What is the difference between Required and Visibility?**

> Visibility decides whether the customer sees the question at all. Required decides whether they can continue without answering it. A hidden question is never required.



**I created a custom field but it does not appear in the Input Data Field list. Why?**

> Custom fields only appear on Blank screens and on blocks that accept them. Contact, Address, Pickup Options and Delivery Options screens are limited to their own built in fields.



**Where do I create a new field to save an answer into?**

> Go to <Badge>Settings</Badge>, <Badge>Library</Badge> section, <Badge>Custom Fields</Badge>. Custom Fields used to sit under a different section, so older notes may point you to the wrong place.



**Can two Mini Apps use the same custom field?**

> Yes. A custom field is created once and can be used in as many Mini Apps and screens as you like.



**Does the phone preview show real prices and time slots?**

> The preview shows the layout, not live data. Use <Badge>Send Test</Badge> after publishing to see real dates, time slots and prices.


---

## What's Next

Now that you know how the editor works, pick your template and follow the setup guide, starting with [Setting Up a New Order: Pickup & Delivery Mini App](/docs/setting-up-a-new-order-pickup-and-delivery-mini-app).