Balaay

Action receipts

After every appointment, a per-channel record of what became of each confirmation: sent, failed, not confirmed, or not attempted. Why "not attempted" and "failed" are different states, and why a tick is not shown for anything unconfirmed.

The word "Booked" on a dashboard hides three completely different situations: the confirmation went out, it failed, or it was never attempted because nobody captured a mobile number. An action receipt keeps them apart, because what you would do next differs in each case.

Balaay is an AI receptionist for businesses that run on calls. Balaay is an AI receptionist for businesses that run on calls. It learns a business from that business’s own website, answers its phone, holds the conversation, takes the next step where it can, and records what it actually did.

Built for businesses that run on calls. Home services, dental, beauty and wellness, legal, property and veterinary have purpose-built configurations — and any other service business can build a receptionist from its own website. AI receptionist from $29/mo with 250 voice minutes included. Growth is $79/mo for 1,000 minutes. 30 days free, no card, no mandatory setup fee. Month-to-month, cancel any time. Each plan includes a monthly voice-minute allowance; minutes beyond it are charged per minute at the rate on your plan. No mandatory setup fee. See pricing →

The states, and why each exists

Four, and the differences between them are the entire feature.

No record is not a failure

An appointment created before these outcomes were stored genuinely has no record of them. Showing a cross against every historical booking would be a fabrication about our own past behaviour, so it says "no record" and means it.

It opens itself when something went wrong

Receipts are collapsed by default, because most bookings are unremarkable and a list where every row is expanded is a list nobody scans. A receipt with a failed or unconfirmed step opens on its own.

The bug this shipped with, and what it taught

When receipts were first written, an unconfigured email provider returned false and the confirmation layer mapped that to "failed". Shipping it unchanged would have put "Email confirmation — failed" against every booking on an instance where nobody had ever asked the provider to do anything, and the receptionist would have told callers their email did not go out. The receipt would have been accusing a provider that was never called — the exact overstatement it exists to prevent, aimed at ourselves. "Not attempted" is now a distinct state with its own explanation, because the distinction between a failure and an absence is the whole feature.

Where it appears, and why it is collapsed

The receipt sits on the appointment itself, in the list you already open, rather than in a separate audit view nobody visits. It is collapsed by default because most bookings are unremarkable and a list where every row is expanded is a list people stop scanning. A receipt with a failed or unconfirmed step opens itself and carries a small marker in the collapsed row, so the one that needs you is the one you see.

What this page will not claim

A receipt records what Balaay did and what it could confirm. It does not tell you whether the customer read the message.

Related pages

Explore Balaay

Hear it answer before you decide anything

The live voice demo is the same receptionist your callers would reach.

Book a demo

In summary

Action receipts — After every appointment, a per-channel record of what became of each confirmation: sent, failed, not confirmed, or not attempted. Why "not attempted" and "failed" are different states, and why a tick is not shown for anything unconfirmed. Balaay is an AI receptionist for businesses that run on calls. It learns the business from its website, answers the phone, takes the next step, and shows what it did.

Loading interactive experience…