Skip to content

Plugins

StephanAltmann85 edited this page Oct 28, 2026 · 2 revisions

JsConsumer

The JsConsumer plugin provides an alternative way to process messages from the product_update queue. It periodically triggers a background task via Ajax to process queued messages.

However, using a dedicated message consumer managed by Supervisor or Systemd is recommended for production environments.

For setup instructions, see the [YAP Setup Guide](https://github.com/yetAnotherPim/yap/wiki/Setup).

Scheduler

The Scheduler plugin provides scheduled task execution for YAP and helps maintain data consistency.

Automated Data Cleansing

The plugin automatically cleans up field values and translations that are no longer associated with the corresponding product type. This helps maintain data consistency when product type configurations change and prevents obsolete field data from accumulating.

System Status Check

The plugin provides a SystemStatus check to help identify issues with scheduled task execution.

Configuration

The Scheduler plugin implements a Symfony Scheduler task. To execute scheduled tasks, a Messenger consumer for the scheduler_default transport must be running.

Start the consumer manually with:

php bin/console messenger:consume scheduler_default --time-limit=3600

For production environments, configure the consumer to run as a background process using a process manager.

Supervisor

See the [Symfony Messenger Supervisor configuration](https://symfony.com/doc/current/messenger.html#messenger-supervisor).

Command:

php /path/to/your/app/bin/console messenger:consume scheduler_default --time-limit=3600

Systemd

See the [Symfony Messenger Systemd configuration](https://symfony.com/doc/current/messenger.html#systemd-configuration).

Set ExecStart in the service unit to:

ExecStart=php /path/to/your/app/bin/console messenger:consume scheduler_default --time-limit=3600

Plugins and Features in Development

The following plugins and features are planned or under development. Availability and implementation details may change.

Product Feeds

  • Feed Configuration: Configure external storage settings, with credentials and sensitive configuration data stored encrypted in the database.

Messenger Plugin

  • Entity Update Events: Publish entity changes as JSON messages, including the corresponding change set.
  • Receive Updates: Receive and process entity update messages from external systems.

Infrastructure and Performance

  • Elasticsearch Integration: Search and indexing capabilities powered by Elasticsearch.
  • Redis Integration: Redis support for caching and other infrastructure-related use cases.
  • External Storage: Store files and other assets outside the local application storage.

Marketplace Integrations

  • Specific Marketplace Integrations: Dedicated integrations for individual marketplaces to support their specific product data requirements.

Stock Management

  • Stock History: Track inventory changes using references to the events or operations that caused them, providing an inventory change history.

Import and Export

  • Data Import: Import product data from external sources.
  • Data Export: Export product data to external systems and formats.

Associated Entities

  • Related Data Entities: Support additional entities associated with products, such as manufacturers.