Your products inside ChatGPT Shopping — automatically
ChatGPT processes over 50 million shopping queries every day. Trajekt converts your catalogue to OpenAI's JSONL spec and delivers it via SFTP on schedule — no manual work, no errors, no disapprovals.
Most merchants make the mistake of thinking they can repurpose their existing feeds. ChatGPT has its own specification, delivery method, and ranking signals.
❌ What won't work
Submitting your Google Shopping XML to OpenAI
Using your existing Merchant Center feed URL
Descriptions containing HTML markup
Non-ASCII characters in any text field
Double quotes in product titles or descriptions
Listing variants as separate products without group_id
Including variant dimensions that don't actually vary
Static files that don't update pricing and availability
✓ What Trajekt does for you
Generates JSONL in OpenAI's exact required format
Strips all HTML, non-ASCII chars, and special characters
Maps variant_dict only to dimensions that actually vary
Assigns correct group_id to group product variants
Pushes to your SFTP endpoint on your chosen schedule
Updates pricing and availability from your live store
Validates all required fields before submission
Flags disapproval risks before they reach OpenAI
Trusted by UK merchants and agencies
★★★★★
“Finally a feed tool that handles ChatGPT Shopping. Set it up in an afternoon, feeds running the same day. The rules engine is exactly what we needed for custom label management.”
PPC agency, London
Managing 8 client stores
★★★★★
“Switched from DataFeedWatch. The UK-specific handling — EAN validation, GBP pricing, Vehicle Ad VIN support — actually works without workarounds. Saved hours of manual feed fixes every week.”
Automotive retailer, Midlands
3,200 vehicle listings
★★★★★
“The free plan is genuinely useful — not a crippled trial. We used it to validate the setup for a month before moving a 12,000-product WooCommerce store onto the Growth plan.”
Fashion retailer, Manchester
12,000 products across Google, Meta & TikTok
How it works
From your store to ChatGPT Shopping in minutes
Trajekt handles every step of the ChatGPT feed pipeline — no developers, no spreadsheets, no manual exports.
Step 1
Connect your store
Link your Shopify store, WooCommerce, or paste your XML feed URL. Trajekt pulls your full catalogue including variants, images, prices, and metafields.
Step 2
Set your rules
Use Trajekt's rule engine to clean titles, enrich descriptions, set custom labels, and filter products. AI Rules can rewrite descriptions for conversational AI audiences at scale.
Step 3
Generate your JSONL
Trajekt converts your catalogue to OpenAI's JSONL spec — with correct variant grouping, clean text, required flags set, and all required fields validated.
Step 4
Push via SFTP
Your feed is delivered to OpenAI's SFTP endpoint on your chosen schedule — every 30 minutes, twice daily, or daily. Filenames stay consistent so OpenAI overwrites cleanly.
Field specification
OpenAI ChatGPT product feed — required fields
Based on the official OpenAI Commerce spec (version 2026-01-30). Trajekt automatically maps all required and recommended fields from your source data.
Field
Status
Description
Example
Trajekt
item_id
Required
Unique product variant identifier. Max 100 chars.
shopify_GB_10219100897627_517
✓ Auto
title
Required
Product name. Plain text only, max 150 chars.
Barbour Thornproofing Wax Tin
✓ Auto
description
Required
Plain text description. No HTML, no markdown, no special characters.
Essential companion to your waxed jacket...
✓ Auto + clean
url
Required
Direct URL to product page. Must return HTTP 200.
https://store.com/products/barbour-wax
✓ Auto
image_url
Required
Primary product image URL. HTTPS required.
https://cdn.shopify.com/.../image.jpg
✓ Auto
price
Required
Price with ISO 4217 currency code. Space-separated.
12.50 GBP
✓ Auto
availability
Required
in_stock / out_of_stock / preorder / backorder
in_stock
✓ Auto
seller_name
Required
Trading name of the merchant.
Stuarts London
✓ From settings
seller_url
Required
Merchant storefront URL.
https://stuartslondon.com
✓ From settings
return_policy
Required
URL of merchant's returns policy page.
https://store.com/returns
✓ From settings
target_countries
Required
Array of ISO 3166-1 alpha-2 country codes.
["GB"]
✓ From settings
store_country
Required
Country where the merchant operates from.
GB
✓ From settings
is_eligible_search
Required
Boolean. Controls product discoverability in ChatGPT.
true
✓ Auto
is_eligible_checkout
Required
Boolean. Enables Instant Checkout if configured.
false
✓ Auto
group_id
Recommended
Groups variants under the same parent product.
shopify_GB_10219100897627
✓ Auto
variant_dict
Recommended
JSON object of variant dimensions that actually vary.
The ChatGPT feed has quirks that generic feed tools miss. Trajekt was built by PPC practitioners who know exactly what OpenAI's validation looks for.
🔄
Automatic SFTP delivery
Trajekt pushes your JSONL file to OpenAI's SFTP endpoint on your chosen schedule. Files overwrite consistently — no timestamp-suffixed filenames that confuse OpenAI's ingestion.
🧹
Deep description cleaning
We strip HTML, remove non-ASCII characters, delete "Stylist Notes" and "Product Features" sections, remove double quotes, and normalise whitespace. ChatGPT rejects any HTML in descriptions.
🔢
Correct variant handling
Trajekt pre-analyses your catalogue to calculate which dimensions genuinely vary per product group. Incorrect variant_dict causes ChatGPT to multiply your product count by 3× or more.
✨
AI description enrichment
Use Trajekt's AI Rules to rewrite descriptions specifically for conversational AI audiences — factual, clean, keyword-rich descriptions that ChatGPT understands and trusts.
📊
Shopify metafield support
Pull in all Shopify product-level metafields, collections, tags, and SEO fields. Use them in rules to enrich your feed with data that generic feed tools can't access.
🛡️
Pre-submission validation
Every field is validated before submission — URL accessibility, price format, character encoding, required field presence, and JSONL structure integrity. No nasty surprises.
The variant_dict problem — and why it matters
The single biggest mistake UK merchants make with their ChatGPT feed is incorrect variant_dict usage. If you include a colour dimension in variant_dict for every product — even single-colour products — OpenAI's internal engine generates all possible colour × size combinations from your catalogue. A 7,000-product catalogue becomes 22,000+ "products" in ChatGPT, most of which are phantom. This tanks approval rates and wastes your feed budget.
Trajekt solves this by running a pre-pass over your entire catalogue to identify which dimensions actually vary within each product group before writing a single variant_dict. If a product only has one colour, colour is excluded from variant_dict entirely. This alone can increase your ChatGPT approval rate significantly.
Frequently asked questions
Everything you need to know about the ChatGPT product feed
OpenAI's preferred format is Parquet with zstd compression for large catalogues. For most merchants under 50,000 products, compressed JSONL (.jsonl.gz) is the recommended choice — it handles nested variant data cleanly without the escaping headaches that CSV creates. CSV (.csv.gz) also works. All formats must use UTF-8 encoding. Trajekt outputs JSONL by default.
The process has four steps: 1) Register at chatgpt.com/merchants and complete business verification, 2) Receive your unique SFTP endpoint credentials from OpenAI after approval, 3) Format your product catalogue to OpenAI's spec with all required fields in JSONL format, 4) Push the compressed file to your SFTP endpoint on a regular schedule. Trajekt automates steps 3 and 4 entirely — connect your Shopify or XML source, set your schedule, and Trajekt handles the rest.
No — they are completely different specifications. The ChatGPT feed uses JSONL format (not XML), is delivered via SFTP push rather than uploaded to a merchant centre, and includes unique OpenAI flags (is_eligible_search, is_eligible_checkout) that don't exist in Google's spec. The field names are similar in some cases but the structure, delivery method, and approval criteria are entirely different. You cannot submit your Google XML feed to ChatGPT.
Required fields include: item_id, title, description (plain text only), url, image_url, price (with currency code), availability, seller_name, seller_url, return_policy, target_countries, store_country, is_eligible_search, and is_eligible_checkout. Missing any of these will cause the product to be rejected. Trajekt maps all required fields automatically from your Shopify or XML source data.
OpenAI accepts updates as frequently as every 15 minutes. Full feed submissions are currently required — there is no support for incremental updates, so the entire catalogue must be resubmitted each time. For most retailers, twice daily is sufficient to keep pricing and availability current. Fashion retailers and those with frequent stock changes should update more often. Trajekt supports any schedule from every 30 minutes to once daily.
Organic product discovery in ChatGPT is currently free — products appearing in ChatGPT's shopping results incur no fees. OpenAI's Instant Checkout feature (where users purchase directly inside ChatGPT) may involve a small transaction fee when it becomes widely available, but the current organic programme is free. Trajekt's ChatGPT feed conversion is included in all plans including the free tier.
The variant_dict field is a JSON object that describes the dimensions by which product variants differ — for example {"color": "Navy", "size": "M"}. Critically, it must only contain dimensions that actually vary within a product group. Including a colour dimension for a single-colour product causes OpenAI to generate all possible colour combinations from your catalogue, multiplying your product count dramatically and causing most products to be rejected. Trajekt calculates variant dimensions correctly by analysing your entire catalogue before generating output.
Common ChatGPT disapproval causes include: product URLs returning 404 or 301 redirect errors, price mismatches between feed and live website, HTML markup in description fields, non-ASCII characters (curly quotes, em dashes, copyright symbols), double-quote characters in text fields, missing required fields, incorrect variant_dict causing product count inflation, and description content OpenAI considers promotional rather than factual. Trajekt automatically resolves all of these before submission.
OpenAI supports up to 500,000 products per shard file, with each file targeting under 500MB. If your catalogue exceeds this, split it into multiple consistently-named shard files. There is no stated upper limit on total catalogue size. Trajekt handles large catalogues and automatic sharding — the shard filenames stay consistent across updates so OpenAI's ingestion pipeline treats each as a stable source.
Yes. Shopify merchants have a streamlined path as Shopify is a pre-qualified platform within OpenAI's merchant programme. Trajekt connects to your Shopify store via the Admin GraphQL API, pulls your complete product catalogue including all variants, metafields, collections, and images, converts it to OpenAI's JSONL spec with correct field mapping, and pushes to your SFTP endpoint automatically on schedule. No Shopify app needed — just your API credentials.
ChatGPT Shopping launched with US merchants first in late 2026, with OpenAI confirming international expansion throughout 2026. UK merchants should register at chatgpt.com/merchants now to join the waitlist and secure early access as the programme expands internationally. Preparing your feed now means you can launch the moment UK access opens — Trajekt can generate your compliant JSONL feed immediately, ready to push when your SFTP credentials arrive.
BREAKINGOpenAI Ads — what UK merchants need to know
OpenAI Ads: ChatGPT is becoming an advertising platform
In 2026 OpenAI began testing sponsored product placements within ChatGPT Shopping results — a direct signal that ChatGPT will become a paid advertising channel alongside its organic product discovery layer. For UK ecommerce merchants and agencies, this is as significant as Google launching Shopping ads in 2012. The merchants who are already indexed, with complete feeds and optimised product data, will be first-mover advantages when the ads platform scales.
What we know (as of mid-2026)
✓ OpenAI is testing sponsored product placements in ChatGPT
✓ Ads appear within conversational shopping responses
✓ Product data comes from the same merchant feed
✓ Feed quality is central to both organic and paid placement
✓ UK rollout is expanding — early access for registered merchants
What this means for your feed
‣ Your JSONL feed is the product data source for OpenAI Ads
‣ Feed quality affects both organic ranking and ad quality scores
‣ Factual, specific descriptions improve placement in both surfaces
‣ Merchants already in the index will get early ads access
‣ The preparation for organic = the preparation for paid
How OpenAI Ads are expected to work
Based on what OpenAI has disclosed and what we know from their merchant documentation, sponsored placements in ChatGPT work differently from Google Shopping ads in a few important ways.
Context-native placement. Rather than a dedicated "Shopping" tab, OpenAI Ads appear inline within ChatGPT's conversational responses. When a user asks "what's the best waterproof jacket under £150 for hiking?", ChatGPT generates a response that may include both organically-selected products and sponsored placements — but the sponsored items must still be relevant to the query. Irrelevant sponsored products are filtered out by the LLM layer, which means bid alone doesn't win placement. Feed quality and relevance matter.
Feed-driven, not keyword-driven. OpenAI Ads are not keyword campaigns in the Google Ads sense. You don't bid on individual keywords — the system uses your product feed data to determine which queries your products are eligible to appear for, then applies bid logic within those eligible placements. This is closer to Google Shopping's structure than Google Search: your product data determines eligibility, your bid determines priority within eligible placements.
Description quality as a ranking signal. OpenAI's product selection model evaluates description quality as a primary relevance signal. For organic results, this means better descriptions → more placements. For sponsored results, the model will likely use a quality score analogous to Google's Ad Rank — a combination of bid and relevance. A poor description at a high bid may lose to a well-written description at a lower bid. This is the single most important implication for feed optimisation: description quality is not just a nice-to-have for ChatGPT — it is, effectively, your quality score.
The parallel with Google Shopping 2012
When Google launched paid Shopping ads in 2012, merchants with well-optimised product feeds already in Google's index had a massive advantage. They could move budget into the new paid surface immediately, with product data that was already optimised. Merchants who were starting from scratch had to build that foundation first. The ChatGPT Ads opportunity is structurally identical — being in the index now, with quality feed data, is the competitive moat that enables rapid deployment when UK paid access widens.
What to do right now to prepare for OpenAI Ads
1️⃣
Register as an OpenAI merchant
Get your store into OpenAI's merchant programme now. Early registration means you're in the index before UK paid access opens. chatgpt.com/merchants is the registration point.
2️⃣
Generate your JSONL feed via Trajekt
Connect your Shopify or WooCommerce store. Trajekt generates a spec-compliant JSONL feed automatically and delivers via SFTP to OpenAI's endpoint on your configured schedule.
3️⃣
Optimise descriptions for LLM relevance
Rewrite product descriptions to be factual, specific, and use-case-led. Trajekt's AI enrichment layer does this automatically using Claude — your descriptions are rebuilt for AI-channel quality scoring.
Start building your ChatGPT presence now
Trajekt connects your store to OpenAI's merchant programme, generates your JSONL feed, delivers via SFTP, and enriches your descriptions for AI-channel relevance. The merchants setting this up in 2026 are the ones who'll own ChatGPT Shopping when UK paid access scales.
Start getting your products into ChatGPT Shopping today
Join UK merchants already preparing for the AI commerce revolution. Connect your store, set your schedule, and Trajekt handles everything else — JSONL conversion, SFTP delivery, and automatic updates.