How routing reads
Naming the account in the instruction is enough. “from Brex”, “with my Coinbase”, “my Link wallet” all route without anyone being asked.
Two more answers
Both arrive askind: "ok". They are questions, not failures, so keep them off your error path.
- Which account?
- None of them can
agentStatus: "needs_provider". More than one account could do this, and the Wallet will not guess.Answer by sending the same instruction again with the account named:
howToProceed: one plain line saying what to do next.
Adding an account
Two ways, both on Payman’s side:- At consent. The customer ticks every account this app should reach, in one approval.
- Later. Connected apps in their Payman account, then Add a provider on your app’s row.
Connecting is not a money task. If your agent asks
run() to link or remove an account, Payman hands back the link to that page rather than doing it.With a model in the loop
The tool already knows all of this. Its description tells the model how to read both answers, and its schema carries the optionalprovider field for naming an account. Nothing to add to your prompt.
Providers
What a customer can connect, and what each one does.
Actions
run(), the results, streaming.

