Take payment for an order
The agent can prepare and start payment, but payment credentials and OTPs always stay in Inttegro Checkout rather than the conversation.
Take payment for order <ORDER_ID>. Show me the masked payment methods already
available for its customer and let me choose one or enter a new method
securely. State the exact amount before asking me to confirm. Never ask me for
payment details or an OTP in chat.
The agent first calls prepare_order_payment. It presents the exact total in familiar major currency units and the attached and active saved methods as numbered, masked choices.
Sample response
Payment ready for confirmation
The customer chooses from masked methods or opens Inttegro Checkout. No credential or OTP appears in the conversation.
- Order
- WEB-1042 ord_example_1042
- Amount
- GHS 350.00
- Payment status
- Initiated
Available payment choices
| Choice | Method | Status | Next step |
|---|---|---|---|
| 1 | MTN Mobile Money ···· 8605 | Verified | Confirm in chat |
| 2 | Visa ···· 4242 | Verified | Confirm in chat |
| 3 | New payment method | Secure entry | Open Inttegro Checkout |
Illustrative values. The exact presentation depends on the MCP client.
If you choose an attached or saved method, pay_order repeats the amount and method choice before requesting confirmation and starting the payment attempt. If you choose a new method—or an attempt needs confirmation—the agent gives you the trusted Inttegro Checkout URL.
After the attempt, the agent calls get_order and reports paid only when the authoritative payment status supports it.
An intentional retry is a fresh attempt with a new operation_key. A transport retry of the exact same request reuses its original key. When an outcome is unclear, the agent reconciles first instead of risking a duplicate attempt.