Spec v2026-04-08 · Co-developed by Google + Shopify

Universal Commerce
Protocol Docs

The open standard for agentic commerce. Plain-English spec annotations, architecture breakdowns, and practical guidance for developers building on UCP.

Read the Spec Overview → View Architecture

Backed by 50+ industry leaders

Google
Shopify
Amazon
Walmart
Target
Microsoft
Meta
Stripe
Visa
Mastercard
Salesforce
Adyen
Best Buy
Macy's
Etsy
Wayfair
Booking.com
Marriott
DoorDash
Uber Eats
Unofficial community resource. Annotated walkthroughs of the official UCP specification. Always cross-reference with ucp.dev for authoritative details. Last verified against spec version 2026-04-08.
50+
Partner companies
4
Transports (REST, MCP, A2A, ECP)
3
Verticals (Shopping, Lodging, Food)
Apache 2.0
Open source license

What is UCP?

The Universal Commerce Protocol (UCP) is an open-source standard that lets AI agents discover products, build carts, negotiate terms, and complete purchases with any merchant. It standardizes the entire commerce lifecycle: discovery, cart, checkout, payment, and post-purchase (orders, fulfillment, returns).

Announced January 11, 2026 at NRF by Google and Shopify, UCP is now backed by 50+ partners including Walmart, Target, Amazon, Visa, Mastercard, Stripe, Adyen, Best Buy, Macy's, Etsy, Wayfair, Booking.com, Marriott, Hilton, DoorDash, and Uber Eats. It is expanding beyond shopping into Lodging and Food.

The spec is published at ucp.dev under Apache License 2.0. Reference implementations include Shopify's UCP Proxy and the UCP CLI.

Start Here

📋

Spec Overview

The core concepts: discovery, governance, negotiation, services, capabilities, and extensions. Start here if you are new to UCP.

Read overview →
🏗️

Architecture

How UCP fits together: the layered stack, transport options, the trust model, and how agents interact with merchants.

View architecture →
⚙️

Capabilities

The building blocks: checkout, catalog, cart, fulfillment, discounts, identity linking, and how extensions work.

Browse capabilities →
⚖️

UCP vs ACP

How UCP (Google/Shopify) compares to ACP (OpenAI/Stripe) across scope, payments, transport, and maturity.

Compare protocols →

The Commerce Lifecycle

UCP standardizes the full journey from product discovery to post-purchase support:

Discovery
Negotiation
Catalog
Cart
Checkout
Payment
Order
Stage What Happens Key Endpoints
Discovery Agent fetches the merchant's /.well-known/ucp profile to learn what capabilities and transports they support GET /.well-known/ucp
Negotiation Agent and merchant compute the intersection of their capabilities. Server selects the active set. Profile headers
Catalog Search Agent searches products across the global catalog or a single merchant's storefront GET /catalog, GET /products/{id}
Cart Agent builds a cart with line items, applies localization, estimates totals POST /carts, PUT /carts/{id}
Checkout Cart converts to a checkout session. Buyer info, fulfillment, payment instruments collected. POST /checkout-sessions, PUT /checkout-sessions/{id}
Payment Agent submits payment via AP2 (Agent Payments Protocol). Merchant's payment handler processes it. POST /checkout-sessions/{id}/complete
Escalation If the transaction needs human input (e.g. 3DS, address selection), merchant returns a continue_url Response: requires_escalation
Order Post-purchase: order confirmation, fulfillment events, tracking, returns, refunds Webhooks, GET /orders/{id}

Key Concepts

Decentralized Discovery

No central UCP server. Merchants publish profiles at /.well-known/ucp. Agents discover capabilities the same way browsers find robots.txt.

Capability Negotiation

Server-selects architecture. The merchant determines active capabilities from the intersection of both parties' declared capabilities. No integration meetings.

Namespace Governance

Reverse-domain naming (dev.ucp.shopping.checkout) encodes authority. No central registry needed. Vendors use their own namespace for extensions.

Multi-Transport

Same business logic exposed via REST, MCP (JSON-RPC), A2A, and embedded. Swap the transport without changing the logic.

Extensions

Capabilities can extend others. Fulfillment extends checkout. Discounts extend checkout and cart. Multi-parent extensions are supported.

AP2 Payments

Payment-agnostic. UCP delegates to the Agent Payments Protocol (AP2), supporting cards, bank transfers, and stablecoins via any processor.

The .well-known/ucp Profile

Every UCP-enabled merchant publishes a JSON profile at /.well-known/ucp. This is the entry point for agent discovery:

{
  "ucp": {
    "version": "2026-04-08",
    "services": {
      "dev.ucp.shopping": [
        {
          "version": "2026-04-08",
          "transport": "rest",
          "endpoint": "https://shop.example.com/ucp/v1",
          "schema": "https://ucp.dev/.../rest.openapi.json",
          "spec": "https://ucp.dev/.../overview"
        },
        {
          "version": "2026-04-08",
          "transport": "mcp",
          "endpoint": "https://shop.example.com/ucp/mcp",
          "schema": "https://ucp.dev/.../mcp.openrpc.json"
        }
      ]
    },
    "capabilities": {
      "dev.ucp.shopping.checkout": [...],
      "dev.ucp.shopping.fulfillment": [...],
      "dev.ucp.shopping.discount": [...],
      "dev.ucp.common.identity_linking": [...]
    },
    "payment_handlers": { ... }
  }
}
Caching

Both business and platform profiles can be cached by both parties, enabling efficient capability negotiation within the normal request/response flow.

Current Status

Early access, evolving spec

UCP is in early access on Google surfaces (AI Mode in Search, Gemini). Shopify merchants get UCP out of the box. The spec is live but still evolving. Non-Shopify platforms require custom adapters or modules. Payment flow via AP2 is itself pre-production. If you are building on UCP today, expect changes and track the spec version you implement against.

Next Steps

🎓

Learn by doing

Step-by-step tutorials for implementing UCP on different platforms.

Visit UCP Tutorials →

Stuck on something?

Common errors, troubleshooting guides, and Q&A for UCP developers.

Visit UCP Help →
📖

Read the official spec

The authoritative specification, hosted at ucp.dev. Our docs annotate and explain it.

Visit ucp.dev →