Summary
I've built BCP (Business Commerce Protocol) — an open-source protocol for multi-step B2B commerce between AI agents. BCP uses x402 as its settlement layer and I wanted to share how the two protocols fit together, and explore whether there's interest in tighter integration.
How BCP uses x402
x402 handles single payments beautifully — agent requests a resource, gets a 402, pays, done. BCP extends this for transactions that need negotiation and escrow before settlement:
INTENT → QUOTE → (COUNTER) → COMMIT → FULFIL
│
USDC locked in escrow
(released via x402 on FULFIL)
The settlement step in BCP's COMMIT → FULFIL flow uses x402 for the actual payment movement. BCP handles the negotiation lifecycle and escrow logic; x402 handles the money.
Potential integration points
-
x402 middleware for BCP escrow release — When a BCP deal reaches FULFIL, the escrow release could flow through x402's payment scheme rather than a direct contract call. This would make BCP settlement compatible with any x402 facilitator.
-
BCP as an x402 scheme — A bcp-escrow payment scheme where the 402 response includes BCP negotiation metadata (session ID, escrow contract address, expected message sequence). The client negotiates via BCP messages, and the final payment is an x402 payment with escrow proof attached.
-
Example in x402's examples directory — A reference implementation showing x402 + BCP working together for a negotiated, escrowed transaction.
What BCP provides
- 6 typed messages: Intent, Quote, Counter, Commit, Fulfil, Dispute
- Ed25519 signatures on every message
- On-chain USDC escrow (Base / Base Sepolia)
- TypeScript SDK:
npm install @bcp-protocol/sdk
- Apache 2.0 licensed
Happy to contribute an integration example or explore the scheme approach if there's interest.
Repo: https://github.com/lucidedev/bcp-protocol
Summary
I've built BCP (Business Commerce Protocol) — an open-source protocol for multi-step B2B commerce between AI agents. BCP uses x402 as its settlement layer and I wanted to share how the two protocols fit together, and explore whether there's interest in tighter integration.
How BCP uses x402
x402 handles single payments beautifully — agent requests a resource, gets a 402, pays, done. BCP extends this for transactions that need negotiation and escrow before settlement:
The settlement step in BCP's
COMMIT → FULFILflow uses x402 for the actual payment movement. BCP handles the negotiation lifecycle and escrow logic; x402 handles the money.Potential integration points
x402 middleware for BCP escrow release — When a BCP deal reaches
FULFIL, the escrow release could flow through x402's payment scheme rather than a direct contract call. This would make BCP settlement compatible with any x402 facilitator.BCP as an x402 scheme — A
bcp-escrowpayment scheme where the 402 response includes BCP negotiation metadata (session ID, escrow contract address, expected message sequence). The client negotiates via BCP messages, and the final payment is an x402 payment with escrow proof attached.Example in x402's examples directory — A reference implementation showing x402 + BCP working together for a negotiated, escrowed transaction.
What BCP provides
npm install @bcp-protocol/sdkHappy to contribute an integration example or explore the scheme approach if there's interest.
Repo: https://github.com/lucidedev/bcp-protocol