decision
The top-line outcome for the hosted preflight check.
- allow: the action can move toward submit.
- review: a human operator must approve before execution.
- deny: the action should be rewritten before retry.
Hosted response guide
The live buyer path starts at the hosted Bankr route https://x402.bankr.bot/0xc04d0d464752a58b046105b45089d579eaf54036/bankr-preflight. After the Bankr-managed x402 payment step, buyers mainly need four blocks to read one result quickly: decision, policy.reasons, operator.step, and billing. The direct POST /v1/action/authorize contract still exists underneath as the broader fallback lane, but this page now leads with the hosted wrapper buyers see first.
Field Map
The top-line outcome for the hosted preflight check.
The concise explanation for why TXRISK and the wrapper lane returned that result.
The exact next handoff once the hosted response lands.
The payment proof that tells the buyer this was an admitted hosted call, not just an unpaid quote.
Hosted Reading Order
Fallback Contract Examples
The hosted Bankr offer is the recommended buyer path, but the broader direct TXRISK route still uses the same decision vocabulary. This shipped allow path shows the underlying contract for the built-in vendor payout template. The operator can submit the action immediately because operator.step resolves to proceed_to_submit.
{
"mode": "action_authorize",
"authorizationId": "auth_882c6beff8fd",
"decision": "allow",
"action": {
"version": "bankr-preflight-v1",
"kind": "transfer",
"chain": "base",
"actor": "0x1111111111111111111111111111111111111111",
"targetAddress": "0x1111111111111111111111111111111111111112",
"amountUsd": 2800,
"metadata": {"tokenSymbol": "USDC"}
},
"policy": {
"profile": "operator_guard_v1",
"decisionSource": "txrisk_action_policy",
"reasons": [
"counterparty risk band=low score=7",
"watch flags: mixer_interaction, velocity_spike"
],
"chargedOnDecision": true
},
"operator": {
"step": "proceed_to_submit"
},
"billing": {
"charged_usdc": "0.0020",
"remaining_balance_usdc": "0.9980",
"settlement_mode": "direct_transfer",
"settlement_reference": null
}
}
This shipped review path shows the same underlying policy language when a paid action requires explicit operator approval before submit. Buyers who start on the hosted route can use this fallback example to read the direct contract in more detail.
{
"mode": "action_authorize",
"authorizationId": "auth_844e3de6d819",
"decision": "review",
"action": {
"version": "bankr-preflight-v1",
"kind": "approval",
"chain": "base",
"actor": "0x1111111111111111111111111111111111111111",
"targetAddress": "0x2222222222222222222222222222222222222222",
"amountUsd": 299,
"metadata": {
"tokenAddress": "0x3333333333333333333333333333333333333333",
"allowanceUsd": 299,
"approvalScope": "exact"
}
},
"policy": {
"profile": "operator_guard_v1",
"decisionSource": "txrisk_action_policy",
"reasons": [
"counterparty risk band=medium score=36",
"watch flags: sanctions_proximity, contract_exploit_cluster"
],
"chargedOnDecision": true
},
"operator": {
"step": "require_operator_review"
},
"billing": {
"charged_usdc": "0.0020",
"remaining_balance_usdc": "0.9960",
"settlement_mode": "direct_transfer",
"settlement_reference": null
}
}
Proof Path