Checkout icon

Product Feed API Integration

Direct AI agents to your product feed and process payments with Adyen.

The Adyen Product Feed API provides a way for you to communicate with our centralized product knowledge hub that synchronizes your inventory with AI platforms. It operates on an asynchronous batch processing model to perform "semantic mapping" between your inventory data and industry-standard Agentic Commerce protocols. You can upload batches of information about your inventory to Adyen, and we will synchronize it with AI platforms.

Requirements

Requirement Description
Integration type An existing online payments integration.

How it works

The Product Feed API enables you to synchronize your product catalog with AI platforms through Adyen's centralized product knowledge hub. Here's how it works:

  1. Batch Ingestion: You upload product data in batches of up to 200 items. Each item declares its target platforms via a platforms array.
  2. Semantic Mapping: Adyen processes your data and maps it to industry-standard Agentic Commerce protocols.
  3. AI Platform Synchronization: The mapped data is synchronized with AI platforms like OpenAI and Meta. A single item can target multiple platforms in one request.
  4. Asynchronous Processing: The API operates asynchronously, so you can check ingestion status later.

API Architecture & Operations

The API focuses on high-efficiency batch ingestion rather than individual item management. A single ingestion item can be fanned out to multiple AI platforms in a single request via the per-item platforms array.

Base URL:

Environment URL
Test https://commerce-suite-test.adyen.com/commerce-suite/productFeed
Live https://commerce-suite.adyen.com/commerce-suite/productFeed

Core Endpoints

Method Path Summary Description
POST /v1/ingestions Ingest a product feed Ingests a list of up to 200 items for asynchronous processing to OpenAI and/or Meta. Each item declares its target platforms via platforms. Products omitted from the request remain unchanged.
DELETE /v1/ingestions Delete products Deletes up to 200 products from one or more AI platforms (Meta, OpenAI) in a single call.
GET /v1/ingestions/{ingestionId} Get product ingestion status Retrieves the processing state (Pending, Processing, ProcessingOnPlatform, Succeeded, Failed, Processed) per platform, along with a summary of success/failure/pending/processing counts and per-product errors.

Authentication

Secure your requests using one of the following methods:

  • X-API-Key: Provide your Adyen API Key in the request header.
  • Basic Auth: Standard HTTP Basic authentication is also supported.

Comprehensive data schema: UnifiedProductFeedItem

The following tables include all fields supported by the UnifiedProductFeedItem schema for OpenAI and Meta integration.

Routing & Identifiers

# Module Field Name Data Type Description / Notes
1 Routing platforms Array\<Enum> Required. Target AI platforms for this item. Values: Meta, OpenAI. A single item can target multiple platforms.
2 Identifiers merchantProductId String Required. Unique Item ID.
3 Identifiers brand String Manufacturer/Brand name.
4 Identifiers gtin String Global Trade Item Number (Regex: ^\d+$).
5 Identifiers mpn String Manufacturer Part Number.

Item Info

# Module Field Name Data Type Description / Notes
6 Item Info title String Product name.
7 Item Info description String Plain-text product narrative.
8 Item Info url URI Product landing page link.
9 Item Info eligibleSearch Boolean Visibility in search engines/AI agents.
10 Item Info eligibleCheckout Boolean Direct purchase eligibility.
11 Item Info condition Enum New, Used, Refurbished.
12 Item Info ageGroup Enum NewBorn, Infant, Toddler, Kids, Adult, Teen, AllAges.
13 Item Info productCategory String Categorization path using ">" separator.
14 Item Info material String Primary material/fabric.
15 Item Info pattern String Design pattern description.
16 Item Info richTextDescription String Description with HTML support.
17 Item Info internalLabel Array Merchant-specific tags (e.g., "summer", "trending").
18 Item Info dimension Object height, length, width, unit (Regex: ^\d+\.\d{2}$).
19 Item Info weight Object value (Regex: ^\d+\.\d{2}$) + unit.

Pricing & Inventory

# Module Field Name Data Type Description / Notes
20 Pricing price Object Base price (Currency + Minor Units).
21 Pricing salePrice Object Discounted price.
22 Pricing salePriceStartAt ISO-8601 Start of promotion.
23 Pricing salePriceEndAt ISO-8601 End of promotion.
24 Pricing unitPricingMeasure String Quantity for unit pricing.
25 Pricing baseMeasure String Reference unit for pricing.
26 Pricing pricingTrend String Narrative context (e.g., "Lowest price in 6 months").
27 Inventory availability Enum InStock, OutOfStock, PreOrder, BackOrder, Unknown.
28 Inventory availableAt ISO-8601 Date of stock availability.
29 Inventory expireAt ISO-8601 Date the listing expires.
30 Inventory inventory Integer Real-time stock count.
31 Inventory pickupMethod Enum InStore, Reserve, NotSupported.
32 Inventory pickupSla Object Pickup timeframe (value + unit).

Media

# Module Field Name Data Type Description / Notes
33 Media imageUrl URI Primary product image link.
34 Media additionalImageUrls Array Supplementary image links.
35 Media videoUrls Array Product video links.
36 Media model3dUrl URI 3D asset link (.glb).

Variants & Logistics

# Module Field Name Data Type Description / Notes
37 Variants groupId String Parent ID for color/size groups.
38 Variants listingHasVariations Boolean Flags if item is a parent listing.
39 Variants itemGroupTitle String Shared title for the variant group.
40 Variants color String Product color.
41 Variants size Object value + system (sizing system).
42 Variants gender String Target gender.
43 Variants offerId String Unique offer code per variant.
44 Variants variantDict Object Key-value pairs for unique attributes.
45 Variants customVariants Array category, label, number, option.
46 Fulfillment shipping Array\<Object> List of shipping options (service, price, handling/transit days, weight, country, region).
47 Fulfillment digital Boolean True if non-physical product.

Merchant, Returns & Performance

# Module Field Name Data Type Description / Notes
48 Merchant sellerName String Retailer name.
49 Merchant marketplaceSeller String 3rd party seller name.
50 Merchant sellerUrl URI Seller storefront link.
51 Merchant sellerPrivacyPolicy URI Privacy policy link.
52 Merchant sellerTos URI Terms of Service link.
53 Returns acceptsReturns Boolean Return eligibility.
54 Returns acceptsExchanges Boolean Exchange eligibility.
55 Returns returnDeadlineInDays Integer Return window.
56 Returns returnPolicy URI Full return policy link.
57 Performance popularityScore String Numeric score (Regex: ^\d+\.\d{2}$).
58 Performance returnRate String Return frequency.

Compliance, Social & Geo

# Module Field Name Data Type Description / Notes
59 Compliance compliances Array warning, warningUrl, ageRestriction.
60 Social review.reviewCount Integer Total product reviews.
61 Social review.starRating String Average stars (Regex: ^\d+\.\d{2}$).
62 Social review.storeReviewCount Integer Total store-level reviews.
63 Social review.storeStarRating String Store-level stars (Regex: ^\d+\.\d{2}$).
64 Social review.reviews Array title, content, rating, maxRating, minRating.
65 Social QAndA Array question, answer.
66 Related relatedProduct.relatedProductId String ID of a similar item.
67 Related relatedProduct.relationshipType Enum PartOfSet, RequiredPart, OftenBoughtWith, Substitute, DifferentBrand, Accessory.
68 Geo targetCountries Array ISO-3166-1 alpha-2 codes (e.g., US, CA).
69 Geo storeCountry String ISO country code of the store.
70 Geo geoPrice Object Country-specific price.
71 Geo geoAvailability Object Country-specific stock.

Data Integrity & Formatting Rules

Price Formatting (Minor Units)

All price values (price, geoPrice, salePrice, shipping.price) must be integers in minor units.

  • Example: For USD 20.00, send 2000.
  • Currency Code: Must be the three-letter ISO-4217 code.

Metric Formatting (Regex Strings)

Fields for weight, dimensions, and ratings must be strings with exactly two decimal places.

  • Requirement: Values must match ^\\d+\\.\\d{2}$.
  • Affected Fields: weight.value, dimension.height/dimension.length/dimension.width, starRating, storeStarRating, and popularityScore.

Batch Limits

  • POST /v1/ingestions: up to 200 items per request.
  • DELETE /v1/ingestions: up to 200 items per request.

Examples

POST /v1/ingestions

OpenAI request with only required fields

OpenAI request with all supported fields

Meta request with only required fields

Meta request with all supported fields

Multi-platform item (single SKU sent to both Meta and OpenAI)

Response

DELETE /v1/ingestions

Delete products from a single platform

Delete products from multiple platforms

Response

GET /v1/ingestions/{ingestionId}

Returns per-platform processing status. The response contains a platformStatuses array so multi-platform ingestions can be tracked independently per target.

Response

Ingestion status values: Pending, Processing, ProcessingOnPlatform, Succeeded, Failed, Processed.