> For the complete documentation index, see [llms.txt](https://docs.fact-finder.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fact-finder.com/magento/sdk-v5.x/data-export.md).

# Data export

Feeds are built the same way for every integration method. Choose the delivery method that suits your project.

## Feed types

The module exports these feed types:

* **Product** — produces search results for your shop.
* **CMS** — provides a separate search source or enriches suggestions.
* **Category** — adds category URLs to suggest items.

## Integration methods

### FTP export

This method generates a feed and uploads it to an FTP server. Configure FTP first in [Data Transfer Settings](https://github.com/FACT-Finder-Web-Components/magento2-module/tree/release/5.x#data-transfer-settings). Then generate and upload the file.

[![Generate feed](https://github.com/FACT-Finder-Web-Components/magento2-module/raw/release/5.x/docs/assets/generate-feed.png)](https://github.com/FACT-Finder-Web-Components/magento2-module/blob/release/5.x/docs/assets/generate-feed.png)

Use the button for ad-hoc exports. In production, enable **Generate Export File(s) automatically** to run an export daily at 01:00 server time.

You can define a custom cron expression. This runs under the Magento supervisor. Configure the system Magento cron first. See the [Magento cron guide](https://devdocs.magento.com/guides/v2.3/config-guide/cli/config-cli-subcommands-cron.html).

[![Cron Configuration](https://github.com/FACT-Finder-Web-Components/magento2-module/raw/release/5.x/docs/assets/cron-configuration_en.jpg)](https://github.com/FACT-Finder-Web-Components/magento2-module/blob/release/5.x/docs/assets/cron-configuration_en.jpg)

### HTTP export

FACT-Finder can periodically download a feed from a URL. Protect this URL with Basic Auth credentials configured in **Data Transfer Settings**. Without protection, anyone can download the feed.

```
https://YOUR_SHOP_URL/factfinder/export/product/store/YOUR_STORE_ID
```

Without a store ID, the module uses the default store. Add this URL in the FACT-Finder UI.

[![FACT-Finder Import settings](https://github.com/FACT-Finder-Web-Components/magento2-module/raw/release/5.x/docs/assets/import-settings.png)](https://github.com/FACT-Finder-Web-Components/magento2-module/blob/release/5.x/docs/assets/import-settings.png)

## Console command

Use the Symfony console command to test feed generation or trigger an export without Magento cron:

```
factfinder:export [TYPE]
```

You can add this command to your crontab.

* `type` — required. Sets the `FeedFactory` data type. Default values are `product` and `cms`.
* `store` — optional. Defines the source store.
* `skip-ftp-upload` — optional. Skips FTP upload.
* `skip-push-import` — optional. Skips the import trigger.

## Running export with a worker

Since version 5.5.0, a worker-based export reduces memory usage for large or complex catalogs. Run it only from the CLI:

```
php [MAGENTO_ROOT]/bin/magento factfinder:worker-export
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.fact-finder.com/magento/sdk-v5.x/data-export.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
