Summary
Exact-scheme BNKR x402 Cloud endpoint advertises a valid Permit2 402 (~$0.05 equivalent). POST /wallet/x402-pay (via bankr x402 call) does attempt a BNKR payment (paymentMade.amountUsd ≈ 0.0505) then the facilitator returns Payment verification failed. Funds are not taken. A sibling USDC canary on the same wallet is not involved.
This looks like custom-token exact + Permit2 verify on Bankr Cloud, not a USDC-refusal in the CLI.
Endpoint
- URL:
https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary-bnkr
- Service:
lvl-canary-bnkr (active, v1)
paymentScheme: exact
currency: BNKR
tokenAddress: 0x22aF33FE49fD1Fa80c7149773dDe5890D3c76F3b (Base, 18 decimals)
- Price: 200 BNKR (~$0.05 at ~$0.00025–0.00027)
- CLI:
@bankr/cli 0.3.23
- Payer (Bankr embedded EVM):
0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b
- Seller
payTo in bankr.x402.json: LVL treasury (not used in the live 402)
Sibling USDC canary (control, not used in this smoke):
https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary
- 402 asset
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, maxAmountRequired 50000
Live 402 (unpaid GET)
{
"x402Version": 2,
"error": "Payment Required",
"accepts": [
{
"scheme": "exact",
"network": "eip155:8453",
"maxAmountRequired": "200000000000000000000",
"amount": "200000000000000000000",
"payTo": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0",
"asset": "0x22af33fe49fd1fa80c7149773dde5890d3c76f3b",
"extra": {
"name": "BNKR",
"version": "1",
"assetTransferMethod": "permit2",
"facilitatorAddress": "0x4a15fc613c713FC52E907a77071Ec2d0a392a584",
"permit2Spender": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0"
}
}
],
"facilitator": "https://api.bankr.bot/facilitator"
}
Fee router / Permit2 spender 0x8AEE62… bytecode witness string:
Witness(address to, address facilitator, uint256 validAfter)
(Witness witness)TokenPermissions(address token,uint256 amount)Witness(address to,address facilitator,uint256 validAfter))
facilitatorAddress 0x4a15fc… has no contract code (EOA). Canonical Coinbase exact proxy 0x402085c248EeA27D92E8b30b2C58ed07f9E20001 is not the advertised permit2Spender.
Payer state (before/after; BNKR not spent)
- BNKR balance on
0x2265…: 200.0 (still 200 after failed pays)
- ERC-20 allowance
BNKR → Permit2 0x000000000022D473030F116dDEE9F6B43aC78BA3: max uint256
- Payer is an EOA (
eth_getCode empty)
- USDC on payer: 0
- Funding (not the failed pay):
Repro
bankr --ni x402 call -y --max-payment 1 \
'https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary-bnkr'
CLI help still says “automatic USDC payment”, but the API does price in BNKR.
Equivalent:
POST https://api.bankr.bot/wallet/x402-pay
X-API-Key: <key>
{"url":"https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary-bnkr","method":"GET","maxPaymentUsd":1}
Actual
HTTP 400 from CLI/API:
{
"success": false,
"status": 402,
"response": { "error": "Payment verification failed" },
"error": "x402 payment failed (status 402).",
"paymentMade": {
"amountUsd": 0.05052444852,
"network": "eip155:8453",
"payTo": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0"
},
"endpointSchema": {
"name": "lvl-canary-bnkr",
"price": "200",
"currency": "BNKR"
}
}
paymentMade.amountUsd ≈ $0.05 matches 200 BNKR. Facilitator then fails verify. No on-chain settle; 200 BNKR remains.
Direct unpaid GET still 402 BNKR+Permit2. USDC lvl-canary still 402 USDC 50000.
POST https://api.bankr.bot/facilitator/verify with the user API key returns 401 missing bearer token / malformed token (user bk_usr_ key is not a facilitator bearer).
Expected
bankr x402 call / /wallet/x402-pay against an exact BNKR + Permit2 Cloud endpoint should verify + settle 200 BNKR (or return a specific Permit2 error: allowance, nonce, witness mismatch) and not a generic Payment verification failed after advertising currency: BNKR.
Notes
- Not a USDC canary / LVL
/api/pay issue.
- Holding remaining BNKR off this wallet; 200 BNKR stays on
0x2265… for retry after a fix.
- Happy to re-run the same
x402 call when you have a patch.
Contact: GitHub omgawdmadeit1 / X OmgawdMadeit (Bankr whoami social).
Summary
Exact-scheme BNKR x402 Cloud endpoint advertises a valid Permit2 402 (~$0.05 equivalent).
POST /wallet/x402-pay(viabankr x402 call) does attempt a BNKR payment (paymentMade.amountUsd ≈ 0.0505) then the facilitator returnsPayment verification failed. Funds are not taken. A sibling USDC canary on the same wallet is not involved.This looks like custom-token exact + Permit2 verify on Bankr Cloud, not a USDC-refusal in the CLI.
Endpoint
https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary-bnkrlvl-canary-bnkr(active, v1)paymentScheme:exactcurrency:BNKRtokenAddress:0x22aF33FE49fD1Fa80c7149773dDe5890D3c76F3b(Base, 18 decimals)@bankr/cli0.3.230x2265f8c2c50ee315fe12fb021fb7f9474bb5174bpayToinbankr.x402.json: LVL treasury (not used in the live 402)Sibling USDC canary (control, not used in this smoke):
https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913,maxAmountRequired50000Live 402 (unpaid GET)
{ "x402Version": 2, "error": "Payment Required", "accepts": [ { "scheme": "exact", "network": "eip155:8453", "maxAmountRequired": "200000000000000000000", "amount": "200000000000000000000", "payTo": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0", "asset": "0x22af33fe49fd1fa80c7149773dde5890d3c76f3b", "extra": { "name": "BNKR", "version": "1", "assetTransferMethod": "permit2", "facilitatorAddress": "0x4a15fc613c713FC52E907a77071Ec2d0a392a584", "permit2Spender": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0" } } ], "facilitator": "https://api.bankr.bot/facilitator" }Fee router / Permit2 spender
0x8AEE62…bytecode witness string:Witness(address to, address facilitator, uint256 validAfter)(
Witness witness)TokenPermissions(address token,uint256 amount)Witness(address to,address facilitator,uint256 validAfter))facilitatorAddress0x4a15fc…has no contract code (EOA). Canonical Coinbase exact proxy0x402085c248EeA27D92E8b30b2C58ed07f9E20001is not the advertisedpermit2Spender.Payer state (before/after; BNKR not spent)
0x2265…: 200.0 (still 200 after failed pays)BNKR → Permit2 0x000000000022D473030F116dDEE9F6B43aC78BA3: max uint256eth_getCodeempty)Repro
bankr --ni x402 call -y --max-payment 1 \ 'https://x402.bankr.bot/0x2265f8c2c50ee315fe12fb021fb7f9474bb5174b/lvl-canary-bnkr'CLI help still says “automatic USDC payment”, but the API does price in BNKR.
Equivalent:
Actual
HTTP 400 from CLI/API:
{ "success": false, "status": 402, "response": { "error": "Payment verification failed" }, "error": "x402 payment failed (status 402).", "paymentMade": { "amountUsd": 0.05052444852, "network": "eip155:8453", "payTo": "0x8AEE621035D93Deb3C0C1177fac252dC2dd501a0" }, "endpointSchema": { "name": "lvl-canary-bnkr", "price": "200", "currency": "BNKR" } }paymentMade.amountUsd ≈ $0.05matches 200 BNKR. Facilitator then fails verify. No on-chain settle; 200 BNKR remains.Direct unpaid GET still 402 BNKR+Permit2. USDC
lvl-canarystill 402 USDC50000.POST https://api.bankr.bot/facilitator/verifywith the user API key returns401 missing bearer token/malformed token(userbk_usr_key is not a facilitator bearer).Expected
bankr x402 call//wallet/x402-payagainst an exact BNKR + Permit2 Cloud endpoint should verify + settle 200 BNKR (or return a specific Permit2 error: allowance, nonce, witness mismatch) and not a genericPayment verification failedafter advertisingcurrency: BNKR.Notes
/api/payissue.0x2265…for retry after a fix.x402 callwhen you have a patch.Contact: GitHub
omgawdmadeit1/ XOmgawdMadeit(Bankr whoami social).