When a user approves a deploy, selects a plan, or confirms a purchase, the interactive UI should become a permanent record of what happened. Without this, scrolling back shows a live button for a decision that was already made, confusing at best, dangerous at worst if someone clicks it again.
A receipt state replaces the interactive controls with a confirmation of the choice. It's proof of the decision, visible to both the user and the assistant. This is the natural counterpart to decision actions: the action captures the choice, the receipt displays it.
Without receipts, decisions vanish into the conversation history.
How would you like to handle the duplicate contacts?
Done. I merged 12 duplicate contacts. You can undo this from Settings → Contact History if needed.
The receipt shows what was chosen. The follow-up confirms the outcome and offers an undo path.
Receipt copy describes a past decision.
Decision labels use past tense: they describe what the user decided.
| Interactive State | Receipt State |
|---|---|
| Approve | Approved |
| Deny | Denied |
| Select | Selected |
| Confirm | Confirmed |
Action descriptions stay in imperative form: they describe the request, not the outcome.
Approved action
Denied action
The pattern is: [Past-tense decision] [Imperative action]
Pass a choice prop to switch any of these components into receipt mode:
| Component | Receipt Prop | What It Shows |
|---|---|---|
| Approval Card | choice | The decision and action title |
| Option List | choice | Only the selected option(s) |
| Question Flow | choice | Summary of completed answers |
| Preferences Panel | choice | Summary of saved preferences |
| Progress Tracker | choice | Final status of the workflow |
| Order Summary | choice | Confirmed order details |
Message Draft uses a similar pattern with an outcome prop ("sent" or "cancelled") that renders a one-line confirmation receipt after a message is sent or cancelled.
Use receipts for decisions that:
Skip receipts for reversible controls like:
The assistant's follow-up should reference the receipt and, when appropriate, offer a way to undo or modify the decision.