Human control
Your agent never marks a
payment as received.
In Mexico almost every WhatsApp sale closes with a transfer or a deposit. And the owner's number one fear is a bot confirming money that never arrived. Cortex cannot do it: this is not a prompt instruction the model could ignore, it is a deterministic path in the system.
What happens when a customer says ยซI already paid youยป
- 1
The agent recognizes the payment, but does not confirm it
Instead of replying ยซall set, confirmedยป, it emits an internal marker with the order, the amount and the method. The agent tells the customer their payment is under review โ never that it was received.
ChannelMessageProcessor - 2
A verification request is opened
The system creates a request in ยซpending owner reviewยป, moves the order to ยซpayment pendingยป and alerts you. The order exists and is recorded, but it does not advance.
PaymentVerificationService - 3
The agent goes silent and hands you the conversation
The conversation switches to human control. While it stays that way the agent stops replying in that chat: it cannot contradict you or get ahead of you while you review.
conversations.status = human_active - 4
Only a person on your team marks it as received
Verifying a payment requires an active session and CRM write permission. When it happens, the system records who verified it and when, and that record is permanent.
POST /orders/{id}/verify-payment ยท crm_write
Why the agent cannot fake it
The identity of whoever verifies does not travel in the request: the system takes it from the session token of the person using the dashboard. There is no field the agent could fill, and no request it could craft, to pass itself off as a person.
That is the difference between asking a model to behave and not giving it the option. The first fails eventually; the second does not depend on the model getting it right.
What Cortex deliberately does not do
- It does not process or hold your customers' money. That payment goes straight to your account, as always.
- It does not decide for you whether a receipt is valid. It gives you the context; the call is yours.
- It does not let the order move along meanwhile. If you do not verify, it does not advance.