Wire-up
The loop
Provider-agnostic: hand the model the definitions, execute what it calls, feed the result back.The tools
Each tool maps to the SDK method of the same name — parameters and behaviour are identical, so the reference covers both.Setup & sandbox
Contracts
Payments
Refunds
Customers & stores
Approvals: the human stays in charge
Approving is deliberately not a tool. Asend_payment or off-session collect_payment result carries a
nextAction — the agent’s job is to surface its approvalUrl to the right human (the business owner for a send,
the customer for a charge) and wait for the decision. The model never approves its own payment, and the credential
is only ever entered on Atoa’s page.
Every payment an agent makes is a normal Payment — list_payments and get_payment give it (and you) the full
audit trail.
No AI required
The tools are a thin layer over the SDK. Without a model in the loop, call the same operations directly —atoa.payment.collect(...), atoa.payment.send(...) — for identical behaviour.