How it works

How Pulse AI verifies order accuracy

Every AI phone agent claims to be accurate. Almost none of them explain what stops the model from being wrong. Here is the actual mechanism Pulse uses, in the order it runs during a real call.

July 27, 2026 · 7 min read

The worst failure in AI phone ordering is not the call that breaks loudly. It is the call that sounds perfect. The agent says "got it, one large pepperoni, ready in twenty minutes," the customer hangs up happy, and what reached the kitchen was a medium. Nobody finds out until somebody is standing at the counter.

That is the failure Pulse is built around. The design principle behind all of it is simple enough to state in one line.

The language model decides what the customer wants. Deterministic code decides everything else — the prices, the modifiers, the total, and what gets written to the POS.

The AI never does the math

This is the part that matters most, and it is the part most operators never think to ask about. In many voice ordering products the language model is the thing that tallies up your order and reads you a total. A language model is a very good conversationalist and a famously unreliable calculator. Ask one to add six items with modifiers and it will sound completely confident either way.

Pulse does not let the model near a price. The model's job ends at "the caller wants a Margherita, thin crust, large." From there, code takes over: it resolves the item to a real product ID in the restaurant's POS catalog, resolves each modifier to its real option ID, reads the real prices, and sums them.

The practical consequence is not that Pulse is less likely to quote a wrong price. It is that Pulse structurally cannot invent one. There is no code path in which a number the model produced becomes the total a customer is charged.

Required choices are enforced, not guessed

Real menus are full of choices a customer must make. A pizza needs a style and a size. A sandwich needs a bread. A burger might need a temperature. These are marked as required in the restaurant's own POS menu, and Pulse reads them from there rather than from a hand-written list.

If a caller orders a pizza and never says what size, Pulse does not pick a default and it does not send an incomplete ticket. It asks. This sounds obvious, and it is the sort of thing that quietly goes wrong when the POS API will happily accept an order with a required choice missing, which several of them will.

The same enforcement runs across every POS Pulse supports, whether the POS itself validates the requirement or not.

The order is read back before it is placed

Before anything reaches the kitchen, the agent reads back the items and the total and waits for an explicit yes. Not an assumed yes, not a pause interpreted as agreement. If the caller corrects something, the order changes and gets read back again.

The total is reconciled against the POS

When the order is submitted, the POS returns its own calculation of the total. Pulse compares that figure against the total the caller was quoted on the phone.

If they disagree — a stale price in the cached menu, a tax rule that changed, a modifier that priced differently than expected — the order carries a mismatch flag rather than passing silently. The number the customer heard and the number the POS produced are two independent computations, and Pulse checks that they agree.

Sold-out items are honoured immediately

A menu is only accurate if it reflects what the kitchen can actually make right now. Staff can mark an item 86'd from the Pulse dashboard and it takes effect on the very next call — not on the next menu sync, which could be hours away. Pulse also honours items the POS itself flags as unavailable.

The agent will not take an order for something that is out. It says so plainly and offers a substitute.

Duplicate orders are prevented

Networks fail mid-request. Calls drop at exactly the wrong moment. Pulse guards order submission so a retry cannot create a second ticket for the same call — one order per call, enforced both in memory and in the database. A restaurant should never make the same pizza twice because a websocket blinked.

Allergen and dietary answers are classified, not guessed

"Is this vegetarian?" and "does this have nuts?" are the questions where being wrong is not an inconvenience. Pulse classifies every item on a menu when it syncs, using a language model that reads the dish name and description — in whatever language the menu is written in.

Two rules govern the output. First, Pulse only makes positive claims. It will tell a caller a dish contains dairy; it will never tell them a dish is dairy-free, because an ingredient list can establish that something is present but never that it is absent. Second, when a restaurant's own POS tag contradicts the dish's contents, the tag is removed rather than repeated.

That second rule exists because menu tags are frequently wrong. On one real menu we found a salmon salad tagged vegan, a bacon-and-blue-cheese salad tagged both kosher and halal, and a pizza named "Veggie" whose description is arugula, prosciutto and grana. A system that simply reads a merchant's tags aloud will confidently pass all three of those on to the person least able to catch the error.

Where Pulse cannot determine something, it says so instead of guessing. An item with no description gets no dietary claim at all.

The menu works when the POS does not

Pulse keeps a local copy of each restaurant's menu, refreshed in the background. If the POS has an outage mid-service, the agent still knows the full menu, prices and modifiers, and can still hold a normal conversation. Orders that cannot be submitted are recorded as failures and the owner is alerted by email immediately, so nothing is lost quietly.

What Pulse does not claim

Accuracy claims are easy to make and hard to verify, so here is the boundary. Pulse verifies the total returned by the POS against the total quoted on the call. Line-by-line verification of every modifier against what the POS actually recorded exists in our test suite and is being moved into the live order path. We would rather describe that precisely than imply a guarantee we have not shipped.

Pulse also does not certify kosher or halal status. Neither can be established from an ingredient list — both depend on slaughter method, certification and kitchen separation. Pulse will remove a claim that a dish's contents contradict, but it will never assert one.

Why this is worth asking any vendor

If you are evaluating AI phone ordering, the useful question is not "is it accurate." Every vendor will say yes. The useful questions are narrower:

  • Does the language model calculate the order total, or does code?
  • What happens when a caller omits a required choice?
  • Is the final total checked against what the POS actually recorded?
  • How does the system answer an allergy question, and what does it do when it does not know?
  • What happens to an order the POS rejects — is anyone told?

These have concrete answers. A vendor who cannot give them has not thought about the failure that sounds perfect.

You can hear Pulse take an order yourself, right now, on (313) 889-7436. Try to trip it up.