Descripció
Wholesale Customers For WooCommerce gives you everything you need to run a wholesale operation alongside your regular WooCommerce store — without a complicated setup or a bloated plugin.
Assign customers as wholesale buyers, set a global percentage discount or per-product wholesale prices, enforce a minimum order value, and control exactly what your customers see at every step of the buying journey.
Whether you’re selling direct to retailers, running a B2B-only store, or offering trade pricing to select customers alongside your retail catalogue, this plugin handles it cleanly and efficiently.
Pricing
- Global percentage discount — set a single store-wide discount that applies automatically to every product for wholesale customers.
- Per-product wholesale price — set an exact price on any simple product or variation. Always overrides the global discount when set.
- Apply discount to sale prices — choose whether the global discount stacks on top of a sale price or applies to the regular price only.
- Discount tax base — for stores that enter prices inclusive of tax, apply the discount to the tax-exclusive price instead of the stored price.
- Wholesale price column in the Products list — see every product’s wholesale price at a glance.
- Quick Edit support — set or clear the wholesale price without opening each product individually.
- Bulk Edit support — update wholesale prices across multiple products at once.
- Product CSV import/export —
wholesale_priceis included in WooCommerce’s built-in importer and exporter with automatic column mapping.
Customer Management
- Wholesale Customers admin page — a dedicated screen listing every wholesale user with their name, email, order count, and the date they were assigned wholesale status. Supports search, column sorting, and bulk removal.
- One-click assignment — enable wholesale status from the user’s Edit Profile page with a single checkbox.
- Wholesale since date — the date a customer was first granted wholesale status is recorded and shown on their profile.
- “Wholesale” column on the Users list — instantly identify wholesale accounts with a dedicated filter view.
- Wholesale customer filter on the Orders screen — filter the order list to show only wholesale orders (works with both classic and HPOS order storage).
- Order flagging — wholesale orders are tagged at checkout so they remain identifiable in reports even if a customer’s status later changes. A “Wholesale Order” badge appears on the admin order screen.
- WooCommerce REST API support — read and set
wholesale_customerstatus via the/wc/v3/customersendpoint.
Customer Experience
- Wholesale price on the product page — logged-in wholesale customers see their price on every product page (simple and variable).
- “You save” display — shows the exact savings amount and percentage on the product page. Variable products show the maximum savings percentage across all variations.
- Hide retail price — optionally show wholesale customers only their discounted price, removing the regular price from display.
- Wholesale badge in cart & checkout — line items show a “Wholesale” label when a wholesale discount is applied.
- Wholesale savings total — cart and checkout display a “Wholesale savings” row showing the total saved on the order.
- Wholesale savings in order emails — order confirmation emails include how much the customer saved.
- My Account wholesale status panel — customers see a “Wholesale Account” section on their dashboard confirming their status and the date it was granted.
- “Log in for wholesale pricing” notice — shown on product pages to guests and non-wholesale customers. Text and link URL are configurable in settings.
- “No wholesale pricing available” message — a configurable fallback shown to wholesale customers viewing products with no specific pricing set up.
- Customisable wholesale price label — change “Your wholesale price:” to any text you like.
[wcs_wholesale_notice]shortcode — place the wholesale call-to-action notice anywhere on your site. Supportslogin_text,apply_text,active_text, andurlattributes.
Store Controls
- Minimum cart total — block wholesale customers from checking out below a set order value.
- Disable coupons for wholesale customers — prevent coupon codes from stacking on top of wholesale pricing.
- Catalog / private store mode — hide prices and the Add to Cart button from guests only, or from all non-wholesale visitors, turning your store into a B2B-only catalogue.
Developer Tools
Built with extensibility in mind. All core behaviour is exposed through filters and actions so Pro features and third-party integrations work without modifying plugin files.
Key hooks: wcs_is_wholesale_customer, wcs_wholesale_price, wcs_minimum_cart_amount, wcs_wholesale_customer_enabled, wcs_wholesale_customer_disabled, wcs_after_settings_saved, wcs_pro_upgrade_url.
Wholesale Customers For Woo Pro
Wholesale Customers For Woo Pro extends this plugin into a full B2B sales platform.
Groups & Pricing
- Wholesale groups — create multiple customer tiers (Gold, Silver, Bronze, etc.), each with its own discount rate, minimum cart total, and settings.
- Tiered / quantity-break pricing — set volume price tiers per product (e.g. 1–9 units at $18, 10–49 at $15, 50+ at $12). Tier table shown on the product page.
- Per-category pricing — apply a flat or percentage discount to an entire product category, per group.
Registration & Approvals
- Wholesale registration form — a dedicated sign-up page via
[wcsp_registration_form]shortcode with one-click page creation in settings. - Admin approval workflow — applicants sit in a pending queue; approve or reject with one click from the Registrations admin page.
- Custom registration fields — add text, textarea, select, checkbox, and file-upload fields to the registration form.
- Automated email notifications — customers are notified on approval or rejection; admins receive alerts on new applications.
Product Controls
- Product visibility — hide products from non-wholesale visitors, globally or per-product.
- Quantity rules — enforce minimum and maximum order quantities per product.
- Quantity steps — require ordering in multiples (e.g. packs of 6) per product.
- Bulk Order Form — a searchable, filterable order table via
[wcsp_order_form]shortcode for fast large-quantity ordering.
Payments & Finance
- Net Terms / Pay by Invoice — a “Pay by Invoice” WooCommerce payment gateway for approved customers. Configurable net days (Net 7/15/30/60/90), per-user and per-group credit limits, overdue tracking, and due dates in admin and emails.
- Store Credit / Wallet — issue credit to customers, let them apply it at checkout, and track the full transaction history in My Account. Auto-refunds on order refund.
- Purchase Order Number — collect a PO number at checkout (optional or required), stored on the order and shown in emails.
- Tax Exemption — mark customers or groups as tax-exempt. WooCommerce skips tax calculation automatically.
- Payment & shipping restrictions — limit which gateways and shipping methods are available to each wholesale group.
Commerce
- Quote Requests — “Request a Quote” button on product pages. Admins review, adjust prices, and convert approved quotes to real orders with one click.
- WordPress Role Management — auto-assign a custom
wcsp_wholesale_customerrole on approval and remove it on revocation, for use with role-aware plugins.
Reporting
- Wholesale Reports dashboard — revenue, orders, average order value, top customers by revenue, and revenue by group — filterable by 7 days, 30 days, 90 days, or year.
Get Wholesale Customers For Woo Pro
Translation Ready
Captures

Wholesale notice on the My Account dashboard — confirms wholesale status and the date it was granted. 
Wholesale Customers admin screen — lists all wholesale users with order count and assignment date, searchable and sortable. 
General Settings — global discount percentage, per-product pricing options, and sale price behaviour. 
Order Settings — minimum cart total and coupon restriction controls. 
Notice Settings — configurable “Log in for wholesale pricing” notice text and link URL.
Instal·lació
- Upload the plugin folder to
/wp-content/plugins/, or install it directly through Plugins > Add New in your WordPress dashboard. - Activate the plugin from the Plugins screen.
- Go to Wholesale > Settings to configure the global discount, minimum cart total, and customer-facing notices.
- To make a user a wholesale customer, open their profile under Users and check Wholesale customer, then save.
- To set a wholesale price on a specific product, open the product, go to the General tab (simple) or the Variations tab (variable), and enter a value in the Wholesale price field.
PMF
-
What version of WooCommerce is required?
-
WooCommerce 5.0 or later. Tested up to WooCommerce 9.0.
-
What version of WordPress is required?
-
WordPress 5.8 or later.
-
Does this work with variable products?
-
Yes. You can set a wholesale price on each variation individually under the Variations tab. If a variation has no wholesale price set, the global percentage discount applies to its regular price instead.
-
How does the pricing priority work?
-
Per-product wholesale price wins first. If that’s not set, the global percentage discount is applied. If there’s no global discount either, the product shows the regular WooCommerce price (unless Pro features like group pricing or tiered pricing are active and applicable).
-
Can I show wholesale prices to guests or non-wholesale customers?
-
No — wholesale prices are shown only to logged-in users who have been granted wholesale status. You can configure a “Log in for wholesale pricing” notice to display to everyone else on product pages, with configurable text and an optional link.
-
Can I hide prices entirely from guests or the public?
-
Yes. The Catalog / private store mode setting lets you hide prices and the Add to Cart button from guests only, or from all non-wholesale visitors entirely.
-
What happens when a wholesale customer uses a coupon?
-
You can optionally disable coupons for wholesale customers entirely using the Disable coupons for wholesale customers setting. This prevents discount stacking.
-
Is this compatible with WooCommerce High-Performance Order Storage (HPOS)?
-
Yes. Full HPOS compatibility is declared as of version 2.0.0.
-
Can I import or export wholesale prices in bulk?
-
Yes. The
wholesale_pricecolumn is supported in WooCommerce’s built-in product CSV importer and exporter. The importer also recognises the column header automatically. -
Can I use the REST API to manage wholesale customers?
-
Yes. The
/wc/v3/customersendpoint is extended with awholesale_customerboolean field that you can read and write via the API. -
Where can I see all my wholesale customers?
-
Go to Wholesale > Customers in the admin menu. The screen lists every wholesale user with their name, email, username, total order count, and the date they were assigned. You can search, sort by column, and bulk-remove wholesale status from there.
-
I need wholesale groups, registration forms, tiered pricing, or Net Terms — is that in the free version?
-
Those features are in Wholesale Customers For Woo Pro. The free plugin handles the core wholesale pricing experience; Pro adds the full B2B sales layer on top.
-
Where do I get support?
-
Free support is available via the WordPress.org support forum. Pro customers receive support through Pacific Plugins.
Ressenyes
Col·laboradors i desenvolupadors
«Wholesale Customers For WooCommerce» és programari de codi obert. La següent gent ha col·laborat en aquesta extensió.
Col·laboradors“Wholesale Customers For WooCommerce” s’ha traduït a 2 configuracions regionals. Gràcies als traductors per les seves aportacions.
Traduïu «Wholesale Customers For WooCommerce» a la vostra llengua.
Interessats en el desenvolupament?
Navegueu pel codi, baixeu-vos el repositori SVN, o subscriviu-vos al registre de desenvolupament per fisl de subscripció RSS.
Registre de canvis
2.0.0 – 2026-04-13
- Feature: Added Wholesale Customers admin page (WooCommerce > Wholesale Customers) — lists all wholesale users with name, email, username, order count, and assignment date. Supports search, column sorting, and bulk removal of wholesale status.
- Feature: Wholesale price is now displayed on single product pages for logged-in wholesale customers (simple and variable products).
- Feature: Cart and checkout line items now show a “Wholesale” badge when a wholesale discount is applied.
- Feature: A “Wholesale savings” row in cart and checkout totals displays the total amount saved on the order.
- Feature: Wholesale savings notice added to order confirmation emails.
- Feature: New setting — Apply discount to sale prices — choose whether the global discount stacks on top of a product’s sale price or applies to the regular price only.
- Feature: New setting — Discount tax base — apply the global discount to the stored product price or the tax-exclusive price (for stores that enter prices inclusive of tax).
- Feature: “Log in for wholesale pricing” notice on product pages for guests and non-wholesale customers. Text and link URL configurable in settings.
- Feature: “No wholesale pricing available” fallback message for wholesale customers viewing products with no configured pricing.
- Feature: Order flagging — wholesale orders are tagged at checkout for permanent identification. A “Wholesale Order” badge appears on the admin order edit screen.
- Feature: My Account wholesale status panel — customers see a “Wholesale Account” section on their dashboard with their status and assignment date.
- Feature: Product CSV import/export —
wholesale_pricecolumn supported in WooCommerce’s built-in importer and exporter with automatic header mapping. - Feature: Quick Edit support — set or clear the wholesale price from the Products list inline Quick Edit panel.
- Feature: Bulk Edit support — set or remove wholesale prices across multiple products from the Bulk Edit panel.
- Feature:
[wcs_wholesale_notice]shortcode — place the wholesale CTA notice anywhere on the site. Supportslogin_text,apply_text,active_text, andurlattributes. - Feature: Hide retail price setting — show wholesale customers their discounted price only, without the regular price alongside it.
- Feature: “You save” display on the product page — exact savings amount and percentage for simple products; maximum savings percentage for variable products.
- Feature: Disable coupons for wholesale customers — prevents coupon codes from stacking on top of wholesale pricing.
- Feature: Catalog / private store mode — hide prices and Add to Cart from guests only, or from all non-wholesale visitors.
- Feature: Customisable wholesale price label — replace the default “Your wholesale price:” with any text.
- Feature: “Wholesale” column added to the admin Users list with a dedicated “Wholesale Customers” filter view.
- Feature: Wholesale customer filter added to the WooCommerce Orders screen (legacy and HPOS).
- Feature: WooCommerce REST API extended —
wholesale_customerboolean field on/wc/v3/customerssupports read and write. - Feature: Wholesale Groups placeholder section added to settings with Pro upgrade links for each advanced feature.
- Security: Added nonce verification and capability check to the product wholesale price save handler.
- Security: All
$_POSTand$_REQUESTvalues are now properly sanitized before use. - Security: Admin output is escaped with
esc_html()andesc_attr()throughout. - Enhancement: Added WooCommerce HPOS (High-Performance Order Storage) compatibility declaration.
- Enhancement: Defined plugin constants (
WCS_VERSION,WCS_PLUGIN_FILE,WCS_PLUGIN_DIR,WCS_PLUGIN_URL). - Enhancement: Added a Settings shortcut link on the Plugins list page.
- Enhancement: Variable products display “See variations” in the wholesale price column instead of “N/A”.
- Enhancement: Wholesale since date is recorded on first assignment and shown on the user profile page.
- Enhancement: Settings page reorganised into Pricing, Order Restrictions, and Customer Notices sections.
- Enhancement: Developer hooks added —
wcs_is_wholesale_customer,wcs_wholesale_price,wcs_minimum_cart_amount,wcs_wholesale_customer_enabled,wcs_wholesale_customer_disabled,wcs_after_settings_saved,wcs_pro_upgrade_url. - Bug Fix: Replaced deprecated
global $current_userwithget_current_user_id()throughout. - Bug Fix: Fixed a potential undefined-variable warning in
wcs_calculate_variation_range_prices()for empty variation sets. - Bug Fix: Removed a redundant
WC_Product_Variableinstantiation. - Bug Fix: Variation wholesale prices are now saved via
wc_format_decimal()for consistent decimal formatting. - Bug Fix: Corrected the global-discount early-exit condition that was incorrectly combining an
empty()check with< 1. - Tested up to WordPress 6.7 and WooCommerce 9.0.
- Updated minimum PHP requirement to 7.4.
1.0.6 – 2023-08-14
- Tested up to latest WordPress and WooCommerce versions.
- Announcement of change of ownership and commitment to ongoing maintenance.
1.0.5 – 2020-05-28
- Bug Fix: Hide extra column on small screens.
- Enhancement: Removed admin notice.
- Tested on latest versions of WooCommerce and WordPress.
1.0.4.2
- Bug Fix: Newsletter opt-in form would not dismiss as expected.
1.0.4.1
- Bug Fix: If variations had the same price for min and max, display only one price instead of a range.
- Enhancement: Subscribe to newsletter prompt.
1.0.4
- Enhancement: Translation support via GlotPress.
- Bug Fix: Wholesale amounts would round incorrectly.
1.0.3
- Bug Fix: General bug fixes.
- Enhancement: Wholesale pricing for variable products, including price range display with global discount and individual variation pricing.
1.0.2
- Enhancement: Wholesale pricing for simple products.
1.0.1
- Feature: Minimum cart total for wholesale customers.
- Enhancement: Improved settings page UI and code structure.
1.0.0
- Initial release.
