=== Inputo - Name your Price for WooCommerce ===
Contributors: codewoogeek, heyvicky, propluginslab
Tags: name your price, pay what you want, donations, flexible pricing, woocommerce
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.3.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Let customers choose what they pay. Set a minimum, a suggested and a generous price, and guide shoppers with a friendly price meter.

== Description ==

Inputo turns any WooCommerce product into a pay what you want product. You decide the lowest amount you accept and the amount you suggest, and your customers choose what they pay. It works for digital downloads, donations, courses, artwork, tickets, tips and anything else where a flexible price makes sense.

* **Live demo:** [Free version](https://demo.propluginslab.io/inputo-name-your-price-for-woocommerce-free) | [Pro version](https://demo.propluginslab.io/inputo-name-your-price-for-woocommerce)
* **Documentation:** [Free version](https://docs.propluginslab.io/inputo-name-your-price-for-woocommerce-free) | [Pro version](https://docs.propluginslab.io/inputo-name-your-price-for-woocommerce)
* **Support:** [propluginslab.io/support](https://propluginslab.io/support)

= What makes it different =

* **A price guide, not just a box.** Every product has a minimum, a suggested, a generous and an optional maximum amount. Type them per product, or let them be worked out from the regular price with shop wide percentages.
* **A price meter that encourages.** As the customer types, a bar fills and a short message thanks them, with three levels you name yourself: low, fair and generous.
* **Works with variable products.** Switch a named price on for some variations and keep fixed prices on others.
* **Reads any number format.** Customers can type 12.50, 12,50 or 1.250,00 and it is understood.
* **Correct with tax.** The amount a customer types is read the way your shop shows prices, so the cart always matches what they typed.
* **Checked on the server, every time.** Amounts are validated in the browser for a friendly form, and again on the server when the product is added, whenever the cart is checked, and before checkout. A named price product can never reach an order without a valid amount.
* **Live preview.** Every setting that changes the price box updates a preview on the settings screen as you type.
* **Documentation built in.** A Documentation screen inside the plugin explains every option with examples.

= Features =

* Named prices for simple products and for individual variations
* Minimum, suggested, generous and maximum amounts per product or per variation
* Shop wide default percentages of the regular price
* Products with no regular price at all
* Optional free orders, only when you set a minimum of exactly zero
* Plus and minus buttons with a step you choose, and arrow key support
* Starting value: empty, the suggested price, or the minimum
* Price meter with your own level names and messages
* Card or minimal style, and your own accent colour
* Choice of price wording on product pages and in shop lists
* Shop list buttons that lead to the product page with your own wording
* Your own Add to cart button text on named price product pages
* Filter the admin product list to named price or fixed price products
* A Named price column in the admin product list with each product's minimum, suggested and maximum amounts
* The chosen price shown under the item in the cart, optional
* Named and suggested price recorded on every order line, and shown on the order screen
* Order again brings back the same amount
* Block themes: works in the Add to Cart with Options block, variable products included
* Block cart and checkout, classic cart and checkout, and High Performance Order Storage
* Store API support with a clear error when an amount is missing
* Theme template override and CSS custom properties
* Accessible: labelled field, screen reader announcements, reduced motion support
* Translation ready

= Privacy =

Inputo makes no requests to external services, loads nothing from third party servers, and collects no data about you or your customers. The only data it stores is its settings, the amounts you set on products, and the amount a customer chose on each order line.

= Pro version =

[Inputo Pro](https://propluginslab.io/shop/plugins/pro-plugins/inputo-name-your-price-for-woocommerce/) is a separate plugin from ProPluginsLab that includes everything in this free plugin and adds:

* Quick amount buttons, as shares of the suggested price or fixed amounts, and a price slider
* Rules that switch named price on for whole categories or tags, each with its own percentages
* Access by login or customer role, with a message for everyone else
* Wording per product, for the field label, suggested line and meter messages
* A celebration with confetti and a thank you badge, drawn locally
* The average real customers paid, shown once a product has enough orders
* Reports with a chart, top products and CSV export, net of refunds and per currency, plus settings import and export and bulk actions
* WooCommerce Subscriptions support, currency switcher support, and rules and products with start and end dates
* A shortcode and a block that place the price box on any page, and a price box per item in grouped products

This free plugin is complete on its own and nothing in it is locked or limited.

== External services ==

This plugin does not connect to any external service. It makes no remote requests, loads no scripts, styles, fonts or images from other servers, and sends no data anywhere. The links to propluginslab.io in this readme and on the plugin's own screens are ordinary links that are only followed when you click them.

== More plugins from ProPluginsLab ==

Free on WordPress.org:

* [Back In Stock Notifier for WooCommerce](https://wordpress.org/plugins/back-in-stock-notifier-for-woocommerce/) - Waitlist and restock email alerts for out of stock products.
* [Recovero - Cart Recovery for WooCommerce](https://wordpress.org/plugins/recovero-cart-recovery-for-woocommerce/) - Recover abandoned carts with automated emails.
* [Anticipo - Pre-Orders for WooCommerce](https://wordpress.org/plugins/anticipo-pre-orders-for-woocommerce/) - Take pre-orders before a product launches.
* [Affireo - Affiliates for WooCommerce](https://wordpress.org/plugins/affireo-affiliates-for-woocommerce/) - Run an affiliate and referral program.
* [Storefold - Multivendor Marketplace for WooCommerce](https://wordpress.org/plugins/storefold-multivendor-for-woocommerce/) - Turn your store into a multivendor marketplace.
* [Dispatchio - Shipment Tracking for WooCommerce](https://wordpress.org/plugins/dispatchio-shipment-tracking-for-woocommerce/) - Add tracking numbers and shipment updates to orders.
* [Presentero - Gift Cards for WooCommerce](https://wordpress.org/plugins/presentero-gift-cards-for-woocommerce/) - Sell and redeem digital gift cards.
* [Kitero - Product Configurator for WooCommerce](https://wordpress.org/plugins/kitero-product-configurator-for-woocommerce/) - Build composite products and kits.
* [Plusero - Extra Fees for WooCommerce](https://wordpress.org/plugins/plusero-extra-fees-for-woocommerce/) - Add conditional checkout fees and surcharges.
* [Mercenza - B2B for WooCommerce](https://wordpress.org/plugins/mercenza-b2b-for-woocommerce/) - Sell wholesale with customer groups, wholesale prices and trade accounts.
* [Visuaro - Product Designer for WooCommerce](https://wordpress.org/plugins/visuaro-product-designer-for-woocommerce/) - Let customers design custom products in the browser.
* [Christmas Snow - Festive Snowfall Effect](https://wordpress.org/plugins/christmas-snow-festive-snowfall-effect/) - Add a lightweight snowfall effect to any site.

Pro plugins at [propluginslab.io](https://propluginslab.io/product-category/pro-plugins/):

* [Recovero Pro](https://propluginslab.io/shop/plugins/pro-plugins/recovero-cart-recovery-for-woocommerce/)
* [Anticipo Pro](https://propluginslab.io/shop/plugins/pro-plugins/anticipo-pre-orders-for-woocommerce/)
* [Affireo Pro](https://propluginslab.io/shop/plugins/pro-plugins/affireo-affiliates-for-woocommerce/)
* [Storefold Pro](https://propluginslab.io/shop/plugins/pro-plugins/storefold-multivendor-for-woocommerce/)
* [Dispatchio Pro](https://propluginslab.io/shop/plugins/pro-plugins/dispatchio-advanced-shipment-tracking-for-woocommerce/)
* [Presentero Pro](https://propluginslab.io/shop/plugins/pro-plugins/presentero-gift-cards-for-woocommerce/)
* [Kitero Pro](https://propluginslab.io/shop/plugins/pro-plugins/kitero-product-configurator-for-woocommerce/)
* [Plusero Pro](https://propluginslab.io/shop/plugins/pro-plugins/plusero-extra-fees-for-woocommerce/)
* [Inputo Pro](https://propluginslab.io/shop/plugins/pro-plugins/inputo-name-your-price-for-woocommerce/)
* [Mercenza Pro](https://propluginslab.io/shop/plugins/pro-plugins/mercenza-b2b-for-woocommerce/)
* [Visuaro Pro](https://propluginslab.io/shop/plugins/pro-plugins/visuaro-product-designer-for-woocommerce/)
* [Back In Stock Notifier Add-ons](https://propluginslab.io/product-category/back-in-stock-notifier/) - 26 add-ons incl. Mailchimp, Klaviyo, Twilio SMS, WPML, or all of them in the [Bundle](https://propluginslab.io/shop/add-ons/back-in-stock-notifier/bundle-add-ons/).

== Installation ==

1. Install and activate WooCommerce.
2. In your WordPress admin, go to Plugins, Add New, search for Inputo, then install and activate it. Or upload the plugin folder to /wp-content/plugins/ and activate it on the Plugins screen.
3. Go to Inputo in the sidebar to review the default percentages and wording. The live preview shows the result as you change things.
4. Edit a product, open the Name your price tab in the Product data box, switch it on and update the product.
5. For a variable product, open the Variations tab, expand a variation and tick Name your price in its header.

== Frequently Asked Questions ==

= Does a named price product need a regular price? =

No. If it has one, empty amounts are worked out from it using your default percentages. If it has none, type the amounts on the product itself. With no minimum either, any amount above zero is accepted.

= Can customers pay nothing? =

Only if you allow it on purpose, by setting a minimum of exactly 0 on the product or a minimum percentage of 0 on the General screen. An empty minimum never allows a free order line.

= Can a customer get around the minimum? =

No. The browser check is only there to help. The server checks the amount when the product is added to the cart, every time the cart is checked, and before checkout, including for the block checkout and the Store API.

= How does it handle tax? =

The customer types an amount the way your shop shows prices. If your shop shows prices including tax, the typed amount includes tax too, even when you enter product prices without tax.

= Why does the shop page button open the product page? =

Because the customer has not chosen a price yet. A named price product cannot be added to the cart from a list in one click, so the button leads to the product page, where the price box is.

= Does it work with block themes? =

Yes. On block themes the product page uses the Add to Cart with Options block, and the price box appears inside it, for simple products and for each named price variation of a variable product.

= Does it work with the block cart and checkout? =

Yes. The chosen amount is applied to the cart on the server, which both the block and the classic cart and checkout use.

= Can I change how the price box looks? =

Yes. Choose a card or minimal style and an accent colour on the Display screen. For more, use the CSS custom properties on .inputo-nyp, or copy templates/price-input.php to yourtheme/inputo/price-input.php and edit it.

= Is there documentation? =

Yes, inside the plugin. Go to Inputo, Documentation in the sidebar. It explains every option, with examples, and is searchable.

== Screenshots ==

1. The price box on a product page, thanking a generous customer.
2. A clear message when the amount is below the minimum.
3. A variable product with a named price variation.
4. Shop lists show the price wording and a Name your price button.
5. The block cart, showing the price each customer chose.
6. General settings with the live preview.
7. Display settings: price wording, style, accent colour and what to show.
8. Text and messages: every word the customer sees.
9. The Name your price tab on the product screen.
10. Named price amounts inside a variation.
11. Named price products are marked in the product list.
12. The order screen shows the price the customer chose and the suggestion at the time.
13. The built in documentation, searchable, covering every option.

== Changelog ==

= 1.3.0 - 2026-10-17 =
* Fix: variable products in the Add to Cart with Options block, the default on block themes. The price box now follows the chosen variation there, so named price variations can be bought.
* Fix: the price meter no longer hides its contents from screen readers as a whole. Only its drawing and level names are hidden.
* Fix: with prices entered including tax and shown excluding tax, the typed amount now gets the shop's base tax back, as WooCommerce does, so the cart matches what the customer typed for customers outside the base country too.
* Improved: whether a product may be taken for free now follows the minimum percentage that applies to it, so extensions that change the percentages for a product are respected.
* Improved: developers can change the wording of the price line per product, the product list filter, and amounts on their way to and from the shopper's currency, through new filters listed in the documentation.
* Improved: the documentation lists every hook and browser event, names the right Store API error code for each case, and drops the old advice to use the Add to Cart Form block.
* Improved: uninstall removes product data through the plugin's own list of meta keys.
* Tested with WordPress 7.1.3 and WooCommerce 11.2.1.

= 1.2.0 - 2026-10-15 =
* New: a Named price column in the admin product list shows each named price product's minimum, suggested and maximum amounts, and for variable products how many variations take a named price. Hide it under Screen Options if you do not need it.
* Improved: a cart line keeps its named amount only while the product still takes a named price. If you switch a named price off, the product goes back to its own price in carts that already hold it.
* Improved: amounts too large to be a real number are refused on the server.
* Improved: the Store API accepts a named amount when the request names a variable product and its attributes instead of the variation id.
* Improved: a Store API add to cart with a missing or out of range amount is answered with a clear 400 error and the message, instead of a server error.
* Improved: when the Pro edition is active, this plugin stays idle and shows a note on the Plugins screen instead of switching itself off. Neither edition switches any plugin off.
* Improved: the Pro note on the Inputo screens is shown only to users who can manage plugins.
* Readme: added an External services section.
* Tested with WordPress 7.1.3 and WooCommerce 11.2.1.

= 1.1.0 - 2026-09-22 =
* New: set your own Add to cart button text for named price product pages, on the Display screen. Empty keeps your theme's wording.
* New: filter the admin product list to named price or fixed price products.
* Links moved to propluginslab.io.
* Added Pro upgrade banner on plugin screens.
* Tested with WordPress 7.1.1 and WooCommerce 11.1.1.

= 1.0.0 - 2026-09-17 =
* First release.

== Upgrade Notice ==

= 1.3.0 =
Variable named price products now work in the Add to Cart with Options block on block themes, plus accessibility and tax fixes.

= 1.2.0 =
Adds a Named price column to the product list, with small hardening of the cart and Store API checks. Tested with WordPress 7.1.3 and WooCommerce 11.2.1.

= 1.1.0 =
Adds custom Add to cart button text for named price products and a named price filter on the product list.

= 1.0.0 =
First release.
