The agent must be linked first. If it isn’t, mandate
commands exit with
Agent not linked. Run: prava setup --name "<name>".list shows what’s authorized.
prava mandate create
Set up a mandate. This prints a passkey approval URL — it authorizes, it does not
charge.
On success:
prava mandate poll
Wait for a just-created mandate to become active (i.e. for the owner to approve):
It waits up to 10 minutes. Once the owner approves:
prava mandate list
List the mandates authorized on this account:
<merchant> — <remaining>/<approved> <currency>, expires|renews <date> [<state>].
Use --json to get the mandate id you’ll pass to charge.
prava mandate charge
Charge an approved mandate — no passkey — and receive single-use credentials.
On success:
✗ Charge declined: THRESHOLD_EXCEEDED (or similar) and exits 1.
prava mandate report
Settle a charge outcome after checking out:
prava mandate cancel
Revoke a mandate. This stops all future charges and is terminal.
Exit codes
Mandate commands use exit codes so an agent can branch reliably:Common outcomes
Next: use the returned token to complete a checkout,
then
report the outcome.