xpay✦ Commerce
Directory
WooCommerce plugins
CartMagic – Dynamic Pricing & Discounts for WooCommerce
CartMagic – Dynamic Pricing & Discounts for WooCommerce
Smart discount rules for WooCommerce: percentage, fixed-amount, free shipping, and cart-aware conditions. No coupon spam needed.
Will this break my store?
What the WordPress.org registry says about keeping CartMagic – Dynamic Pricing & Discounts for WooCommerce running.
Tested to 7.0.4 — 1 branch behind 7.1
Tested against the WordPress branch in use today.4 months ago
7.4
Your host must be running at least this version.6.0
woocommerce
These must be installed and active first.1
A single maintainer. Worth knowing if the plugin is load-bearing for your store.Maintenance & trust
Scored on how CartMagic – Dynamic Pricing & Discounts for WooCommerce is looked after — not on how many stores run it.
Maintenance
35 / 35WordPress compatibility
20 / 20Support responsiveness
Not enough dataMerchant satisfaction
Not enough dataListing transparency
10 / 10Ratings
No one has rated this plugin on WordPress.org yet. That is a statement about the ratings page, not about the plugin — plenty of well-kept plugins never collect them.
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,.potfile 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 undercartmagic/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/rulesGET / POST /wp-json/cartmagic/v1/settingsGET /wp-json/cartmagic/v1/products/searchand/categories/searchGET /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.
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.
Yes. CartMagic declares compatibility with WooCommerce HPOS / custom order tables, so it is safe to enable HPOS on a store running CartMagic.
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.
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.
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.
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.
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/.
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.
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.
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.
Two common causes:
- WooCommerce isn’t active. CartMagic only registers its admin menu when WooCommerce is loaded. Activate WooCommerce first.
- You’re not a user with
manage_woocommercecapability. 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.
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.
- 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.
Visit the CartMagic → Upgrade to Pro menu item inside your WordPress admin, or go to the project website linked in the Plugin URI.
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.
Categories
Plugin details
Tags on WordPress.org
