Payment challengePayment and work move as one bounded object.
The payment challenge is intentionally portable. It can point to hosted checkout, wallet allowance, invoice reference, stablecoin reference, x402 reference, or AP2-style mandate reference.
{
"payment_required": true,
"challenge_id": "payment_challenge_...",
"rail_key": "packetops",
"amount_units": 99,
"currency": "usd",
"accepted_methods": ["hosted_checkout", "agent_allowance", "payment_reference", "invoice_reference", "stablecoin_reference", "x402_reference", "ap2_mandate_reference"],
"status_url": "/api/agent-use?run_id=...",
"receipt_required": true
}