If you’re running a WooCommerce store that sells products before they’re available — whether that’s a limited edition drop, a made-to-order item, or a product that ships next month — you’ve probably run into the same problem: the official WooCommerce Pre-Orders plugin forces you to either charge everything upfront or charge nothing at all.
Neither of those options works well in the real world. Charging everything upfront before the product exists creates friction and chargebacks. Charging nothing means you’re taking on all the risk.
What we’re covering in this article
How to collect a percentage or fixed deposit on pre-orders, lock the price at time of order, and automatically invoice the remaining balance when the product releases — without manual work.
Why deposits matter for pre-orders
A deposit system does three things for your store: it commits the customer financially before the product is ready (reducing drop-off when it actually ships), it gives you cash flow during the production period, and it removes the all-or-nothing pricing problem that comes with standard pre-orders.
For physical products, furniture, custom orders, and limited drops, a 20–40% deposit is standard practice. The problem is most WooCommerce plugins don’t support it at all.

Setting up deposits in WooCommerce
With Preorders for WooCommerce, the deposit system is built in from the start. Here’s how to configure it:
Step 1: Set a global deposit default
Go to WooCommerce → Settings → Pre-Orders and find the Deposit section. You can set a global default — either a fixed amount (e.g. $50) or a percentage of the product price (e.g. 30%). This applies to all pre-order products unless overridden at the product level.
Tip: Start with a percentage
A percentage-based deposit scales automatically with your product prices. A 30% deposit on a $100 product is $30. On a $500 product it’s $150. You don’t have to update individual products when prices change.
Step 2: Override per product if needed
On any individual product, go to the Pre-Order tab in the product data panel. You can override the global deposit setting with a product-specific amount. Useful for high-value products where you want a larger deposit, or low-cost products where a deposit isn’t worth the complexity.

Step 3: Enable cart price locking
Price locking means the pre-order price is recorded at the moment the customer adds the product to their cart. Even if you change the product price later, existing pre-orders are charged the original price. This is important for customer trust — nobody wants to discover their pre-order price changed months after they placed it.
Automatic balance invoicing on release
The most powerful part of the deposit system is what happens when you release the product. Instead of manually chasing customers for the remaining balance, the plugin automatically generates a WooCommerce order for the outstanding amount and emails a secure payment link to the customer.
What if the payment email doesn’t arrive?
The plugin includes a retry mechanism. If the balance invoice email fails to deliver, the system retries automatically. You can also trigger a manual resend from the order admin.
The balance invoice is a real WooCommerce order — which means it shows up in your order dashboard, goes through your normal payment gateway, and generates a standard receipt for the customer. No custom payment flows, no workarounds.
Tax integrity on deferred payments
This is the part most people don’t think about until it causes problems. If a customer pre-orders in January at a 20% VAT rate, and your tax rate changes before the product ships in April, the balance invoice should still reflect the original 20% — not whatever the current rate is.
The plugin records both the deposit and the outstanding balance at the original tax rates at the time of the pre-order. Balance invoices generated months later will always reflect the exact original tax, keeping your accounting clean and your customers accurately charged.
This matters more than you think
Tax discrepancies on deferred payments are a common audit red flag for e-commerce businesses. Having tax integrity built into your pre-order system removes this risk entirely.
Summary
A proper pre-order deposit system requires four things: flexible deposit amounts (percentage or fixed), per-product overrides, cart price locking, and automatic balance invoicing with tax integrity. The official WooCommerce Pre-Orders plugin doesn’t support any of these.
If you’re running real pre-order campaigns — especially for physical products, custom orders, or limited edition drops — a deposit system isn’t optional. It’s how you protect your cash flow and your customers at the same time.