Skip to main content

Change Log

DateDescription
2026-05-19Corrected decimals column in Supported payment methods. All four BSC mainnet tokens (U, USD1, USDC, USDT) and BSC testnet USDT were listed as 6 decimals; on-chain decimals() returns 18 for each. Merchants who priced API calls assuming 6 decimals (e.g. amount: "10000" for $0.01) were charging 1e-14 of a token instead — re-encode amounts against 18 decimals before going to production. Added a note on the page reminding integrators to verify decimals on chain when in doubt.
2026-05-14Added Permit2 signing guide (open-apis-v2/4.permit2-signing.md) covering the EIP-712 typed data shape (PermitWitnessTransferFrom + TokenPermissions + Witness), field semantics, viem and ethers.js v6 TypeScript reference implementations, wire envelope format, common pitfalls, and end-to-end walkthrough. Aimed at merchants integrating permit2-exact for assets without EIP-3009 support (e.g. USDT on BSC), where the stock @x402/evm client ships no Permit2 signer. Cross-linked from /verify page.
2026-05-11V2-first merchant onboarding pass: restructured API request signing into Overview → Step 1 keygen (OpenSSL only, PKCS#8) → Step 2 sign (Python default, Node.js + Java alternates) → Step 3 headers → Postman (optional) → Troubleshooting. Swapped Quick Start and Integration Guideline to V2 endpoints; added runnable signed-/supported Python snippet to Quick Start using {BASE_URL} placeholder; dropped "Deliver the Resource" step. Promoted "Open APIs V2" above "Open APIs V1" in the nav and added a V2-recommendation note on V1 pages. Updated Payment status for the V2 settle response shape (transaction always-present string). Fixed factual bug in Supported payment methods (eip3009 supports U and USD1, not USDC). Fixed GET /supportedPOST /supported in typical-integration-flow.
2026-05-07V2 spec-alignment patch: paymentPayload.resource is now a ResourceInfo object {url, description, mimeType} at the top level of PaymentPayload per x402 v2 §5.1. Removed resource / description / mimeType / outputSchema from paymentRequirements. Settle response now always emits transaction and network (empty string "" on pre-broadcast failure) — spec-Required per §5.3.2. New Deviations from x402 v2 spec section on the /verify page explicitly lists b402 extensions that remain unchanged (POST /supported, upto scheme, Permit2 methods, settleAmount, extra fields, unexpected_*_error codes). Breaking wire change — coordinate with integrators. V1 endpoints unchanged.
2026-05-05Added B402 V2 API (/papi/v2/b402/*): CAIP-2 signers wildcard namespace, x402 v2 PaymentPayload shape with top-level accepted + resource, split extra.signerAddress + extra.spenderAddress replacing the overloaded extra.facilitatorAddress, scheme: "upto" introduced for permit2-upto. invalidMessage / confirmations / errorMessage dropped from wire in favour of x402 v2 spec-strict conformance. V1 endpoints remain frozen and unchanged.
2026-04-22Added U and USD1 token support; restructured Supported Payment Methods into token×method matrix; eip3009 now limited to U and USD1 (USDC/USDT use permit2 only); expanded /supported response example with all 10 kinds; updated /verify and /settle EIP-3009 examples to use U token; updated token contracts reference table; updated service description and added Disclaimer section
2026-04-13Initial release of B402 Open API documentation