Wholesale Customers for WooCommerce

Free wholesale pricing, discounts and customer management for B2B

Wholesale Customers For WooCommerce is a lightweight, easy-to-use plugin for selling wholesale through your WooCommerce store. Assign customers as wholesale users, set a store-wide discount percentage, define per-product wholesale prices, and enforce a minimum cart total — all without bloat.

Who is this for?

Shop owners adding wholesale

You have a retail WooCommerce store and want to offer wholesale pricing to specific customers without changing your storefront.

Manufacturers selling direct

You sell to retailers at wholesale and need a simple way to manage their pricing separately from your retail customers.

Stores offering VIP pricing

You want to reward loyal or repeat customers with special pricing without building a complex membership system.

Features

Simple customer assignment

Assign wholesale status directly from the user profile page — no extra registration flow, no new user roles to configure.

Global percentage discount

Set a single store-wide wholesale discount that applies automatically to every product for wholesale customers. Change it once and it updates everywhere.

Per-product wholesale price

Override the global discount on any product with a specific wholesale price. The per-product price always takes priority when set.

Minimum cart total

Prevent wholesale customers from checking out below a set minimum order value. The threshold is enforced at cart and checkout with a clear notice.

Wholesale price on product page

Logged-in wholesale customers see their price on the product page alongside — or instead of — the regular retail price.

Cart & checkout savings display

A "Wholesale" badge appears on discounted line items in the cart. A "Wholesale savings" total row shows customers exactly how much they're saving.

Wholesale Customers admin screen

A dedicated screen under WooCommerce lists all wholesale customers with name, email, order count, and assignment date. Supports search, sorting, and bulk removal.

Savings in order emails

Wholesale savings are included in order confirmation emails so customers have a clear record of their discount on every purchase.

Quick Edit & Bulk Edit

Set or clear wholesale prices from the Products list without opening individual product pages. Bulk Edit supports updating multiple products at once.

HPOS compatible

Fully compatible with WooCommerce High-Performance Order Storage. Compatibility is explicitly declared — no warnings in WooCommerce status.

REST API support

Read and set wholesale customer status via the WooCommerce REST API — useful for headless setups, CRM integrations, and bulk imports.

Developer-friendly

Actions and filters throughout the codebase let developers customise behaviour without modifying plugin files. Hooks are documented in the changelog.

Installation

Requirements

  • WordPress 5.8 or higher
  • WooCommerce 5.0 or higher (tested up to WooCommerce 9.0)
  • PHP 7.4 or higher

Option A - Install from WordPress.org (recommended)

  1. In your WordPress admin, go to Plugins → Add New Plugin.
  2. Search for Wholesale Customers For WooCommerce.
  3. Click Install Now next to the plugin by Pacific Plugins.
  4. Click Activate once installation is complete.
Searching for the plugin in the WordPress plugin directory
Searching for Wholesale Customers For WooCommerce in the WordPress plugin directory.

Option B - Upload a zip file

  1. Download the .zip file from WordPress.org.
  2. In your WordPress admin, go to Plugins → Add New Plugin → Upload Plugin.
  3. Choose the downloaded .zip file and click Install Now.
  4. Click Activate Plugin once installation is complete.

After activation

Once active, the plugin adds a Wholesale Settings tab inside WooCommerce → Settings. No licence key is required - the plugin is entirely free.

Wholesale Settings tab in WooCommerce Settings
The Wholesale Settings tab appears inside WooCommerce → Settings after activation.

Configuration

All settings live under WooCommerce → Settings → Wholesale Settings. The tab is split into three sections: Pricing, Order Restrictions, and Customer Notices.

Pricing

Wholesale Settings  -  Pricing section
The Pricing section of Wholesale Settings.
  • Global discount (%) - A percentage automatically deducted from every product's price for wholesale customers. Leave at 0 if you intend to set prices per product only.
  • Apply discount to sale prices - Choose whether the global discount stacks on top of a product's current sale price, or whether it always applies to the regular (non-sale) price.
  • Discount tax base - For stores that enter prices inclusive of tax, choose whether the discount is applied to the stored product price or to the tax-exclusive portion only.
  • Hide retail price - When enabled, wholesale customers see only their discounted price on product pages - the regular retail price is not shown alongside it.
  • Show "You save" display - Shows the exact savings amount and percentage on the product page for wholesale customers.
  • Disable coupons for wholesale customers - Prevents coupon codes from stacking on top of wholesale pricing.
  • Customisable wholesale price label - Change the label text shown before the wholesale price on product pages (default: "Your wholesale price:").

Order Restrictions

  • Minimum cart total - Wholesale customers cannot check out if their cart total (before tax) is below this value. Leave at 0 for no minimum.
  • 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.

Customer Notices

  • "Log in for wholesale pricing" notice - Shown on product pages to guests and non-wholesale customers. You can customise the message text and add an optional link URL (e.g. to a wholesale application page).
  • "No wholesale pricing available" message - Shown to wholesale customers on products that have no specific wholesale price or global discount configured.

Usage Guide

Assigning a wholesale customer

Wholesale status is granted per user from the WordPress Users screen.

  1. Go to Users → All Users in your WordPress admin.
  2. Click the username to open their profile.
  3. Scroll to the Wholesale customer checkbox and tick it.
  4. Click Update User. The customer now receives wholesale pricing immediately.
Wholesale customer checkbox on the user profile page
The Wholesale customer checkbox on a user's Edit Profile page.

The Users list also gains a Wholesale column and a Wholesale Customers filter link so you can quickly see all wholesale users at a glance.

Setting a per-product wholesale price

You can override the global discount with a fixed wholesale price on any individual product.

Simple products

  1. Open the product in the WordPress editor.
  2. Go to the Product data panel → General tab.
  3. Enter a value in the Wholesale price field.
  4. Update the product. Wholesale customers now see this price instead of the discounted regular price.
Wholesale price field on a simple product
The Wholesale price field on a simple product's General pricing tab.

Variable products

  1. Open the product and go to the Variations tab.
  2. Expand a variation and enter a value in its Wholesale price field.
  3. Repeat for each variation as needed. Variations without a price fall back to the global discount.
  4. Save changes.

Bulk editing wholesale prices

You can set or clear wholesale prices without opening each product individually.

  • Quick Edit - Hover a product in the Products list and click Quick Edit. A wholesale price field appears inline.
  • Bulk Edit - Select multiple products, choose Edit from the Bulk actions dropdown, and apply a wholesale price to all selected products at once.

Wholesale Customers admin screen

Go to WooCommerce → Wholesale Customers to see a dedicated list of all wholesale users, including their order count and the date they were assigned. You can search, sort, and bulk-remove wholesale status from this screen.

Wholesale Customers admin screen
The Wholesale Customers admin screen under WooCommerce.

What wholesale customers see

  • Product page - Their wholesale price is shown under the regular price, along with an optional "You save X%" notice.
  • Cart & checkout - Line items show a "Wholesale" badge and a "Wholesale savings" row shows the total saved on the order.
  • Order emails - Order confirmation emails include the wholesale savings amount.
  • My Account - A "Wholesale Account" panel confirms their status and the date it was granted.

Wholesale notice shortcode

Place the wholesale call-to-action notice anywhere on your site - homepage, landing pages, or widgets - using:

[wcs_wholesale_notice]

Optional attributes:

  • login_text - Text shown to guests (default: "Log in for wholesale pricing").
  • apply_text - Text shown to logged-in non-wholesale customers.
  • active_text - Text shown to active wholesale customers.
  • url - URL the notice links to (e.g. your wholesale application page).

Orders screen filter

In WooCommerce → Orders, a Wholesale Customers filter lets you view only orders placed by wholesale customers. Wholesale orders are also tagged internally at checkout - they remain identifiable in reports even if a customer's status later changes, and a "Wholesale Order" badge appears on the order edit screen.

REST API

Wholesale status can be read and set via the standard WooCommerce REST API. The wholesale_customer field (boolean) is available on the /wc/v3/customers/{id} endpoint for both GET and POST/PUT requests.

Also from Pacific Plugins

Wholesale Customers Pro

B2B sales platform with groups, tiered pricing, net terms and quotes

  • Wholesale Groups
  • Tiered / Quantity Pricing
  • Registration & Approvals
View
Free Plugin

No license. No subscription. Use forever for free.

Plugin details
Version
v2.0.0
WordPress
5.8+
PHP
7.4+