Skip to content
UCP
Menu

Satellite

Best practices

Twelve practices that separate a catalog that 'works' from one that interoperates. Ordered by leverage, not difficulty.

Updated : April 2026 · Primary query : agent-ready commerce best practices

Best practices for agent-ready commerce are surprisingly unglamorous. Most are hygiene. All compound. The list below is ordered by leverage: the first items, if missing, cripple everything that follows.

1. Put a stable identifier on every SKU

GTIN when available, MPN+Brand otherwise, internal SKU as fallback. Agents dedup across merchants by identifier. No identifier, no comparability, no shortlist.

2. Make every PDP addressable without a login

Consent walls, JavaScript-only rendering and geolocation redirects silently hide the page from agents. Ensure the canonical URL returns meaningful HTML (including JSON-LD) on first request.

3. Type your attributes, do not bury them in prose

"Waterproof: yes", "Weight: 340g", "Battery life: 24h" — each as a structured field with a known unit. If your PIM only has a description field, enrich before you scale.

4. Express policies as data

Returns window, cost, method. Warranty scope and duration. Shipping regions, rates, ETAs. Use schema.org/MerchantReturnPolicy, schema.org/ShippingRateSettings. Prose is allowed in addition, not instead of.

5. Enforce price and stock parity

Feed price equals PDP price equals checkout price, at least 99% of the time. Same for availability states. This is an operations discipline, not a one-time migration.

6. Publish freshness SLAs

State in a public or partner-facing doc that feeds refresh every X minutes. Agents are increasingly sensitive to updated_at timestamps. Freshness you announce and meet beats freshness you hope for.

7. Cover the category taxonomy, not just your hero attributes

If the Google Product Category or GS1 GPC for your category has 18 attributes, cover all 18. Partial coverage is filterable-out by the agent.

8. Localize values, not just labels

Size conversions. Currencies. Weight units. Date formats. A Japanese shopper filtering for EU sizing should not be silently misrouted.

9. Emit order lifecycle events

Created, paid, confirmed, shipped, delivered, returned. Agents watching on behalf of users rely on these. Webhooks are preferable to polling.

10. Accept agent-pay credentials from at least your main PSP

Stripe Agentic Commerce, PayPal agent endpoints, Visa Intelligent Commerce, Mastercard Agent Pay — track the ones your PSP supports and enable them as they leave preview.

11. Instrument agent traffic

Tag traffic by user-agent. Log which PDPs are fetched, which feeds are ingested, and what proportion of traffic is agent-driven. You cannot optimize what you cannot see.

12. Build a public change-log for your catalog semantics

When you add an attribute, deprecate a field, or adjust shipping zones, publish it. Agents, partners and feed consumers are your users. Treat your catalog like an API because, increasingly, it is one. See catalog as API.

Three compound wins

If you can only do three things this quarter:

  1. Close the identifier gap (GTIN/MPN/Brand on 100% of active SKUs).
  2. Add structured returns and shipping policies to all PDPs.
  3. Close the price/stock parity gap between feed and PDP to >99%.

These unlock most of the agent-visibility surface for most merchants. The rest is compounding.

Where to go next