Shopify Global Catalog and Xano Integration

The integration between the Shopify Global Catalog and the Xano data layer is a critical component of the proposed architecture. This integration enables AI agents to access a vast range of products while leveraging Xano's robust backend capabilities for data management, business logic, and secure transactions.

Integration Strategy

The integration strategy is based on a decoupled, API-driven approach. The AI Agent Platform queries the Shopify Global Catalog directly for product discovery. The resulting product data, including UPIDs and checkoutUrls, is then passed to the Xano backend to be incorporated into the transaction flow. This approach minimizes data duplication and ensures that product information is always up-to-date.

Data Synchronization and Flow

Data synchronization between Shopify and Xano is primarily on-demand, triggered by user interactions. There is no bulk data migration or caching of the Shopify catalog in Xano, in adherence to Shopify's API usage guidelines.

The data flow follows these steps:

  1. Product Discovery: The AI agent queries the Shopify Global Catalog API/MCP
  2. Product Selection: The user selects a product, and the agent retrieves the detailed product information, including the checkoutUrl and variantId
  3. Cart Creation: The agent sends the selected product information to Xano to create a cart object. This cart object is associated with the user's session
  4. Mandate Generation: Xano generates the Cart Mandate based on the cart object, which is then signed by the user (or an agent with delegated authority)
  5. Order Placement: Once the payment is authorized, Xano can use the checkoutUrl to complete the purchase, or simply record the transaction details for fulfillment by the merchant

Data Schema Mapping

While there is no direct schema mapping in the sense of database-to-database synchronization, there is a logical mapping of data entities between Shopify and Xano:

Shopify Entity Xano Entity Description
UniversalProduct Product Snapshot (stored within the Cart/Order object) A snapshot of the key product details at the time of purchase, including title, description, and price. This is for auditing and order history purposes.
Variant Cart Item Represents a specific product variant that a user has added to their cart. It includes the variantId, quantity, and price.
Shop Merchant Information (stored within the Order object) Information about the merchant selling the product, including the shopId and name.
checkoutUrl Order Fulfillment Data The URL used to initiate the checkout process on the merchant's site. This is stored in the order object in Xano to facilitate fulfillment.

Shopify Global Catalog Features

Universal Product ID (UPID)

The Shopify Catalog uses Universal Product IDs to prevent duplicate products when the same item is sold by multiple merchants. Search results are clustered by UPID, ensuring a clean, deduplicated product discovery experience.

Catalog API Endpoints

Search Endpoint (/global/v2/search):

  • Returns array of UniversalProduct objects
  • Supports filtering by price, availability, shipping location, categories
  • Limit of 10 results per query (configurable up to 10)

Lookup Endpoint (/global/v2/p/{id}):

  • Retrieves detailed information for a single product using UPID
  • Returns comprehensive variant information, pricing, and checkout URLs
  • Supports option preferences for filter relaxation

Authentication

The Catalog API requires JWT Bearer Token authentication. Tokens are obtained through a client credentials flow and included in the Authorization header for all API requests.

Xano as Data Layer

Xano serves multiple critical roles in the architecture:

  • Session State Management: Maintains stateful interactions for A2A protocols
  • Mandate Storage: Stores Intent Mandates and Cart Mandates (AP2)
  • User Consent Management: Tracks and enforces user consent preferences
  • API Gateway: Routes requests between agents, merchants, and payment providers
  • Data Transformation: Transforms legacy data formats to UCP-compliant schemas

Next: Security & Encryption →