WP Manifestindependent plugin directory
manifest / ecommerce / wp-woo-discount-rules

WP Woo Discount Rules

Discount rules beyond plain coupons for WooCommerce, enforced exactly as the source store enforced them.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/jamesonrgrieve/wp-woo-discount-rules/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Discount rules beyond plain coupons for WooCommerce, enforced exactly as the source store enforced them.

A companion to wp-woo-idempotent-importer: the importer mirrors stores from Shopify, BigCommerce, Squarespace, Wix, Magento, Lightspeed, Ecwid, Etsy and Square into WooCommerce, and must enforce everything the source store enforced. Where WooCommerce can't hold a concern natively, a companion plugin like this one holds it, one plugin per concern.

Scope

  • Automatic (codeless) discounts and buy-X-get-Y.
  • Minimum quantity; per-customer and once-per-customer limits.
  • Shipping discounts and free shipping limited to products, methods or zones.
  • Capped and stepped discounts; customer-group and segment targeting; schedules.
  • Catalog price rules, tiered and bulk pricing.

Contract

  • A stable data model and a PHP API the importer writes into idempotently: an unchanged source causes zero writes.
  • Usable on its own as a WooCommerce plugin, with an admin UI to view and edit its records.
  • Requires WooCommerce; it does nothing until they are active.

Status

Scaffold: the plugin boots, checks its required plugins and runs the full quality gate. The features above are tracked on its Deck card (http://192.168.1.12/index.php/apps/deck/board/3/card/392).

Development

composer install   # also wires the pre-commit hook
composer check     # lint, format, PHPStan max, unit tests, audit, validate

License

AGPL-3.0-or-later.