LindyMOQ: MOQ Settings for Products in SureCart

Description

LindyMOQ lets you set a minimum order quantity (MOQ) per SureCart product or per variant, and/or sell only in fixed multiples — for example in packs of 10, so customers can order 10, 20, 30, 40 … but nothing in between. Customers can order the minimum or more — but checkout is blocked if they try to go below it or off the pack size.

Both settings are managed from a dedicated settings page in WordPress admin (Settings LindyMOQ), independent of SureCart’s product editor.

Features

  • Set a minimum order quantity per product, or per individual variant
  • Sell in fixed multiples (increments) per product or variant — e.g. packs of 10 10, 20, 30, 40 …
  • Combine both: a minimum of 20 with multiples of 10 yields 20, 30, 40 …; set only the multiple and it also becomes the minimum
  • Product-page quantity selector is locked to the minimum and the + / − buttons jump by the pack size — no flicker, no client-side bypass
  • Checkout is blocked server-side when the quantity is below the minimum or not a valid multiple
  • Clear error message shown at checkout when the minimum or pack size is not met
  • Quantities are aggregated across all line items before comparing to the minimum
  • Stock-aware: current stock is shown next to each MOQ in the settings page, with a red “below MOQ” flag when stock is insufficient
  • Strict stock gate on the product page: when stock is below the MOQ, the buy button is disabled and an “understocked — please check back soon” message is shown
  • Honours SureCart’s “continue selling when out of stock” setting — when enabled, the stock gate is bypassed so backorders go through normally
  • Simple settings page — no complicated configuration

Requirements

SureCart must be installed, active, and connected to the SureCart API.

Installation

  1. Upload the lindymoq folder to /wp-content/plugins/
  2. Activate the plugin in WordPress Plugins
  3. Go to Settings LindyMOQ
  4. Enter the minimum quantity and/or the “sell in multiples of” value for each product, then click Save settings

SureCart must be installed, active, and connected before the settings page can list your products.

FAQ

Does this work with SureCart product variants?

Yes. Products with variants show one minimum input and one “sell in multiples of” input per variant. Each setting applies to that specific variant’s quantity.

Can I sell products in fixed packs (e.g. only in multiples of 10)?

Yes. Set the “Sell in multiples of” field to 10 and customers can only order 10, 20, 30, 40 … On the product page the + / − buttons jump by the pack size, and any other quantity is corrected. If you leave the minimum blank, the pack size also becomes the minimum.

How do the minimum and the multiple work together?

They are independent. If you set a minimum of 20 and a multiple of 10, valid quantities are 20, 30, 40 … (the minimum is rounded up onto the nearest valid multiple). Set only the minimum for a plain MOQ, only the multiple for fixed packs, or both.

What happens when a customer orders below the minimum or off the pack size?

The product-page quantity selector starts at the minimum, cannot go below it, and only moves in valid steps. If a customer somehow reaches checkout with an invalid quantity, checkout is blocked server-side and they see a clear error message.

Does this apply across multiple line items?

Yes. Quantities are summed per product (and per variant) across all line items before comparing to the minimum and the pack size.

What happens if I have less stock than the MOQ?

By default, the buy button is disabled on the product page and a short “minimum order is X units, currently understocked” message is shown, so customers can’t add an order you can’t fulfil. In the settings page, the affected MOQ row shows a red “below MOQ” flag next to the stock count so you can spot the conflict.

If SureCart’s “continue selling when out of stock” is enabled for the product, the stock gate is bypassed entirely — the customer can still buy and you handle the backorder.

My product list is empty — why?

Make sure SureCart is active and connected to its API. The settings page fetches products via SureCart’s PHP SDK, which requires an active API connection.

What is the maximum number of products supported?

The settings page fetches all non-archived products in a single request. If you have a very large catalog and products are missing, contact the plugin author.

Reviews

Read all 1 review

Contributors & Developers

“LindyMOQ: MOQ Settings for Products in SureCart” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.2.0

  • New: “Sell in multiples of” setting per product or variant — sell only in fixed packs (e.g. multiples of 10 10, 20, 30 …)
  • New: minimum and multiple can be combined (e.g. min 20 + multiples of 10 20, 30, 40 …); set only the multiple and it also becomes the minimum
  • New: product-page + / − buttons jump by the pack size, and off-pack quantities are corrected automatically
  • New: checkout validation rejects quantities that are not a valid multiple of the pack size

1.1.0

  • New: stock-aware admin display — current stock shown next to each MOQ, flagged red when below MOQ
  • New: product-page buy button is disabled with a clear “understocked” message when stock is below the MOQ
  • New: respects SureCart’s “continue selling when out of stock” setting (gate is bypassed when on)
  • Fix: quantity input value-trap is now re-applied on every render cycle, so the Interactivity API can no longer swap in an un-trapped input
  • Fix: value-trap no longer attaches to non-input web components (avoids an “Illegal invocation” landmine)
  • Fix: plugin action link no longer depends on the folder being named lindymoq

1.0.0

  • Initial release