Connect your agent
Northlight Bike Repair sells to agents on test networks, Base Sepolia (`eip155:84532`, the default), Arc testnet (`eip155:5042002`), Avalanche® Fuji (`eip155:43113`), Hedera testnet (`hedera:testnet`), Stellar testnet (`stellar:testnet`), Solana devnet (`solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1`), XRPL testnet (`xrpl:1`), Algorand testnet (`algorand:SGO1GKSzyE7IEPItTxCByw9x8FmnrCDe`), Ethereum Sepolia (`eip155:11155111`), Arbitrum Sepolia (`eip155:421614`), OP Sepolia (`eip155:11155420`), Polygon Amoy (`eip155:80002`), Unichain Sepolia (`eip155:1301`), World Chain Sepolia (`eip155:4801`), Ink Sepolia (`eip155:763373`), Celo Sepolia (`eip155:11142220`), Monad testnet (`eip155:10143`), Sei testnet (`eip155:1328`), Sonic testnet (`eip155:14601`), Morph Hoodi (`eip155:2910`), Cronos testnet (`eip155:338`) and Pharos Atlantic (`eip155:688689`): by x402 over HTTP, MCP and A2A, by MPP, and through UCP's checkout over REST, MCP and A2A, and under AP2 mandates over A2A; and on Tempo Moderato (`eip155:42431`), by MPP alone, over HTTP. For demonstration only. This transaction runs on a test network with test money, and has no value.
Each checkout is paid on one network, which the buyer names as a CAIP-2 id: `network` in the JSON body of the request to `/buy/<offer>` (and to the test checkout), beside `quote` and `with`; `network` in the `buy` tool's arguments and in an A2A buy data part. In UCP's checkout, the platform's profile declares the networks it pays on in its declaration of the x402 handler (`config.networks`), and the checkout is paid on one the shop accepts too: `eip155:84532` when it is one of them. With none named, the checkout is paid on `eip155:84532`. The networks: Base Sepolia (`eip155:84532`, the default), Arc testnet (`eip155:5042002`), Avalanche® Fuji (`eip155:43113`), Hedera testnet (`hedera:testnet`), Stellar testnet (`stellar:testnet`), Solana devnet (`solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1`), XRPL testnet (`xrpl:1`), Algorand testnet (`algorand:SGO1GKSzyE7IEPItTxCByw9x8FmnrCDe`), Ethereum Sepolia (`eip155:11155111`), Arbitrum Sepolia (`eip155:421614`), OP Sepolia (`eip155:11155420`), Polygon Amoy (`eip155:80002`), Unichain Sepolia (`eip155:1301`), World Chain Sepolia (`eip155:4801`), Ink Sepolia (`eip155:763373`), Celo Sepolia (`eip155:11142220`), Monad testnet (`eip155:10143`), Sei testnet (`eip155:1328`), Sonic testnet (`eip155:14601`), Morph Hoodi (`eip155:2910`), Cronos testnet (`eip155:338`) and Pharos Atlantic (`eip155:688689`). On Tempo Moderato (`eip155:42431`) only MPP is offered, no x402: name it the same way, at the HTTP door alone, and pay there in its test OUSD.
The doors
One checkout stands behind every door. Each purchase has its own agreement, and its payment carries the agreement's hash.
- x402 over HTTP:
https://northlight-bikes.integraledger.com/buy/<offer>, its network in the body'snetwork, answers402with x402 version 2'sPAYMENT-REQUIRED, which holds the agreement's link; the same request again withPAYMENT-SIGNATUREpays it. - x402 over MCP: the tool
buyat https://northlight-bikes.integraledger.com/mcp, its network innetwork, with the payment inparams._meta["x402/payment"]. - UCP's checkout over REST:
https://northlight-bikes.integraledger.com/checkout-sessions(UCP 2026-08-25), as the profile at https://northlight-bikes.integraledger.com/.well-known/ucp declares it, paid through the x402 payment handlercom.integraledger.lcp.x402, declared once for each network: the checkout is paid on a network your platform's profile declares for the handler too. Your platform's profile goes inUCP-Agent. - UCP's checkout over MCP: the tools
create_checkout,get_checkout,update_checkout,complete_checkout,cancel_checkoutandget_orderat https://northlight-bikes.integraledger.com/mcp, paid through the same handler. Your platform's profile goes inmeta["ucp-agent"]. - MPP: on an EVM network, the
402ofhttps://northlight-bikes.integraledger.com/buy/<offer>also carries MPP'sevmchargechallenge (WWW-Authenticate: Payment …), with an agreement of its own, for every offer; on Tempo Moderato (eip155:42431), which carries MPP alone, the402carries MPP'stempochargechallenge alone, and no x402, for every offer: the credential is the signed transaction, which the shop broadcasts, or the hash of one you broadcast;Authorization: Payment <credential>pays it. - A2A: the agent card at
https://northlight-bikes.integraledger.com/.well-known/agent-card.json(and/.well-known/agent.json), in version 0.3 or 1.0 as theA2A-Versionheader asks (none is 0.3); JSON-RPC athttps://northlight-bikes.integraledger.com/a2a, with the skillssearch_catalog,get_terms,negotiateandbuy, paid by x402 over A2A (the buy data part{offer, quote?, with?, network?}), and UCP's checkout over A2A. - AP2 over A2A: at the same endpoint, on an EVM network, a shopping agent under an AP2 mandate sends
{action: "ap2_checkout", offer, network?}and is answered with AP2's checkout, acheckout_jwtthis shop signs whoselegalContextnames the agreement and its agreement step; it pays the agreement step, then completes on the task with AP2's Checkout and Payment Mandates and the x402 payment, whose nonce is keccak256 of the Payment Mandate. - The kit's own tools at https://northlight-bikes.integraledger.com/mcp, for an agent with no UCP platform profile:
search_catalog,lookup_catalog,get_product,get_terms,negotiate,buy,test_buyandget_purchase.
This app's documents
- The UCP profile: the services, the capabilities and the payment handler:
https://northlight-bikes.integraledger.com/.well-known/ucp - The doors over HTTP, and what each asks to be paid (OpenAPI):
https://northlight-bikes.integraledger.com/openapi.json - Every door, in prose, for an agent:
https://northlight-bikes.integraledger.com/llms.txt - The ARD and AI Catalog manifest:
https://northlight-bikes.integraledger.com/.well-known/ard.jsonand/.well-known/ai-catalog.json - The MCP server card:
https://northlight-bikes.integraledger.com/mcp/server-card - The A2A card:
https://northlight-bikes.integraledger.com/.well-known/agent-card.json - The Agent Skills index: buy-from-northlight-bike-repair, how to buy from this shop:
https://northlight-bikes.integraledger.com/.well-known/agent-skills/index.jsonandSKILL.md - The API catalog (RFC 9727):
https://northlight-bikes.integraledger.com/.well-known/api-catalog - The terms:
https://northlight-bikes.integraledger.com/terms.mdand/.well-known/legal-context.json - The shop's did:web, with its signing key:
https://northlight-bikes.integraledger.com/.well-known/did.jsonand/.well-known/http-message-signatures-directory
An agent that signs its requests
This shop reads Web Bot Auth signatures (RFC 9421, tag web-bot-auth, the key named by Signature-Agent) and Visa's Trusted Agent Protocol signatures (tags agent-browser-auth and agent-payer-auth, Visa's key store), and never requires one. There is nothing to register: sign the request and name your key directory in Signature-Agent. What was verified is shown on the purchase's proof page. It is not part of the agreement. An unsigned request is served the same.
Algorithms: ed25519, ecdsa-p256-sha256, ecdsa-p384-sha384, rsa-pss-sha512, rsa-v1_5-sha256.