No pre-send receipt, no safe Base agent launch
Stop your EVM agent from sending blind transactions. Pay once, see revert risk and fee context before broadcast.
The product is intentionally positioned for programmatic EVM agent builders. This live API is now a real Base mainnet USDC product, but the first required move is still cheap: confirm one unpaid 402 Payment Required challenge before you install a guard or fund a buyer wallet.
Run the canonical unpaid 402 first
If the inline result is a real payment_required response, only then move to one paid guard step and expect one PRE_SEND_PROOF_RECEIPT.
First prove the route is real
Do not browse more docs, fund a wallet, or improvise a flow. Before a receipt-producing guard command, first confirm the protected route returns one real unpaid payment_required challenge.
npx --package nishvault-preflight-buy nishvault-guard-tx -- --seller-url https://api.nishvault.com --to 0x2222222222222222222222222222222222222222 --data 0x --value 0x0
Open the canonical first-check page See the paid launch gate
Browser unpaid 402 demo
No wallet needed for the first proof step. Click once to send the example payload from your browser and inspect the live payment_required response. Do not fund a buyer wallet unless this exact unpaid challenge looks correct.
{
"chainId": "0x2105",
"from": "0x1111111111111111111111111111111111111111",
"to": "0x2222222222222222222222222222222222222222",
"data": "0x",
"value": "0x0"
}
Click the button to run one live unpaid challenge against /simulate/transaction-preflight.
Expected first success is status = 402 with error = "payment_required" from /simulate/transaction-preflight.
If the live 402 looks correct, do exactly one real paid retry next
npx nishvault-preflight-buy --seller-url https://api.nishvault.com --buyer-key 0xYOUR_BASE_MAINNET_BUYER_KEY --rpc-url https://mainnet.base.org --executor 0x044f05a0fcf030c53ea6d50ddc5c0a44527c1b47
This is the shortest public paid path. Keep the route, network, and price the same, then expect one artifact directory, one HTTP 200, one settlement tx hash, and one Base mainnet USDC wallet-credit check.
Stop here if the unpaid result looked wrong
If the response is not a real payment_required challenge, do not fund a buyer wallet yet. Compare it against this expected shape and only continue after the cheap trust step is clean.
{
"status": 402,
"ok": false,
"body": {
"error": "payment_required",
"product": "evm-transaction-preflight",
"price": "$0.01",
"network": "eip155:8453",
"firstCheckUrl": "https://api.nishvault.com/first-unpaid-402",
"quickstartUrl": "https://api.nishvault.com/quickstart",
"browserDemoUrl": "https://api.nishvault.com/#landing-browser-402"
}
}
Advanced paths after the first check
Fast inspect commands
curl -sS https://api.nishvault.com/.well-known/x402 | jq '{title, primaryPersona, route, price, network, payTo, quickstartUrl, browserDemoUrl}'
curl -sS -H 'content-type: application/json' -X POST https://api.nishvault.com/simulate/transaction-preflight --data '{"chainId":"0x2105","from":"0x1111111111111111111111111111111111111111","to":"0x2222222222222222222222222222222222222222","data":"0x","value":"0x0"}' | jq '{error, product, price, network, quickstartUrl, browserDemoUrl}'
Shortest guard command
npx --package nishvault-preflight-buy nishvault-guard-tx -- --seller-url https://api.nishvault.com --to 0x2222222222222222222222222222222222222222 --data 0x --value 0x0
Use this only after the unpaid check if you already have one concrete transaction shape.
Other surfaces
- /first-unpaid-402 for the dedicated trust page.
- /quickstart for the paid buyer path.
- /start-here for runtime-to-entrypoint mapping.
- /integrations for programmatic hooks.
- /examples and /recipes for workflow fit.
- /proof and /artifact-index for trust references.
Mark this browser as owner traffic if you are testing the funnel yourself.