Quick Answer: Microsoft adopted Google’s Universal Commerce Protocol (UCP) into Merchant Center on April 21, 2026, which unified Copilot and Google AI Mode behind one feed format. ChatGPT Shopping continues to require an Agentic Commerce Protocol (ACP) feed uploaded to OpenAI. Shopify merchants get both pipelines through the Catalog API integration automatically. WooCommerce, Magento and headless stores have to publish both feeds manually. AI-driven retail traffic in the US jumped 4,700% from 2024 to 2025 (Adobe Analytics, January 2026). A store with neither feed surfaces nowhere.
In this article
- The 90-Second Protocol Map: UCP and ACP, Side by Side
- Why Shopify Merchants Get Both Feeds for Free
- The WooCommerce UCP Attribute Audit
- The ACP-Specific Differences That Trip WooCommerce Up
- One Source of Truth, Two Emitted Feeds
- The Measurement Gap Neither Protocol Fills
- Key Takeaways
- Frequently Asked Questions
Copilot reads UCP. ChatGPT reads ACP. Shopify gets both for free. WooCommerce gets neither for free. Microsoft adopted Google’s Universal Commerce Protocol into Merchant Center on April 21, 2026 — a single feed format now covers Copilot and Google AI Mode in one shot. OpenAI’s Agentic Commerce Protocol still has to be uploaded separately for ChatGPT Shopping visibility. The two protocols look similar from the outside; they’re not interchangeable.
The timing matters. AI-driven traffic to US retail websites rose 4,700% from 2024 to 2025 (Adobe Analytics via Substack analysis, January 2026), and PAZ.ai’s industry report put the stakes plainly: a merchant with neither feed surfaces nowhere, regardless of how good the website is. This is the WooCommerce-specific path through both protocols.
The 90-Second Protocol Map: UCP and ACP, Side by Side
UCP is the Google-led, Apache-licensed open standard that Microsoft just adopted. ACP is OpenAI’s proprietary protocol for ChatGPT Shopping. The two cover overlapping AI surfaces but neither is a substitute for the other.
Google launched the Universal Commerce Protocol (UCP) in January 2026 under Apache 2.0, co-developed with Shopify and publicly backed by Target, Walmart, Wayfair, and Etsy. On April 21, 2026, Microsoft Advertising formally adopted UCP into Microsoft Merchant Center for US merchants. A UCP-clean catalog now surfaces in both Google AI Mode and Microsoft Copilot through a single feed. That is the consolidation event most operators missed in the April 21 announcement wave.
OpenAI’s Agentic Commerce Protocol (ACP) has been the path for ChatGPT Shopping since September 2025. ACP is not open-licensed in the same way — it is managed by OpenAI with commerce-partner agreements layered on top. Feeds are uploaded directly to OpenAI’s commerce ingestion endpoint with merchant policy URLs, native checkout declarations, and product attributes that overlap with UCP but are not identical.
Microsoft adopted UCP into Merchant Center on April 21, 2026, unifying Copilot and Google AI Mode behind a single Apache 2.0-licensed feed format — the first time two major AI surfaces shared one commerce protocol.
| Dimension | UCP (Google + Microsoft) | ACP (OpenAI) |
|---|---|---|
| Surfaces covered | Google AI Mode, Microsoft Copilot, Bing Shopping | ChatGPT Shopping, ChatGPT mobile, OpenAI partners |
| Launched | January 2026 | September 2025 |
| Governance | Apache 2.0, open standard | OpenAI-managed, partner agreements |
| Transport | REST plus JSON-RPC | REST |
| Authentication | AP2 + OAuth 2.0 | OpenAI commerce credentials |
| Payment | Stripe, PayPal, wallets via AP2 | OpenAI-mediated through ACP partners |
| Backers / Adopters | Shopify, Target, Walmart, Wayfair, Etsy, Microsoft | Shopify (via partnership), Stripe |
Both protocols require structured product data, both expect machine-readable policies, and both ignore the website-level SEO signals you have spent years building. If your product data lives in a clean UCP-compliant feed, you get Copilot and AI Mode. If it lives in a clean ACP-compliant feed, you get ChatGPT Shopping. To cover both, you publish both. Neither is a substitute for the other.
You may be interested in: Microsoft AI Max Opens in May — UET Tag Quality Now Gates Copilot Ads
Why Shopify Merchants Get Both Feeds for Free
Shopify’s Catalog API integration with Microsoft Copilot, plus its ACP partnership with OpenAI, ships UCP and ACP coverage out of the box with no merchant-side work — every non-Shopify platform has to do the work manually.
Shopify is on both sides of the consolidation. The Catalog API integration with Microsoft Copilot, announced alongside the UCP adoption, automatically syndicates Shopify merchant catalogs into the Copilot product surface. Separately, Shopify’s commerce partnership with OpenAI emits an ACP-compliant feed into ChatGPT Shopping. A Shopify store turns on the relevant Shopify-side integration and gets UCP visibility and ACP visibility without writing protocol code.
This is not a Shopify favouritism story; it is a platform-leverage story. Shopify built a single canonical product schema years ago, then negotiated protocol mappings at the platform layer. The merchant inherits the work. WooCommerce, Magento, BigCommerce, and headless builds inherit nothing — the product schema is the merchant’s responsibility, and so is the protocol mapping.
Shopify merchants get UCP and ACP coverage automatically through Shopify’s platform-level integrations — every non-Shopify platform, including WooCommerce, has to publish both feeds manually.
The consequence for WooCommerce operators: any guidance you read about UCP that assumes Shopify’s plumbing does not apply. The required attributes are the same, but the emission path is yours to build.
The WooCommerce UCP Attribute Audit
WooCommerce’s native product schema covers about 70% of what UCP wants. The remaining 30% — agentic identifiers, machine-readable policies, total-cost calculability — is where most stores fail the feed validation.
WooCommerce stores a product as a custom post type with rich attribute support, variations, stock data, pricing, and shipping class. UCP requires five categories of fields that WooCommerce does not natively expose, and the audit work is in surfacing them cleanly.
The five UCP fields WooCommerce does not give you for free
- native_commerce — boolean indicating whether the product supports in-conversation checkout. WooCommerce has no native flag; you assert it per product based on whether you support the agentic checkout path.
- merchant_item_id — a stable, merchant-defined SKU identifier separate from WooCommerce’s internal post ID. Required so the same product can be referenced across UCP and ACP feeds with one canonical key. Most stores conflate SKU with post_id, which breaks when SKUs change.
- return_policy as machine-readable JSON — UCP expects structured fields (window in days, restocking fee, eligibility conditions), not a prose page. Your existing returns page becomes a JSON object.
- customer_support_contact — at least one structured contact channel (email, phone, or webform URL) attached at product level. A site-wide contact page does not satisfy the requirement.
- total_cost_calculability — every variant must allow an agent to compute the total cost (price + shipping + tax) before purchase, with shipping rules exposed in the feed. WooCommerce stores that rely on cart-page shipping calculation fail this check.
These five gaps account for most UCP feed rejections seen in early 2026. Roughly 60-70% of WooCommerce stores entering the AI Mode pilot have catalogs that publish but do not pass validation (industry estimate from PAZ.ai, March 2026 commentary). The validation gap is not visible until the feed is rejected; the rejection is not visible unless you monitor Merchant Center diagnostics.
The ACP-Specific Differences That Trip WooCommerce Up
ACP overlaps with UCP on product attributes but diverges sharply on checkout intent declaration and merchant policy URLs — and ACP feed ingestion is direct-to-OpenAI rather than via a Merchant Center.
The ACP overlap is real: product title, description, price, availability, image URL, and category all match UCP one-to-one. The divergence sits in three places where the protocols reflect different operating philosophies.
First, ACP requires explicit checkout endpoint declarations — your store has to expose a checkout intent URL that OpenAI can call with the agent’s session token attached. UCP’s AP2 + OAuth flow handles this through a wallet-and-token abstraction; ACP wants the endpoint directly. The WooCommerce-specific implication is that a custom REST route has to exist and respond to OpenAI’s ingestion handshake.
Second, ACP merchant policy URLs are mandatory and per-policy: separate URLs for returns, shipping, privacy, and terms. UCP accepts a structured JSON blob for policies; ACP wants public-facing URLs. A WooCommerce store that buried policies inside its Yoast SEO settings has to surface them as discrete, crawlable pages.
Third, ACP feed ingestion is direct-to-OpenAI, not via Merchant Center. There is no central console; you push the feed to an OpenAI commerce ingestion endpoint with an API key, and feedback arrives via webhook. The operating model is closer to a Stripe webhook integration than a Google Merchant Center upload.
None of this is technically hard. All of it is unfamiliar.
One Source of Truth, Two Emitted Feeds
The right WooCommerce architecture is a single canonical product model in WordPress that emits both feeds via separate REST endpoints — not two parallel exports that drift apart in the first quarter.
The naive path is to maintain a UCP feed and an ACP feed as separate exports. This works for a quarter. By month four, the two feeds disagree about return windows on three products, the support contact on two more, and one feed has a SKU the other does not. The drift is not malicious; it is the default of any system with two outputs and no canonical source.
The architecture that holds up is a single canonical product model — WordPress post meta plus a small set of custom fields — that emits UCP at one REST route and ACP at another. The product editor updates one source. The two feeds render from that source on demand. There is no manual export, no second spreadsheet, no parallel maintenance.
The schema work is small and structured:
- One custom post meta block per product for the five UCP-specific fields above.
- One additional meta block for ACP-specific checkout intent URL plus per-policy URLs.
- Two REST routes:
/wp-json/yourstore/v1/ucp-feedand/wp-json/yourstore/v1/acp-feed, each transforming the canonical model into protocol-compliant JSON. - One scheduled task to ping Merchant Center and OpenAI ingestion when the feed changes.
You may be interested in: Google AI Max for Shopping Reads Your Feed, Not Your Bids
This pattern keeps the operator in control. When UCP version 1.1 or ACP version 2 ships and the attribute set shifts, you change one transformer rather than two feeds.
The Measurement Gap Neither Protocol Fills
UCP and ACP describe how product data reaches the agent. Neither describes how the conversion comes back. The agent-to-order join is a server-side problem the protocols intentionally leave alone.
UCP and ACP exist to make products discoverable to AI agents. They do not exist to report which agent bought. When an order completes after a Copilot recommendation, the WooCommerce order record contains the order data — but nothing about which AI surface initiated the journey, unless you captured it.
The capture path is straightforward and entirely on the WooCommerce side. Both protocols pass agent-source identifiers through URL parameters or checkout-intent metadata when the customer follows the agent’s recommendation to your store or completes checkout in-conversation. Those identifiers — surfaced as URL params, request headers, or intent payload fields — have to be read at the order hook, attached to the order as post meta, and relayed downstream to GA4, Microsoft Ads CAPI, Meta CAPI, and your warehouse.
Here’s the thing: client-side pixels do not see in-conversation conversions at all, and they see redirected conversions only if the agent-source param survives the redirect — which it often does not, because some agents strip query strings before redirect for privacy reasons. The only reliable capture point is server-side, at the moment the order is created or the processor webhook fires.
This is where Transmute Engine sits in the stack. It captures the WooCommerce order — including any UCP or ACP redirect parameters that landed at checkout — server-side from your subdomain, then relays it to GA4 via Measurement Protocol, Microsoft Ads UET CAPI, Meta CAPI, and BigQuery with the agent-source dimension preserved end to end. The result is a single SQL question that joins citation frequency to revenue: which agent referred this order, which campaign was running, what was the margin.
Neither UCP nor ACP reports which agent initiated a conversion — the agent-to-order join only happens server-side at the order hook, with the agent-source identifier preserved from the protocol’s redirect or checkout-intent payload.
Two-protocol publishing becomes one-stream measurement. The feed work is unavoidable; the attribution work is solvable.
Key Takeaways
- UCP and ACP cover different surfaces: UCP serves Google AI Mode and Microsoft Copilot since April 21, 2026. ACP serves ChatGPT Shopping. Neither is a substitute.
- Shopify gets both feeds platform-side: WooCommerce, Magento, and headless builds have to publish both feeds manually with their own protocol code.
- WooCommerce’s UCP gap is 30%: native_commerce, merchant_item_id, machine-readable return policy, structured support contact, and total-cost calculability are not in the default product schema.
- ACP diverges on checkout intent and per-policy URLs: direct ingestion to OpenAI, not via a Merchant Center console.
- Build one canonical product model, emit two feeds: parallel exports drift within a quarter. A single source of truth with two REST transformers holds up.
- Neither protocol reports which agent bought: the agent-to-order join is a server-side capture problem, solved at the WooCommerce order hook.
Frequently Asked Questions
UCP is an Apache 2.0-licensed open standard launched by Google in January 2026 for syndicating product catalogs to AI agents. It defines structured product attributes, machine-readable policies, payment authentication via AP2 plus OAuth 2.0, and a REST plus JSON-RPC transport. Microsoft adopted UCP into Merchant Center on April 21, 2026, which means a single UCP-compliant feed now covers both Google AI Mode and Microsoft Copilot. Shopify, Target, Walmart, Wayfair, and Etsy were named launch backers.
No. ChatGPT Shopping uses OpenAI’s Agentic Commerce Protocol (ACP), which has been live since September 2025 and is not open-licensed. ACP requires a separate feed uploaded directly to OpenAI’s commerce ingestion endpoint with checkout intent URLs and per-policy URLs declared. A UCP-only WooCommerce store will surface in Copilot and Google AI Mode but not in ChatGPT. The two protocols overlap on roughly 80% of product attributes but diverge on checkout declaration, policy URLs, and ingestion path.
Five fields are not in WooCommerce’s default product schema: the native_commerce boolean (in-conversation checkout support), merchant_item_id (a stable SKU separate from post_id), return_policy as machine-readable JSON, a product-level customer_support_contact, and total_cost_calculability (shipping plus tax computable in the feed itself). Each can be added as WooCommerce custom post meta and exposed through a custom REST endpoint. Without them, the feed publishes but fails validation in Microsoft Merchant Center diagnostics.
Shopify’s Catalog API integration with Microsoft Copilot, announced alongside the UCP adoption on April 21, 2026, syndicates Shopify merchant catalogs into Copilot automatically. Shopify also has a separate commerce partnership with OpenAI that emits ACP-compliant feeds into ChatGPT Shopping. Both integrations operate at the platform layer — the merchant turns on the toggle and the protocol mapping happens in Shopify’s infrastructure. Non-Shopify platforms have no equivalent — the protocol code is the merchant’s responsibility.
Neither UCP nor ACP reports the agent identity in the conversion record. The agent-source identifier arrives at your store as a URL parameter or, for in-conversation checkout, as a field in the checkout intent payload. Capture it server-side at the WooCommerce order hook, store it as order meta, and relay it to GA4, Microsoft Ads CAPI, Meta CAPI, and your warehouse. Client-side pixels usually miss it — agents strip query strings before redirect, and in-conversation checkouts never load your page.
References
- Microsoft Advertising (April 21, 2026). Win across all three eras of the web — UCP adoption announcement. Source
- Universal Commerce Protocol official documentation (2026). Source
- Semrush (March 2026). Universal Commerce Protocol update analysis. Source
- PAZ.ai (March 2026). AI commerce protocol coverage analysis. Source
- Adobe Analytics via Substack analysis (January 2026). AI-driven retail traffic up 4,700% year over year. Source
- OpenAI Agentic Commerce Protocol documentation (September 2025). Source
Publish to both feeds, then capture which agent bought at the order hook. Start with the architecture, not the dashboard.



