PHPackages                             angeo/module-openai-product-feed - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. angeo/module-openai-product-feed

ActiveMagento2-module[API Development](/categories/api)

angeo/module-openai-product-feed
================================

OpenAI (ChatGPT) product feed generator for Magento 2. Exports a spec-compliant product feed for all product types: simple, virtual, downloadable, configurable, bundle and grouped.

2.0.1(1mo ago)3581MITPHPPHP &gt;=8.1

Since Oct 13Pushed 1mo agoCompare

[ Source](https://github.com/angeo-dev/module-openai-product-feed)[ Packagist](https://packagist.org/packages/angeo/module-openai-product-feed)[ Docs](https://angeo.dev/)[ RSS](/packages/angeo-module-openai-product-feed/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependencies (14)Versions (6)Used By (1)

OpenAI Product Feed Generator for Magento 2
===========================================

[](#openai-product-feed-generator-for-magento-2)

[![Latest Version](https://camo.githubusercontent.com/c71cff059d57ed4e1e36e891f12bfa12c4011a0a90a8e88461579df44964d969/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616e67656f2f6d6f64756c652d6f70656e61692d70726f647563742d66656564)](https://packagist.org/packages/angeo/module-openai-product-feed)[![Total Downloads](https://camo.githubusercontent.com/b52007905c81522347c6fda8d5eb8d2a4d1aebc09a59f49320bb353f7da33a18/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f616e67656f2f6d6f64756c652d6f70656e61692d70726f647563742d66656564)](https://packagist.org/packages/angeo/module-openai-product-feed)[![License](https://camo.githubusercontent.com/1f0c348ad82564f9f3f4c61e01669b3343ae0717a8eb4c8ebbed7bf8136a420d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f616e67656f2f6d6f64756c652d6f70656e61692d70726f647563742d66656564)](LICENSE)[![PHP Version](https://camo.githubusercontent.com/dbbdd7281ddade8a19d6ed6deb202839f51516d1b024662a664619a8d87415ba/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f616e67656f2f6d6f64756c652d6f70656e61692d70726f647563742d666565642f706870)](composer.json)[![Magento](https://camo.githubusercontent.com/a3a463f569e9871e320c0347c39fa8ccac2c29b7236e0f3b73fa65f7cdfc5106/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6167656e746f2d322e342e782d6f72616e6765)](https://camo.githubusercontent.com/a3a463f569e9871e320c0347c39fa8ccac2c29b7236e0f3b73fa65f7cdfc5106/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6167656e746f2d322e342e782d6f72616e6765)[![OpenAI Feed Spec](https://camo.githubusercontent.com/6aabfa5e52f5d1b8575131fa99892d07cf77b5718218c49ae14791c7fcb87a88/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f70656e414925323046656564253230537065632d537461626c652d626c7565)](https://camo.githubusercontent.com/6aabfa5e52f5d1b8575131fa99892d07cf77b5718218c49ae14791c7fcb87a88/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f70656e414925323046656564253230537065632d537461626c652d626c7565)

Generates an [OpenAI (ChatGPT) product feed](https://developers.openai.com/commerce/specs/file-upload/products) per store view so your Magento catalog can be discovered — and purchased — inside ChatGPT.

The exported CSV is compliant with the **OpenAI Product Feed file-upload specification (Stable)** and covers **all Magento product types**: simple, virtual, downloadable, configurable, bundle and grouped.

Features
--------

[](#features)

- Feed columns aligned with the OpenAI Product Feed file-upload specification (Stable): `item_id`, `is_eligible_search`, `is_eligible_checkout`, `image_url`, `item_weight_unit`, `return_deadline_in_days`, and more
- All Magento product types: simple, virtual, downloadable, configurable, bundle, grouped
- Configurable products exported as parent listing + child variant rows (`group_id`, `variant_dict`, `item_group_title`)
- Grouped products linked via `related_product_id` / `relationship_type`
- Digital goods flagged with `is_digital`
- Fault-tolerant generation: failing products are logged and skipped, never abort the run
- Dedicated log file: `var/log/angeo_openai_feed.log`
- Optional attributes (media gallery, reviews, Q&amp;A)
- Test coverage

Requirements
------------

[](#requirements)

- PHP &gt;= 8.1
- Magento 2.4.x (Open Source or Adobe Commerce)

Installation
------------

[](#installation)

You can install this module as a Composer package.

1. `composer require angeo/module-openai-product-feed`
2. Run `bin/magento setup:upgrade`

### As a module

[](#as-a-module)

1. Download latest release files and extract them under `app/code/Angeo/OpenAiProductFeed`
2. Run `bin/magento setup:upgrade`

Upgrading from 1.x
------------------

[](#upgrading-from-1x)

Version 2.0.0 is a breaking release. Feed columns were renamed to match the OpenAI specification (`item_id`, `is_eligible_search`, `is_eligible_checkout`, `image_url`, `item_weight_unit`, `return_deadline_in_days`, …) and `ProductMapperInterface::map()`now returns a list of rows. See [CHANGELOG.md](CHANGELOG.md) for the full list.

No data migration is needed: the `enable_search` / `enable_checkout` product attributes are unchanged — only the exported column names differ.

Configuration
-------------

[](#configuration)

You can find the module's configuration under `Stores -> Settings -> Configuration -> Angeo`: seller identity (name, URL, privacy policy, terms of service) and return policy (URL, return window in days). Per the OpenAI specification, `seller_privacy_policy`and `seller_tos` are required when checkout is enabled for a product.

Two product attributes control per-product eligibility (found in the "OpenAI Configurations" attribute group):

- **Enable Search** → exported as `is_eligible_search`
- **Enable Checkout** → exported as `is_eligible_checkout` (automatically forced to `false` in the feed when search is not enabled, per the specification)

Product Feed
------------

[](#product-feed)

To generate the product feeds manually, use the `angeo:product-feed:generate` Magento command:

```
  bin/magento angeo:product-feed:generate

```

A cron job (`angeo_generate_openai_feed`) also runs daily at 02:00.

Output file path, relative to the `var` directory: `var/angeo/openai_feed/.csv`

Skipped products and per-store summaries are written to `var/log/angeo_openai_feed.log`.

Product type handling
---------------------

[](#product-type-handling)

TypeBehaviorSimpleOne rowVirtual / DownloadableOne row, `is_digital=true`, no weightConfigurableParent row (`listing_has_variations=true`) + one row per enabled child with `group_id`, `item_group_title` and JSON `variant_dict`GroupedOne row, minimal price, children listed in `related_product_id` with `relationship_type=part_of_set`BundleOne row, minimal ("from") price for dynamic bundles, fixed price otherwiseContributing
------------

[](#contributing)

Found a bug, have a feature suggestion or just want to help in general? Contributions are very welcome! Check out the list of active issues or submit one yourself.

---

**Need help with agentic commerce for Magento?** Professional support, AEO audits and implementation at [angeo.dev](https://angeo.dev/). Check how your store looks to AI agents with the free scanner at [api.angeo.dev](https://api.angeo.dev/).

*Questions? Contact me at *

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance91

Actively maintained with recent releases

Popularity14

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~66 days

Total

5

Last Release

43d ago

Major Versions

1.0.3 → 2.0.02026-07-05

PHP version history (2 changes)1.0.1PHP &gt;=8.3

2.0.1PHP &gt;=8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/557748?v=4)[angeo](/maintainers/angeo)[@angeo](https://github.com/angeo)

---

Tags

acpchatgpt-shoppingmagentomagento2openaiproduct-feedopenaimagento2product feedproduct syncmagento moduleangeoai product feedecommerce feedopenai integrationai ecommercefeed generationsmart commerceagentic commerceaeochatgpt shopping

### Embed Badge

![Health badge](/badges/angeo-module-openai-product-feed/health.svg)

```
[![Health](https://phpackages.com/badges/angeo-module-openai-product-feed/health.svg)](https://phpackages.com/packages/angeo-module-openai-product-feed)
```

###  Alternatives

[mollie/magento2

Mollie Payment Module for Magento 2

1142.0M17](/packages/mollie-magento2)[smile/elasticsuite

Magento 2 merchandising and search engine built on ElasticSearch

8034.8M53](/packages/smile-elasticsuite)[buckaroo/magento2

Buckaroo Magento 2 extension

32426.0k8](/packages/buckaroo-magento2)[dotdigital/dotdigital-magento2-extension

Dotdigital for Magento 2

50406.2k23](/packages/dotdigital-dotdigital-magento2-extension)[run-as-root/magento2-prometheus-exporter

Magento2 Prometheus Exporter

69362.0k](/packages/run-as-root-magento2-prometheus-exporter)[angeo/module-llms-txt

Magento 2 module for AI Engine Optimization (AEO). Generates spec-compliant llms.txt and llms-full.txt per llmstxt.org standard, plus streaming JSONL for vector indexing. Multi-store, multi-website, CLI, cron, async admin UI, Page Builder-aware sanitization, customer-group pricing, atomic writes, ETag/Cache-Control, .md mirrors.

132.2k](/packages/angeo-module-llms-txt)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
