02 / IN PRACTICE
Refunds under an approval limit
GembaOS is a zero-trust governance runtime for enterprise AI agents: policy-decided access, single-use clearance tokens bound to exact parameters, and accountable human approvals, running on-premises or in a private VPC. This scenario is the refunds and claims case: a customer message is never authority to move money, and the approval limit your company already has decides who signs.
How can an agent issue refunds without a customer message becoming authority?
GembaOS treats the customer’s message as data and lets the policy decide the route from the verified facts: the order, the amount, the Delegation of Authority. A refund within the delegated limit passes on the agent stamps; a higher amount becomes an approval request for the finance owner; the payment adapter is called once, under a clearance token bound to that amount and that order.
| Before | With GembaOS | |
|---|---|---|
| Who decides | A support agent with a refund button, or a chatbot that promises | The policy, from the amount and the authority table |
| Evidence | Whatever the chat log says | Machine-verified facts: the order exists, the amount is what the order allows |
| Above the limit | An email to finance, answered whenever | An approval request with the facts, the amount and the reasons, signed with a passkey |
| The customer’s answer | Written by the agent, sometimes wrong | An official answer from approved facts, separate from the internal trail |
What happens, step by step?
| Step | Who | What is recorded |
|---|---|---|
| 1. Request | The customer writes; the front desk agent opens a work item | The conversation, rebuilt from the work item’s own record |
| 2. Verify | The host reads the order under field-level rules | The facts the approvers will see |
| 3. Route | The policy compares the amount with the DOA | The route: agent stamps only, or a person |
| 4. Sign | The finance owner, with a passkey, when the route requires it | The signature chain with reasons |
| 5. Execute | The payment adapter, once, under the clearance | The execution and the clearance it consumed |
| 6. Answer | The host writes the official answer | The answer, cited to approved knowledge |
Where is the control point?
The control point is the amount check against the authority table, and the human signature above the limit. The agent cannot raise the limit, cannot change the amount after the signature (a different amount does not match the clearance), and cannot call the payment system twice. The customer sees only the official answer; the internal approval record stays on the work item.
What does it look like in the console?



What do we need to start?
- The refund or claims authority table as it is today: who may approve up to which amount.
- Read access to orders or policies for the facts, through the REST or SQL adapter.
- One payment or credit-note adapter for execution, its credential held at the gateway.
- The customer channel: email, a web widget, a chat platform or the phone line.
Related: keep your CRM, security and deployment, the FAQ.
Last updated: · GembaOS v0.2