> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prava.space/llms.txt
> Use this file to discover all available pages before exploring further.

# UCP Integration

> How Prava discovers and prices products across Shopify merchants with the Universal Commerce Protocol.

**UCP (Universal Commerce Protocol)** is Shopify's agentic-commerce protocol: a standard way for an
agent to **search products, read catalogs, and open a checkout** across participating Shopify merchants.
Prava integrates with UCP so an AI application can discover *what* to buy and get an initial price,
before the [Browser Harness](/integration/browser-harness) confirms the real total and completes the
order.

<Note>UCP is Shopify-specific. Any Shopify store that advertises UCP is reachable through it.</Note>

## What UCP gives you

<CardGroup cols={3}>
  <Card title="Search" icon="magnifying-glass">
    Query a single merchant, or Shopify's **global catalog** across all participating merchants at once.
  </Card>

  <Card title="Catalog" icon="tags">
    Full product details: variants, options (size/color), pricing, availability, and images.
  </Card>

  <Card title="Quote" icon="receipt">
    Open a checkout and get an initial price (subtotal, tax estimate, and shipping options where the
    merchant exposes them).
  </Card>
</CardGroup>

## How Prava integrates with UCP

Prava speaks UCP to Shopify stores that advertise it, and layers a consistent discovery-to-purchase
pipeline on top:

<Steps>
  <Step title="Reach the merchant">
    A Shopify store that advertises UCP exposes a commerce endpoint Prava can call. Prava can target **one
    merchant** directly, or search Shopify's **global catalog** spanning every participating merchant with
    a single query.
  </Step>

  <Step title="Search & catalog">
    Prava runs the search, normalizes the results into a consistent shape (product id, title, price
    estimate, image, merchant), and fetches a product's **variants** (options, prices, and availability)
    so the exact item can be chosen.
  </Step>

  <Step title="Open a checkout (quote)">
    For the chosen variant and destination, Prava asks UCP to **open a checkout**. That returns a checkout
    and an **initial proposal**: subtotal, a tax estimate, and (for merchants that expose it) shipping
    options. This is an *estimate*, not the binding total.
  </Step>

  <Step title="Hand off to the Browser Harness">
    Prava drives that live checkout with the [Browser Harness](/integration/browser-harness), which reads
    and **reconciles the true final total** (shipping + tax settled) and completes the purchase with the
    one-time tokenized card.
  </Step>
</Steps>

This is the first half of the [pipeline](/integration/overview): exactly the chain the CLI exposes as
[`prava shop search → product → quote → checkout`](/prava-pay/shopping).

## Supported merchants

UCP reaches **participating Shopify merchants** (for example Fashion Nova, SKIMS, Alo Yoga,
Steve Madden, Glossier, Everlane, Harry's, and Ridge) plus any Shopify store that advertises UCP.

<Warning>
  **Coverage varies by merchant.** Some merchants expose shipping options and tax through UCP; others
  don't. Treat UCP prices as an **estimate**: the **binding final total** is always confirmed at
  checkout by the [Browser Harness](/integration/browser-harness) before any charge.
</Warning>

## Next

<CardGroup cols={2}>
  <Card title="Browser Harness" icon="robot" href="/integration/browser-harness">
    How the true total is confirmed and the order is completed from a UCP quote.
  </Card>

  <Card title="Agentic shopping (CLI)" icon="cart-shopping" href="/prava-pay/shopping">
    Run this discovery-to-purchase flow from the command line.
  </Card>
</CardGroup>
