Title: jyri363 Bonus Pricing
Author: jyri363
Published: <strong>14 di Lui dal 2026</strong>
Last modified: 12 di Otubar dal 2026

---

Search plugins

![](https://ps.w.org/jyri363-bonus-pricing/assets/banner-772x250.png?rev=3609724)

![](https://ps.w.org/jyri363-bonus-pricing/assets/icon-256x256.png?rev=3607508)

# jyri363 Bonus Pricing

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

[Download](https://downloads.wordpress.org/plugin/jyri363-bonus-pricing.1.0.3.zip)

 * [Details](https://fur.wordpress.org/plugins/jyri363-bonus-pricing/#description)
 * [Reviews](https://fur.wordpress.org/plugins/jyri363-bonus-pricing/#reviews)
 *  [Installation](https://fur.wordpress.org/plugins/jyri363-bonus-pricing/#installation)
 * [Development](https://fur.wordpress.org/plugins/jyri363-bonus-pricing/#developers)

 [Support](https://wordpress.org/support/plugin/jyri363-bonus-pricing/)

## Description

**[View the live demo shop](https://demo.glasspipers.eu/pood/)** — change a product’s
quantity to try live unit prices and active pricing tiers. The demo also includes
Pro minimum quantities and quantity steps.

jyri363 Bonus Pricing provides the free core pricing tools needed by many WooCommerce
stores. For advanced pricing workflows, [jyri363 Bonus Pricing Pro](https://glasspipers.eu/toode/jyri363-bonus-pricing-pro/)
is available separately and extends the Free edition while Free continues to work
independently.

Core Free features:

 * product-level quantity pricing
 * loyalty pricing based on the customer spending history
 * optional cart subtotal discount tiers
 * live unit-price feedback on the product page
 * support for simple products and variable products with variation-level quantity
   rules
 * WPML-ready custom strings for frontend labels

Version 0.5 establishes the Free plugin as a stable standalone foundation. It does
not lock existing features behind upgrade prompts, and Pro is implemented as a separate
add-on plugin.

Typical use cases:

 * 100–299 pcs = one unit price, 300+ pcs = another unit price
 * a repeat customer gets an automatic loyalty discount
 * an extra discount is shown and applied when the cart subtotal reaches a target
   amount

## Installation

 1. Upload the plugin folder to the `/wp-content/plugins/` directory, or install the
    ZIP from **Plugins  Add New  Upload Plugin**.
 2. Activate the plugin through the **Plugins** screen in WordPress.
 3. Make sure WooCommerce is installed and active.
 4. Open a product in WooCommerce and use the new **Pricing logic** tab inside **Product
    data**.
 5. Configure loyalty settings under **WooCommerce  Bonus Prices**.

## FAQ

### Does this work with variable products?

Yes. Parent-level quantity rules can act as fallback rules, and each variation can
also use its own quantity pricing rules.

### What PHP version is required?

The Free plugin requires PHP 8.3 or newer. Current WooCommerce releases may require
a newer PHP version, so stores should follow the requirements of the WooCommerce
version they use.

### Does it work with ThemeComplete Extra Product Options (EPO)?

The product-page live-pricing script includes EPO-aware handling, including EPO 
price-update events and totals containers. EPO is a separately distributed plugin,
so stores using advanced option pricing should verify their exact EPO configuration
after major WooCommerce or EPO updates.

### Does the plugin remove its data on uninstall?

Yes. The plugin includes an `uninstall.php` file that removes its options, post 
meta, order-item meta, and transient cache entries when the plugin is deleted from
WordPress.

### Is WPML required?

No. WPML integration is optional. The plugin works without WPML.

### Is there a Pro version?

Yes. [jyri363 Bonus Pricing Pro](https://glasspipers.eu/toode/jyri363-bonus-pricing-pro/)
is available separately. The Free plugin works independently and does not require
Pro.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“jyri363 Bonus Pricing” is open source software. The following people have contributed
to this plugin.

Contributors

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

[Translate “jyri363 Bonus Pricing” into your language.](https://translate.wordpress.org/projects/wp-plugins/jyri363-bonus-pricing)

### Interested in development?

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

## Changelog

#### 1.0.3

 * Put the live demo link first in the description and add a demo action link to
   the installed plugins list.
 * Reject non-finite extension-filtered prices and malformed pricing metadata.
 * Validate variation products and parent edit permissions before saving rules through
   WooCommerce product CRUD.

#### 1.0.2

 * Resolve the queried product when live pricing assets load before the theme initializes
   the global product.
 * Update the active quantity tier and current unit price even without a summary
   price element.
 * Handle quantity inputs replaced dynamically by themes and extensions.
 * Align initial live pricing with the Pro minimum quantity filter.

#### 1.0.1

 * Added the donation link and raised the minimum PHP version to 8.3.

#### 0.6

 * Further security hardening for malformed admin inputs, saved pricing rules, and
   extension-filtered settings.
 * Rejects non-finite or otherwise unsafe numeric pricing values before calculations.
 * Keeps the WordPress 7.1, WooCommerce 11.0, HPOS, EPO-aware frontend handling,
   and separate Pro-edition link introduced in the audited Free branch.
 * Revalidated PHP 8.x syntax and runtime safety without changing the existing Free
   feature set.

#### 0.5.1

 * Security hardening: process only the expected settings fields instead of the 
   complete POST payload.
 * Added strict scalar/type validation for admin inputs, saved pricing rules, and
   filtered settings to avoid malformed-value warnings or unsafe runtime values.
 * Reject non-finite numeric values and cap discount percentages safely before pricing
   calculations.
 * Added stricter validation for percentage values and extension-filtered pricing
   results.
 * Hardened frontend HTML construction for translated labels, units, hints, and 
   currency symbols.
 * Replaced Number.isFinite usage to preserve compatibility with older JavaScript
   environments supported by the Free branch.
 * Updated compatibility metadata for WordPress 7.1 and WooCommerce 11.0.
 * Reviewed HPOS usage and current WooCommerce 11.0 product-editor changes; the 
   plugin uses supported classic product APIs and WooCommerce order APIs.
 * Reviewed the existing ThemeComplete EPO integration against the current EPO 7.6.1
   release notes and retained its EPO-aware frontend update handling.
 * Moved the separate Pro edition link into the opening description while keeping
   Free fully functional on its own.

#### 0.5.0

 * Established the current feature set as the standalone Free edition.
 * Added the official WooCommerce plugin dependency header.
 * Declared compatibility with WooCommerce High-Performance Order Storage (HPOS).
 * Added extension hooks for product settings, effective variation settings, global
   settings, final price calculations, and completed plugin initialization.
 * Kept existing quantity pricing, live pricing, loyalty discounts, cart discount
   tiers, variable-product support, and WPML-ready strings available in Free.
 * Updated package and translation project versions to 0.5.0 and corrected the POT
   header metadata.
 * Added a clear link to the separately available jyri363 Bonus Pricing Pro plugin.

#### 0.4.27

 * Updated all internal function, class, constant, option, shortcode, script and
   CSS prefixes to use the unique jyri363bp prefix.
 * Renamed the cart discount shortcode to jyri363bp_cart_discount_note.

#### 0.4.26

 * Renamed the plugin to jyri363 Bonus Pricing and changed the slug to jyri363-bonus-
   pricing for clearer ownership and distinctiveness.
 * Updated contributors to match the submitting WordPress.org account.
 * Removed the external Plugin URI/Donate link from the package.

#### 0.4.25

 * Renamed the plugin to jyri363 Bonus Pricing to comply with WordPress.org trademark
   and permalink restrictions.
 * Updated slug, main plugin file name, text domain, and language file names.

#### 0.4.24

 * Renamed the public plugin title to jyri363 Bonus Pricing for WordPress.org naming
   compatibility.
 * Updated the plugin folder, main file and text domain to jyri363-bonus-pricing.
 * Removed manual load_plugin_textdomain usage to follow current WordPress.org translation
   handling.

#### 0.4.23

 * Updated Tested up to to WordPress 7.0 for Plugin Check compatibility.
 * Removed the manual load_plugin_textdomain call because WordPress loads plugin
   translations automatically since WordPress 4.6.

#### 0.4.22

 * Fixed remaining Plugin Check errors for missing translator comments.
 * Escaped cart/order discount note output with wp_kses_post().

#### 0.4.21

 * Hardened admin escaping and sanitization in a few product and table-rendering
   paths.
 * Added translator comments for placeholder strings.
 * Reduced Plugin Check warnings around uninstall cleanup and product-meta saving.

#### 0.4.20

 * Added a global quantity table position setting under WooCommerce  Bonus Prices
   Frontend behaviour.
 * Changed the default quantity table position to below the add-to-cart form.
 * Added product-meta nonce and capability checks for a cleaner WordPress.org pre-
   submit pass.
 * Added a PHP 8.1 tested note while keeping the declared minimum PHP version at
   7.3.

#### 0.4.19

 * Small WordPress.org pre-submit cleanup release.
 * Bumped package version to 0.4.19.

#### 0.4.18

 * Lowered the declared minimum PHP version to 7.3 after compatibility audit.
 * Reworked frontend and admin JavaScript for older browser compatibility by removing
   const/let and NodeList.forEach dependencies.
 * Fixed quantity pricing active-tier rendering so it works consistently when live
   JS pricing is enabled, even if plugin CSS is disabled.
 * Renamed the localized product-page JS object to jyri363bpProductPage for cleaner
   plugin branding.

#### 0.4.16

 * Renamed the public plugin title to jyri363 Bonus Pricing for clearer WooCommerce
   positioning.

#### 0.4.13

 * Removed all remaining legacy compatibility references from the public branch.
 * Replaced custom admin translation helper calls with standard WordPress translation
   functions.
 * Moved Estonian and Finnish translations out of source code and into language 
   files.
 * Cleaned helper and class filenames to use the plugin prefix consistently.

#### 0.4.12

 * Added `uninstall.php` cleanup routine.
 * Added WordPress.org format `readme.txt`.
 * Added GPL license file.
 * Added textdomain loading and a starter POT file.
 * Replaced `current_time( 'timestamp' )` usage in loyalty calculations.
 * Added transient caching for loyalty spend and loyalty rate calculations.
 * Split the large helper file into smaller helper modules.

#### 0.4.11

 * Initial renamed package cleanup and branding refresh.

## Meta

 *  Version **1.0.3**
 *  Last updated **6 dîs ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.2 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 8.3 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/jyri363-bonus-pricing/)
 * Tags
 * [discounts](https://fur.wordpress.org/plugins/tags/discounts/)[ecommerce](https://fur.wordpress.org/plugins/tags/ecommerce/)
   [Loyalty](https://fur.wordpress.org/plugins/tags/loyalty/)[quantity pricing](https://fur.wordpress.org/plugins/tags/quantity-pricing/)
   [tiered pricing](https://fur.wordpress.org/plugins/tags/tiered-pricing/)
 *  [Advanced View](https://fur.wordpress.org/plugins/jyri363-bonus-pricing/advanced/)

## Ratings

No reviews have been submitted yet.

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

[See all reviews](https://wordpress.org/support/plugin/jyri363-bonus-pricing/reviews/)

## Contributors

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

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/jyri363-bonus-pricing/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://glasspipers.eu/toode/toeta-bonus-pricingu-arendust/)