# Never let a booking agent type the service name itself

PaperChase agent use case (free feed entry), version 1.0. Source: [u/HivraAi on r/AI_Agents (vendor, disclosed in the post)](https://www.reddit.com/r/AI_Agents/comments/1xfw123/the_booking_bug_that_taught_us_to_never_let_the/), 2026-10-26.

## What they did

The agent kept writing plausible service names into bookings, which the provider then could not match. They changed the flow so a resolver turns the customer's words into an id from the real catalogue, availability always comes from the provider rather than the model, and any booking call that carries a free-text service name fails in code. The post is from a company that sells booking agents, and they say so.

## Worth knowing

Wherever an agent writes into a system of record, give it ids to choose from instead of letting it type names, prices or dates freely. The block belongs in code, not in the prompt. This applies to orders, invoices, calendar slots and inventory as much as bookings.

## Workflow template

```text
Apply this workflow to [your project]:
1. List every field your agent writes into a booking, order or record
2. For each one, replace free text with a pick from real ids returned by a lookup tool
3. Fetch availability and prices from the source system every time, never from the model's memory
4. Add a hard check in code that rejects any write with a value that is not a known id
5. Log rejected writes and review them weekly
Stop and ask me before anything irreversible: deploys, payments, sends or deletes.
```

## Steps

1. **List every field your agent writes into a booking, order or record.** List every field your agent writes into a booking, order or record
2. **For each one, replace free text with a pick from real ids returned by .** For each one, replace free text with a pick from real ids returned by a lookup tool
3. **Fetch availability and prices from the source system every time, never.** Fetch availability and prices from the source system every time, never from the model's memory
4. **Add a hard check in code that rejects any write with a value that is n.** Add a hard check in code that rejects any write with a value that is not a known id
5. **Log rejected writes and review them weekly.** Log rejected writes and review them weekly

## Credit

Workflow reported by u/HivraAi on r/AI_Agents (vendor, disclosed in the post): https://www.reddit.com/r/AI_Agents/comments/1xfw123/the_booking_bug_that_taught_us_to_never_let_the/

Summary and template written by PaperChaseWebb in our own words. Questions: mgmt@paperchasewebb.com
