Title: CartMagic – Dynamic Pricing &amp; Discounts for WooCommerce
Author: devexra
Published: <strong>May 7, 2026</strong>
Last modified: May 7, 2026

---

Search plugins

![](https://ps.w.org/cartmagic/assets/banner-772x250.png?rev=3525894)

![](https://ps.w.org/cartmagic/assets/icon.svg?rev=3525885)

# CartMagic – Dynamic Pricing & Discounts for WooCommerce

 By [devexra](https://profiles.wordpress.org/devexra/)

[Download](https://downloads.wordpress.org/plugin/cartmagic.0.0.3.zip)

 * [Details](https://wordpress.org/plugins/cartmagic/#description)
 * [Reviews](https://wordpress.org/plugins/cartmagic/#reviews)
 *  [Installation](https://wordpress.org/plugins/cartmagic/#installation)
 * [Development](https://wordpress.org/plugins/cartmagic/#developers)

 [Support](https://wordpress.org/support/plugin/cartmagic/)

## Description

**CartMagic** turns your WooCommerce store’s promotions into a managed, rule-based
system. Instead of stacking up dozens of single-use coupons, you define discount**
rules** — what triggers a discount, how big it is, when it applies — and CartMagic
evaluates them at the cart and checkout for every customer automatically.

The free version covers the everyday discount types most stores need:

 * **Percentage discount** — take 10%, 15%, 20% off the cart, with optional cap (
   e.g. “10% off, up to $50”).
 * **Fixed-amount discount** — flat dollar / euro / rupee amount off the cart.
 * **Free shipping rule** — give free shipping when the cart hits a threshold or
   matches a condition, without touching WooCommerce shipping zones.
 * **Cart conditions** — combine cart total, item count, and other cart-aware filters
   with AND / OR logic to decide when a rule fires.
 * **Modern admin** — a clean, fast React-based admin app inside WordPress. No 2010-
   era settings pages.
 * **REST API** — every rule is reachable through a versioned REST API at `/wp-json/
   cartmagic/v1/`, so you can manage rules from anywhere.
 * **HPOS compatible** — declares compatibility with WooCommerce High-Performance
   Order Storage, so it’s safe on modern WooCommerce installs.
 * **Translation-ready** — text domain `cartmagic`, `.pot` file shipped in `/languages/`.
 * **Privacy-respecting** — rules and usage data live in your own database. No phone-
   home, no third-party tracking by default.

#### Why CartMagic?

WooCommerce coupons are great for one-off codes. They are not great when you want
to:

 * Run a “10% off everything” sale store-wide for a weekend, without sending every
   customer a code.
 * Offer free shipping above a threshold, without hand-editing shipping zones.
 * Apply different discount logic to different cart conditions in a single, reviewable
   place.

CartMagic gives you a **rules engine** with a clear admin, so promotions become 
configurable instead of hard-coded.

#### Free vs Pro

The free plugin (this listing) ships everything you need for standard cart-level
discounting:

 * Percentage discount
 * Fixed-amount discount
 * Free shipping rule
 * Cart total / item count conditions

The optional **CartMagic Pro** add-on layers on advanced promotion types and reporting:

 * **BOGO** — buy X get Y configurations
 * **Bulk / tiered pricing** — quantity-based price tiers
 * **Scheduled campaigns** — start / end dates and time windows
 * **Customer segments** — role-based, first-order, and other segment conditions
 * **Priority & stacking control** — fine-grained rule ordering and combination 
   rules
 * **Usage analytics** — per-rule reporting and engagement metrics
 * **White-label admin** — rebrand the admin panel for client work

The free plugin is fully usable without Pro. Pro is opt-in.

#### Built for developers

CartMagic exposes filters and actions so you can extend it without forking:

 * `cartmagic_evaluate_condition` — short-circuit or override condition evaluation.
 * `cartmagic_matching_rules` — filter the list of rules that match the current 
   cart before discounts apply.
 * `cartmagic_register_rest_routes` — hook in your own REST endpoints under `cartmagic/
   v1`.
 * `cartmagic_pro_features` — used by the Pro add-on to register feature unlocks.

REST endpoints (admin-authenticated) include:

 * `GET / POST / PUT / DELETE /wp-json/cartmagic/v1/rules`
 * `GET / POST /wp-json/cartmagic/v1/settings`
 * `GET /wp-json/cartmagic/v1/products/search` and `/categories/search`
 * `GET /wp-json/cartmagic/v1/analytics/...` (reads only; full reporting requires
   Pro)

### Privacy

This plugin stores discount rule definitions and aggregate usage data in your WordPress
database. It does not transmit customer, order, or cart data to external services
by default. Review your hosting and WooCommerce privacy documentation for site-wide
compliance, and disclose the cookies and data handling practices of any payment /
shipping / analytics integrations you have enabled separately.

## Screenshots

 * [[
 * Dashboard — overview of active discount rules and usage at a glance.
 * [[
 * Rule editor — configure percentage, fixed, BOGO (Pro), bulk (Pro), or free-shipping
   rules.
 * [[
 * Conditions — combine cart, product, category and customer filters with AND / 
   OR logic.
 * [[
 * Settings — control engine behavior, visibility, and rule priority.

## Installation

#### Standard install

 1. In your WordPress admin, go to **Plugins  Add New**.
 2. Search for **CartMagic** and click **Install Now**, then **Activate**.
 3. Make sure **WooCommerce** is also installed and active. CartMagic refuses to load
    its storefront logic without WooCommerce.
 4. In the admin sidebar, open **CartMagic  Discount Rules**.
 5. Click **Add Rule**, choose a discount type, set conditions, and save.

#### Manual install

 1. Download the plugin ZIP from this page.
 2. In your WordPress admin, go to **Plugins  Add New  Upload Plugin** and upload the
    ZIP.
 3. Activate the plugin and continue from step 3 of the standard install above.

#### After install

 * Go to **CartMagic  Dashboard** to see active rules at a glance.
 * Visit **CartMagic  Settings** to configure global engine behavior.
 * Test a rule by adding products to the cart on the storefront and confirming the
   discount line shows on the cart and checkout.

## FAQ

### Does CartMagic require WooCommerce?

Yes. CartMagic is a WooCommerce extension. It will not load its storefront discount
logic until WooCommerce is active. The plugin header declares `Requires Plugins:
woocommerce` so WordPress 6.5+ will warn you if WooCommerce is missing.

### Is CartMagic compatible with WooCommerce HPOS (High-Performance Order Storage)?

Yes. CartMagic declares compatibility with WooCommerce HPOS / custom order tables,
so it is safe to enable HPOS on a store running CartMagic.

### Does it work alongside WooCommerce coupons?

Yes. CartMagic discount rules are applied separately from WooCommerce’s built-in
coupon system. You can run both — for example, a CartMagic rule for “free shipping
above $100” alongside a WooCommerce coupon for a flash sale code. Rule priority 
and stacking interactions across systems are handled in CartMagic Pro.

### Where are discount rules stored?

Rules and rule-usage records are stored in two custom database tables created on
plugin activation:

 * `{prefix}_cartmagic_discount_rules` — your rule definitions
 * `{prefix}_cartmagic_discount_usage` — usage tracking

When you delete the plugin from **Plugins  Delete**, both tables and the plugin’s
options are removed via the standard WordPress uninstall flow. Deactivating the 
plugin does **not** delete data, so you can safely deactivate to troubleshoot.

### Will CartMagic slow down my store?

CartMagic loads the rules engine only when WooCommerce loads, evaluates rules per-
cart (not per-page), and caches active rule definitions in a transient to avoid 
repeated database hits. For most stores, the per-request overhead is negligible.
If you operate a high-traffic store with hundreds of active rules, the Pro version
adds priority controls and additional caching primitives.

### Does CartMagic affect performance on the storefront for non-discounted carts?

The engine returns early when no rule conditions match, so a typical no-discount
checkout is essentially the same cost as a stock WooCommerce checkout plus one cached
lookup.

### Is CartMagic translation-ready?

Yes. The text domain is `cartmagic` and a `.pot` file ships in the plugin’s `/languages/`
folder. You can translate strings with Loco Translate, Poedit, or by dropping a 
translation into `wp-content/languages/plugins/`.

### Is it compatible with WPML / Polylang / TranslatePress?

CartMagic does not store translatable content per-locale by default — rule labels
are stored as-is. If your store is multilingual, register CartMagic’s strings with
your translation plugin’s “string translation” feature. Currency / locale-specific
amounts are evaluated against the cart’s actual currency at checkout.

### Does it work on multisite?

Yes. CartMagic activates per-site (network activation also supported). Each site
has its own rules tables. There is no cross-site rule sharing in the free version.

### How does CartMagic handle user privacy?

The free plugin stores rule definitions and aggregate usage counts in your own database.
It does **not** transmit customer data, order data, or cart data to any external
service by default. Pro analytics also stay on your server. See the **Privacy** 
section below.

### I activated the plugin but I don’t see the menu — what now?

Two common causes:

 1. **WooCommerce isn’t active.** CartMagic only registers its admin menu when WooCommerce
    is loaded. Activate WooCommerce first.
 2. **You’re not a user with `manage_woocommerce` capability.** The CartMagic menu 
    shows for shop managers and administrators by default.

If both are correct and the menu still doesn’t appear, deactivate and reactivate
the plugin to retrigger admin hook registration.

### Can I import / export rules between sites?

Rule import / export is on the roadmap. For now, you can copy rules row-by-row from
the source database into the destination database (or use a database migration tool
like WP Migrate). The REST API can also be used to script bulk creation against `/
wp-json/cartmagic/v1/rules`.

### How do I get support?

 * For free plugin support, use the WordPress.org support forum on this plugin page.
 * For Pro license holders, please use the priority support channel referenced in
   your purchase email.
 * For bug reports with reproducible test cases, please include WordPress version,
   WooCommerce version, PHP version, and the rule configuration that triggers the
   issue.

### Where can I learn more about CartMagic Pro?

Visit the **CartMagic  Upgrade to Pro** menu item inside your WordPress admin, or
go to the project website linked in the **Plugin URI**.

### How do I uninstall CartMagic completely?

Deactivate the plugin from **Plugins**, then click **Delete**. WordPress will run`
uninstall.php`, which drops both CartMagic database tables, removes plugin options,
and clears scheduled cron events. There is no leftover data.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“CartMagic – Dynamic Pricing & Discounts for WooCommerce” is open source software.
The following people have contributed to this plugin.

Contributors

 *   [ devexra ](https://profiles.wordpress.org/devexra/)

[Translate “CartMagic – Dynamic Pricing & Discounts for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/cartmagic)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/cartmagic/), check 
out the [SVN repository](https://plugins.svn.wordpress.org/cartmagic/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/cartmagic/) by [RSS](https://plugins.trac.wordpress.org/log/cartmagic/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.0.3

 * Readme: trimmed the short description to satisfy WordPress.org’s 150-character
   limit (was being truncated on the listing page).
 * Readme: streamlined documentation and section structure.
 * Code quality: resolved all PHPCS / WordPress Coding Standards violations (associative
   array layout in the feature catalog, statement alignment).
 * CI: Code Analysis workflow now saves the full PHPCS report and a checkstyle XML
   as a downloadable workflow artifact, even when checks fail — so PR reviewers 
   can see violations without re-running locally.
 * CI: the asset/readme update workflow is now gated by file paths (`readme.txt`,`.
   wordpress-org/**`), so PHP-only pushes no longer trigger spurious “other files
   modified” failures.
 * No database schema changes; safe to upgrade.

#### 0.0.2

 * Readme: significantly expanded description, accurate free vs Pro feature breakdown,
   14 FAQ entries, developer section with hooks / filters / REST endpoints.
 * Banner: corrected feature pills to reflect the actual free-tier feature set (
   no longer advertises Pro-only BOGO / Bulk pricing as free).
 * Admin: added Documentation / Support / Reviews quick links to the Plugins screen
   row meta.
 * CI: bumped Node.js to 20 to satisfy the Tailwind v4 native-binding engine requirement;
   regenerated package-lock.json with cross-platform optional-dep variants so deploys
   work from any host platform.
 * No breaking changes. Database schema unchanged.

#### 0.0.1

 * Initial submission to WordPress.org.

## Meta

 *  Version **0.0.3**
 *  Last updated **13 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **6.7.5**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [discount](https://wordpress.org/plugins/tags/discount/)[dynamic pricing](https://wordpress.org/plugins/tags/dynamic-pricing/)
   [pricing rules](https://wordpress.org/plugins/tags/pricing-rules/)[sale](https://wordpress.org/plugins/tags/sale/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/cartmagic/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/cartmagic/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/cartmagic/reviews/)

## Contributors

 *   [ devexra ](https://profiles.wordpress.org/devexra/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/cartmagic/)