WooCommerce wholesale for coffee roasters
Order Book is wholesale ordering software for coffee roasters, and it sits next to a WooCommerce store rather than inside it. This page explains what a wholesale plugin stack costs, what stays in WooCommerce, what moves out, and how to bring your cafés and their past orders over.
Published 8 October 2026
On this page7
Do I need a wholesale plugin to sell coffee to cafés from WooCommerce?
Short answer. No: keep WooCommerce for retail and give each café its own account in Order Book, at its own prices, with nothing installed in WordPress. You bring the cafés and their past orders over with a CSV export from WooCommerce, and your VAT and invoices stay in the accounting software you already use.
What a wholesale plugin stack costs
WooCommerce has no wholesale or B2B features of its own, and none on its roadmap. Everything a café account needs comes from plugins, and in October 2026 we read the one- and two-star reviews of a dozen of them. The same complaints repeat across vendors and across years.
- Several plugins, not one. Prices by role, a quick order form, minimum quantities, hidden categories, net terms and a shipping table each tend to be a separate product. A typical wholesale store runs 4 to 7 commercial plugins.
- The licences. The main wholesale bundles cost about $200 to $600 a year before any VAT, invoice or cache add-on. Six plugins drew complaints that an introductory price renewed at full price, or that a lapsed licence locked the merchant out or was hard to cancel.
- The updates. Seven plugins drew complaints that an update or a clash with another plugin broke the store, in one case twice in the busy season. Six were reported to slow the cart or the order form, one at 20 to 30 products in a cart.
- The support. Eight plugins drew reviews about tickets that went unanswered for weeks.
- The trust. One wholesale plugin, Wholesale Market, was closed on wordpress.org on 3 August 2026 for a security issue. A store still running it gets no updates from there.
The licences are cheaper than Order Book, which starts at €49 a month. The cost is elsewhere: the hours spent testing updates, the order that broke, and the café that saw the wrong price. The plugins compared one by one.
Four things that change when wholesale leaves the shop
- One account per café, instead of 4 to 7 plugins. Each café signs in with the address you already hold for it, with no password, and sees its own prices with its usual order at the top of the sheet. It is one product with every feature on every plan, and nothing in WordPress to install, update or uninstall.
- No renewal that locks you out. Order Book is a monthly plan with no annual licence. The 30-day trial needs no card, nothing in the book stops when it ends, and an admin can download everything your roastery holds in Order Book as one file at any time.
- No cache to show the wrong price. A plugin prices by customer role on a storefront, and a page cache can serve one customer's prices to another; three vendors publish help articles about exactly that. In Order Book the café's prices live on its own account, so there is no shared page to cache.
- EU VAT stays with your accounting. Order Book issues no invoices and holds no VAT position. VAT numbers, rates and invoices stay in the invoicing or accounting software you use today, and the invoice you issue there is attached to the order for the café to see. How that works.
What stays in WooCommerce
- Your retail store, theme, domain and checkout.
- Retail orders, subscriptions and consumer payments.
- Your retail product pages. The wholesale catalog is built once in Order Book, with price lists per client type on top.
What moves to Order Book
| Job | WooCommerce with plugins | Order Book |
|---|---|---|
| Wholesale prices | A role per price level, or one role per customer | One catalog template per client type, overrides per café, volume price breaks |
| Who sees which price | The role, as long as the cache is set up to respect it | The café's own account, and nobody else's |
| Reorders | Retail cart or a plugin order form, or a WhatsApp message | The café's usual order at the top of its sheet, at its own prices; it sets the quantities and confirms |
| Delivery | Order status set by you | The café marks the order Received; a problem it reports is credited against the order |
| Price changes | Edit the role prices and clear the cache | Scheduled, with each café told its own new price before it starts |
| Invoices and VAT | Another plugin, or your accounting software | Your accounting software, as today; the invoice is attached to the order |
| Payment | Card at checkout, or a net-terms plugin | Bank transfer on the terms you set per café, recorded against the account with a running balance, or the order marked as paid |
| Who is slipping | Nothing | Each account measured against its own rhythm, a call list, a Monday digest |
| The morning | Export orders and build the roast in a spreadsheet | Roast plan, picking list, run sheet and delivery notes from confirmed orders |
| Updates | Yours to test, on your server | Nothing installed on your server to update |
A card at checkout takes a percentage of every wholesale order; a bank transfer on terms does not. Run your own numbers.
How to bring your WooCommerce cafés over
Order Book has no WooCommerce connection. It has a CSV import, on the Clients page, and a WooCommerce export goes through it once a few columns are renamed.
- Export your orders from WooCommerce as CSV. The Orders report under Analytics has a download button, and any order-export plugin you already have works too.
- Keep only the wholesale rows. Every name in the file becomes a client, and clients count towards your plan, so delete retail customers first.
- Rename the columns to match the template in the app (Download a template, under Import an order-history CSV). Two are required:
dateandclient. The rest are optional:total,email,item,quantityandunit_price. Capitals do not matter, and columns with other names are ignored.clientshould hold the café's name, spelt the same way on every row. A different spelling becomes a second client.emailis the address the café will sign in with, if you have it.- With one row per order,
totalis enough. With one row per line, useitem,quantityandunit_price; rows with the same date and client become one order. - Dates can be ISO (2026-09-02) or day-first (02/09/2026). Negative totals are refunds and are left out.
- Save it as comma-separated UTF-8, under 25 MB, and import it. Orders already imported are skipped, so running it twice does no harm. Excel in much of Europe saves with semicolons, which the import does not read.
- Add your coffees under Products. The import brings clients and their order history, not products.
- Invite each café. It signs in with the address you hold for it, and its next order is placed in Order Book. Retail keeps running in WooCommerce untouched.
From the past orders, Order Book works out each café's rhythm, weekly, fortnightly or monthly, and the ones that have broken it show on the call list from the first day. How to spot an account going quiet. If your wholesale lives in a spreadsheet rather than in WooCommerce, the steps are the same: moving wholesale off spreadsheets.
What about the plugin I already pay for?
Some roasters keep it for the few accounts that insist on buying through the shop by card, and move everyone else to their own account. When the last café has moved, the plugin can go, along with whatever it left in your theme. Leaving your wholesale app, step by step. On Shopify instead? Shopify wholesale for coffee roasters.
Start free and import your WooCommerce cafés, or read what it costs.
Plugin prices, review counts and the wordpress.org closure are taken from public pages read in October 2026, and WooCommerce menu names from its own documentation; any of them may have changed. If something here is out of date, write to [email protected] and it will be corrected.