Skip to main content
Version: 2.0.0

Seeder

Seeder is an admin/developer utility for yStore. It has two independent jobs:

  • Generate realistic demo data — customers, products, orders, coupons, gift cards, catalog rules, and shipping/payment methods — from reusable, named profiles that can be run on demand, via a CLI wizard, or on a cron schedule.
  • Import real data from a CSV, JSON, or XML file (or a remote URL) into products, entries, categories, or customers, using a saved import profile with column-to-field mapping.

There is no storefront-facing behavior — Seeder only writes data that the store plugin and Craft itself then serve normally to customers.

Key features

  • Named, reusable generator profiles covering customers, products (variants, pricing, stock, weight, tier prices), orders, coupons, gift cards, catalog rules, and wishlist items, each with its own purge/reset options.
  • Optional cron schedule per profile plus auto-reset so a profile can refresh its own data unattended (staging refresh, demo environments).
  • An import wizard (Details → Source → Mapping → Options → Review) for CSV/JSON/XML files or remote URLs, targeting products, entries, categories, or customers, with column detection, row preview, and per-field transformers.
  • Import logs with per-row status (imported/updated/skipped/failed) and optional debug tracing.
  • Console commands for every generator and import action, so profiles can be run from deploy scripts or scheduled tasks outside of Craft's own cron.
  • License activation panel, shared with the rest of the yStore ecosystem.

Requirements

  • Craft CMS 5, PHP 8.1+.
  • The yui/craft-plugin (yStore) package, since generator profiles create customers, products, and orders through the store's own services.
  • Console access to run php craft commands for CLI generation, cron runs, and CLI imports.

Installation

Install through Composer, using the credentials granted by your yStore license:

composer require yui/seeder

Then enable Seeder from Settings → Plugins in the Craft control panel and continue with Settings.

Use cases

See Use Cases for building a generator profile, running it from the CP or CLI, scheduling it with cron, and setting up a CSV/JSON/XML import profile.

Developer notes

See Developer / API for the console commands (php craft seeder/..., php craft seeder-cron/..., php craft seeder-import/...), the CP routes, and the service classes (profiles, importProfiles, importer, importSource, runLog, importLog) exposed on the plugin instance.