Skip to content

Automation · Orders and fulfillment

Take a table's order and send it to the kitchen from chat

An AI agent takes a table's order over WhatsApp, resolves every dish against the real Fudo menu and creates the ticket that reaches the kitchen.

How do I send a table's order to the kitchen without retyping it into the POS?

The server types the order in chat the way they would say it out loud, and a Met connected to Fudo does the rest: it locates the table in its room, resolves each dish against the menu loaded in Fudo (that is where the identifier and the price come from, never the model), and creates the ticket with the number of guests. From that moment the order is in the kitchen. If the guests order more, the Met finds that table's open ticket and adds the new lines instead of opening a second one. And when someone asks how it is going, it answers dish by dish, because the detailed status lives on each line, not on the ticket as a whole. Two things this does not do, worth knowing up front: the Fudo API only accepts dine-in sales (it requires the table, so no delivery or takeaway) and it never touches the register, payments or tips.

What starts it

When the customer writes

Nothing is scheduled. The Met assigned to the channel receives the server's message, written in plain language ("table 12, two lemonades and one steak medium, party of four"), and answers in the same conversation. It works the same from the server's phone or from a tablet shared on the floor.

Nothing to set up. The Met assigned to that channel picks up the conversation and runs the procedure inside it.

Who runs it

Floor operations Met

Not a named, seeded Met: an internal operations Met that talks to the restaurant team, not to the guest. Its job is that what was said at the table reaches the kitchen unchanged, without the step of retyping it into a screen while people are waiting.

Channels: WhatsApp

What you need connected

5 steps · 7 tools

The procedure, step by step

Each step shows the tool that runs. They belong to the real connector: if one of them stopped existing, this page would not build.

  1. 1

    Locate the table in its room

    The listing returns tables with their number and the room they belong to, and flags which ones have an open sale when Fudo provides that data. It matters because a venue with two rooms can have two table 12s, and the ticket requires exactly one. If Fudo does not return occupancy, the Met says so instead of claiming the table is free.

  2. 2

    Resolve every dish against the real menu

    This is where the order is made right or wrong. The search returns the identifier, the price and whether the dish is still active on the menu, and that identifier is exactly what the ticket asks for. When the server names a whole category ("today's starters"), the category listing resolves it with its menu order and the kitchen it is sent to. The price comes from Fudo, never from the model: if a dish is inactive, the Met says so instead of loading it.

  3. 3

    Create the ticket so it enters the kitchen

    The ticket opens on the table with the guest count and the lines already resolved. That is the moment the order stops being a conversation and becomes kitchen work: there is no later confirmation step and no intermediate tray. The two fields Fudo requires are the table and the guest count, and the Met asks for them before creating anything if the message lacks them.

  4. 4

    Add later orders without opening a second ticket

    Half an hour later nobody remembers the ticket number. The venue's open ticket listing, newest first, finds it by table, and the new lines go onto the ticket that already exists. That is the difference between one check and two split checks for the same table, which is a register problem, not a kitchen one.

  5. 5

    Answer where each dish stands

    The query returns the ticket status, its total, its table and where each line stands: pending, being prepared, ready or served. The Met answers dish by dish on purpose, because that is how Fudo hands over the data: a ticket can have the starter served and the main not started, and saying "your order is on its way" would average two different things.

Before you start

What you need ready

The Met solves none of these for you. If one is missing, the automation stops there.

The limits

What this automation does NOT solve

Better said here than discovered halfway through the rollout.

FAQ

Questions about this automation

No. They write the way they would speak: the table, the dishes and how many people. The Met resolves the names against the real menu and asks only for what is missing, which is almost always the guest count, because Fudo requires it to open the ticket.

The search works over the menu loaded in Fudo, so it resolves variants and shorthand of the real name. What it does not do is guess: if no match is clear it asks, instead of loading a random dish, which is the expensive mistake on a full floor.

Technically the flow is the same, but think it through first: the connector does not charge, so the guest would order in chat and pay at the table as always. And since there is no voiding over the API, any correction goes back to the staff. That is why this recipe is written for the floor team, not for the public.

The Met says it could not create the ticket, and that is the right answer. There is no local queue holding the order for a later retry: an order the Met reported as loaded without it being loaded is worse than an order somebody has to type again.

Credentials are configured per workspace, so each venue gets its own. The open ticket listing belongs to the venue of those credentials, which is exactly what you want: a server should not find another location's ticket.

By asking. The order query returns the ticket with its table, its total and the status of every line, and the kitchen moves that status in Fudo. If it shows up with its dishes pending, it went through.

No, and it should not. Fudo remains where the menu, the register and the shift close live. What changes is the retyping step: what was said at the table enters the system without somebody keying it in again.

Keep going

Other automations built on the same tools

Want this automation running on your own data?

We will show it to you with your accounts connected, not with a canned demo.