Everything you need to install, configure, and get the most out of all 24 modules. Each section below links to its dedicated documentation page.
B2B Commerce Kit is a single WooCommerce plugin that replaces the fragile multi-plugin stacks most wholesale stores rely on. All 24 modules share a unified codebase, targeting system, and database schema — so features work together rather than fighting each other.
| Requirement | Minimum | Recommended |
|---|---|---|
| WordPress | 6.4 | Latest |
| WooCommerce | 8.0 | Latest |
| PHP | 7.4 | 8.2+ |
| MySQL / MariaDB | 5.7 / 10.4 | 8.0+ / 10.6+ |
Go to Plugins → Add New → Upload Plugin, select the .zip file, click Install Now, then Activate. The B2B Commerce Kit menu appears immediately in your WordPress sidebar. All 24 modules are enabled by default — visit B2B Commerce Kit → Settings → Features to toggle any off.
Yes. B2B Commerce Kit is fully compatible with WooCommerce High-Performance Order Storage (HPOS) and the WooCommerce Cart and Checkout Blocks. You can enable HPOS from WooCommerce → Settings → Advanced → Features without any impact on B2B Commerce Kit functionality.
B2B Commerce Kit is built on a self-contained architecture that minimises hook collisions. It hooks into standard WooCommerce filters in a predictable, priority-aware way. If you're migrating from another B2B plugin (B2BKing, WholesaleX, etc.), disable the old plugin first and follow the migration guide to avoid duplicate rules.
B2B Commerce Kit can be network-activated on WordPress Multisite. Each subsite maintains its own independent set of rules, company accounts, and settings. License usage is counted per active site, not per network.
Follow this sequence for the smoothest onboarding:
Yes — and you should. Go to B2B Commerce Kit → Settings → Features. Each module has an on/off toggle. When a feature is disabled, its PHP classes, JavaScript assets, and admin menu items are completely removed from the load path. Zero performance overhead, zero database queries for unused modules.
Company Accounts provide the organisational backbone for B2B operations. They model the real-world relationship between a business entity and its individual WordPress users.
Go to B2B Commerce Kit → Company Accounts → Add Company. Fill in the company name, primary contact, billing and shipping addresses, and any custom fields. Then assign WordPress users from the company detail page. Each user can belong to only one company.
Yes. You can assign as many WordPress users as needed to a single company. All users in a company share the same credit limit, can see shared requisition lists, and their orders appear together on the company dashboard. This is the standard setup for a manufacturer with multiple purchasing agents.
Yes. Company-level data is shared across Credit, Sub-Accounts, Customer Pricing, and PO Approval modules automatically. Set a credit limit on the company and every user assigned to it draws from that shared balance. Set a contract price for a company ID and all users in that company see it at checkout.
Extend trade credit to B2B buyers with configurable payment terms (Net 7 through Net 90), real-time balance tracking, and automated overdue management.
Installing the module adds a Company Credit payment method to WooCommerce checkout. When an eligible user (based on their assigned role) selects it, the order total is deducted from their company's available credit balance. The balance updates in real time and the transaction is recorded in the company's credit history.
Net 7, Net 14, Net 30, Net 45, Net 60, and Net 90. The default is Net 30. You can set a different default per company or change the global default from Settings → Credit Settings → Default Payment Terms.
Checkout is blocked with a clear message. You can configure this behaviour from Settings → Credit Settings → Block When Overdue. Optionally, you can set a threshold above which orders require manual admin approval before the credit is charged.
Yes. From B2B Commerce Kit → Company Accounts → [Company] → Credit, use the Add Transaction button to record payments, manual credits, refunds, or adjustments. The balance updates immediately and the transaction appears in the audit history.
Let wholesale customers create and manage their own team members with granular permissions, optional credit sharing, and a parent-approval workflow.
The parent account goes to My Account → Sub-Accounts and enters an email address. The invitee receives a link (valid for 7 days by default) and creates or logs into an account. Once linked, the parent can set permissions and allocate credit.
Yes, when Allow Credit Sharing is enabled in Settings → Sub-Account Settings. Sub-account orders draw from the parent company's credit balance. The parent dashboard shows all sub-account orders in one view for unified tracking.
10 by default. You can change this per-company or globally from Settings → Sub-Account Settings → Max Sub-Accounts. There's no upper limit enforced by the plugin itself — the default is a sensible starting point.
A complete Request for Quote workflow — customers request custom pricing on product pages, your team responds and negotiates, then converts accepted quotes directly into WooCommerce orders.
You can place it before or after the Add to Cart button, in the product summary, in the product meta area, or on shop/category pages. You can also inject it anywhere via the [woob2b_quote_button] shortcode. Multiple placement positions can be active simultaneously.
After your team sends a quote, the customer can counter-offer (if Allow Negotiation is enabled). Each round — customer request, your response, customer counter — counts as one negotiation round. You set the maximum rounds (default: 3) to prevent endless back-and-forth. Once the customer accepts, one click converts the quote to a WooCommerce order.
Optionally yes. Set Require Login to off in Settings → Quote Settings. Guests enter an email address and receive the quote thread via email. If you require a wholesale account before pricing, leave this on and combine it with the Hide Price module.
Quotes expire after the number of days set in Settings → Quote Settings → Validity Days (default: 30). Expired quotes cannot be accepted or edited. You'll receive an email notification before expiry if auto-notifications are enabled. You can also manually extend a quote from the admin dashboard.
Add tiered purchase order approval chains to checkout. Orders above defined thresholds require manager or admin sign-off before processing.
You define tiers in Settings → PO Approval Settings → Approval Thresholds. Each tier has a minimum amount, maximum amount, whether to auto-approve, and which roles can approve. Example: under $1,000 auto-approve; $1,000–$5,000 requires Shop Manager; above $5,000 requires Administrator.
Yes, if Allow Order Editing is enabled. Approvers can adjust quantities, remove items, or apply additional discounts before approving. All edits are logged with a timestamp and the approver's name.
Orders expire after the number of days set in Settings → PO Approval Settings → Approval Expiry (default: 7 days). Approvers receive email reminders. Expired pending orders are automatically cancelled and the customer is notified.
Automatic, condition-based pricing that goes far beyond WooCommerce coupons. Six discount types, unlimited rules, no coupon codes required.
Every rule has a targeting section where you specify: which users it applies to (roles, user IDs, or User Lists), which products it covers (all products, specific products, categories, tags, or Product Lists), optional cart total conditions, optional quantity conditions, and a schedule. Rules fire automatically when all conditions match — no coupon code needed.
Rules are evaluated in priority order — lower priority number = applied first. You can set whether to apply all matching rules (stackable) or stop after the first match (exclusive). Configure this per rule under Rule Behaviour → Stop Processing.
No. Customer-Specific Pricing always takes precedence over Discount Rules when a per-customer or per-company price is set. This is intentional — negotiated contract prices should never be overridden by general promotional rules. Use Discount Rules for broad wholesale tiers and Customer Pricing for individual contracts.
Set unique negotiated prices for individual customers or entire companies, completely overriding the WooCommerce catalogue price.
Go to B2B Commerce Kit → Customer Pricing → Add Rule. Select the target type (User or Company), select the company, choose the product, and enter the price. The price can be a flat amount or a percentage adjustment off the regular price. All users assigned to that company immediately see the new price.
Yes. Use the CSV import tool under Customer Pricing → Import. The template columns are: user_id or company_id, product_id, price, price_type (flat or percentage). Download the template from the import screen.
A streamlined order form that lets B2B buyers add products by SKU, paste a list of SKU+quantity pairs, or upload a CSV — without browsing the catalogue.
By default it appears as a tab under My Account → Bulk Order. You can also embed it anywhere with the shortcode [woob2b_bulk_order]. There's a dedicated page template option in Settings if you want a full-page order form.
Two columns: SKU and Quantity. Headers are optional. The plugin validates each SKU against your catalogue and flags unrecognised or out-of-stock items before adding to cart. Download a template from the Bulk Orders screen.
Yes. Use the variant's specific SKU (e.g. TSHIRT-RED-L) in the SKU field or CSV. The form resolves the variation automatically and adds the correct variant to cart with the requested quantity.
Saved shopping lists designed for repeat B2B purchasing. Create, manage, and share lists across team members — then reorder everything in one click.
Purchase Lists are designed around the B2B repeat-order workflow, not gift tracking. They support company-wide sharing (so the whole team pulls from the same list), store quantities alongside products, and have a one-click "Add All to Cart" action. Standard WooCommerce wishlists don't support any of these.
Yes — unlimited named lists. Common patterns include "Monthly Cleaning Supplies," "Q1 Restock," and "Emergency Backstock." Each list stores product IDs and default quantities. Lists are accessible from My Account → Purchase Lists.
A B2B-native loyalty system. Award points for purchases, account actions, and milestones. Customers redeem them as store credit at checkout.
Points are awarded for:
You can set per-role earning multipliers so VIP buyers earn faster than standard wholesale customers.
Optionally. You can set an expiry period (e.g. 12 months from earning date) under Settings → Points & Rewards → Point Expiry. Customers receive an email reminder before points expire. Disable expiry to run a permanent loyalty programme.
Targeted notification banners and announcement bubbles displayed across your store, scoped by user role, page, or customer segment.
You can target by user role, User List, specific page (product, category, cart, checkout, My Account), login status, and date range. This lets you show a "Wholesale Flash Sale" banner only to logged-in wholesale customers on product pages, without affecting retail visitors.
Yes. Set Dismissible to on when creating a bubble. Dismissed state is saved to the user's session or, for logged-in users, to their account meta so it stays dismissed across sessions. You can reset dismissed state from the bubble admin screen.
B2B Commerce Kit is built for every kind of wholesale and B2B operation. Here are the most common ways merchants use it.
Set tiered pricing by customer role (Bronze, Silver, Gold, Platinum). Enforce minimum order quantities per case. Gate pricing behind login. Offer Net 30/60 terms with credit limits per account. Let reps place orders on behalf of customers using sub-accounts.
Discount Rules → Company Credit →Lock down your catalogue from public view using Hide Price and Private Catalogs. Require approved B2B registration before buyers see pricing. Set negotiated contract prices per customer. Run PO approval workflows for large orders. Issue RFQs for custom-configured products.
RFQ System → Private Catalogs →B2B buyers reorder the same products every month. Purchase Lists let them save and reorder in one click. Bulk Orders lets them paste a SKU list or upload a CSV. Conversation Bubbles alert them to new stock or promotions relevant to their segment.
Purchase Lists → Bulk Orders →Enforce case-pack ordering (step of 12, 24, etc.) using Inventory Rules. Set different prices for restaurant chains vs independent venues using Customer-Specific Pricing. Auto-remove tax for tax-exempt hotel operators. Restrict certain products to specific distributor tiers using Private Catalogs.
Inventory Rules → Customer Pricing →Restrict product visibility to verified, credentialed buyers using Private Catalogs and Custom Registration with document upload. Enforce minimum order values. Use Tax Exempt Management for registered medical entities. Gate payment methods — Invoice only for approved accounts.
B2B Registration → Payment Rules →Customers request quotes for custom-branded items. RFQ with file upload fields (logo, artwork) lets them specify exactly what they need. PO Approval ensures large custom orders are signed off. Customer-Specific Pricing locks in agreed rates per client for repeat runs.
RFQ System → PO Approval →Contractors and builders know their SKUs — Bulk Orders with SKU search is faster than browsing. Order Restrictions enforce project minimums ($500+ per order). Payment rules show "Invoice" only to trade account holders. Points & Rewards builds loyalty with trade customers who reorder frequently.
Bulk Orders → Points & Rewards →Restrict certain products to licensed buyers using Private Catalogs and Custom Registration (upload licence document). Disable specific shipping methods (e.g. no air freight) for hazardous items using Payment & Shipping Rules. Enforce quantity maximums per order for compliance.
Private Catalogs → Order Restrictions →Each store is a sub-account under the head-office parent. Sub-accounts place orders independently; head office sees all orders on one dashboard and approves anything above a set threshold. Shared credit line across all locations. Purchase Lists shared company-wide for approved product selections.
Sub-Accounts → Company Credit →Yes — this is the primary purpose of the Discount Rules Engine. Create a rule targeting a User Role or User List, set the discount type and amount, and prices adjust automatically for those customers on product pages and in cart. No coupon codes, no manual intervention.
Yes. Customer-Specific Pricing lets you set an exact price (or % adjustment) for any user or company on any product. This overrides all discount rules. Use it for negotiated contract pricing — the customer sees their agreed rate on the product page and at checkout.
Yes. Use a Quantity-Based Percentage rule. Set tiers: 10–24 units = 5% off, 25–49 = 10% off, 50–99 = 15% off, 100+ = 20% off. The discount applies automatically when the customer's quantity hits each threshold. You can have unlimited tiers per rule.
Yes. Every Discount Rule has optional Start Date/Time and End Date/Time fields. Set them and the rule activates and deactivates automatically — no manual intervention needed. Combine with a Usage Limit to cap total redemptions.
Yes. Rules apply to products and their variations. You can target a parent product (all variations get the discount) or target a specific variation's product ID. Variation prices on the product page update to show the discounted rate.
Yes. The Hide Price module lets you replace the price and Add to Cart button with a custom message (e.g. "Register for wholesale pricing") for non-logged-in visitors or specific roles. Combine with Custom B2B Registration for a complete gated catalogue.
Yes. Use Custom B2B Registration with an approval workflow. New registrants are assigned a "Pending Approval" role that cannot access pricing or checkout. Once you review and approve, upgrade them to your Wholesale role. Combine with Hide Price to ensure they see nothing until approved.
Create three User Roles: Wholesale Bronze, Wholesale Silver, Wholesale Gold. Create a Discount Rule for each role with different discount percentages (e.g. 5%, 10%, 15%). Assign customers to their appropriate role. Customers see prices adjusted for their tier automatically — no coupons required.
Yes. Use Sub-Accounts. The customer account is the parent; the sales rep is a sub-account linked to it. The rep can place orders that draw from the parent's credit line. The parent approves orders above a threshold. All orders appear on the parent's dashboard.
Yes. Add a File Upload field to your Custom B2B Registration form for the certificate. Separately, Tax Exempt Management lets customers self-certify or submit certificates for review, and automatically removes tax from their orders once approved.
User Roles are WordPress-level access controls (set per user). User Lists are manually curated groups that can cross-cut roles — e.g. "VIP Accounts" that includes some Silver and some Gold customers. Rules can target either. Use Roles for broad tier-based pricing; use Lists for bespoke targeting like "Customers in our loyalty scheme" or "High-spend Q3 accounts".
Yes. Order Restrictions lets you set a minimum cart subtotal or total (including tax/shipping) for specific roles or all users. The customer sees a clear message on the cart page and checkout is blocked until the minimum is met. Set custom messaging like "Wholesale orders require a minimum subtotal of $250."
Yes. Inventory Rules lets you set a Quantity Step per product. Set step = 12 and the quantity selector only allows 12, 24, 36, etc. Combine with a Minimum Quantity of 12 and a Default Quantity of 12 for a complete case-pack enforcement setup. Show a custom message explaining the requirement.
Purchase Lists are the best tool for this. A customer can build a list from any past order, then reorder everything with one click each time. For true "repeat from order history", instruct customers to add their frequent products to a named Purchase List — it's faster than browsing history and supports quantity presets.
Yes. PO Approval Workflows has a Require PO Number setting that adds a mandatory PO number field to checkout for eligible roles. The PO number is stored on the order and appears on order confirmation emails and the admin order screen.
Yes. Payment & Shipping Rules lets you show or hide any payment gateway by User Role. Create a rule that hides all gateways except "Invoice" for your Wholesale role, and hides "Invoice" for all other roles. Customers only see the payment options appropriate to their account type.
Yes. Private Catalogs lets you assign products or categories to a catalog that is only visible to specified roles, User Lists, or individual users. Non-authorised users cannot see these products in search, categories, or via direct URL. Run multiple private catalogs simultaneously with different visibility rules.
Enable Company Credit & Net Terms. Set the global default to Net 30. Create a Company Account for the customer and set their credit limit. Assign their WordPress users to that company. They'll now see "Company Credit" at checkout, and every order deducts from their available balance. At month-end they pay and you record the payment manually.
Yes. Enable Interest in Settings → Credit Settings. Set the interest rate (% per period) and the calculation method. Interest is calculated on overdue balances and added as a transaction. Customers are notified by email. You can also block new orders while an account has overdue interest.
Yes. Tax Exempt Management lets customers submit a certificate (self-certify or file upload). You review and approve. Approved customers have WooCommerce tax automatically removed from all their orders — no manual editing needed. An audit trail of all approvals is maintained.
Yes. Payment & Shipping Rules lets you show or hide any WooCommerce shipping method by role. Show "Free Shipping" only to your Wholesale role and hide it from retail customers and guests.
All global settings live under B2B Commerce Kit → Settings. The Features tab is the master on/off switch for every module.
No. Toggling a module off removes it from the load path (zero PHP, zero JavaScript) but all its data — rules, company records, quotes — remains in the database. Re-enable the module and everything is exactly as you left it.
When enabled, deleting the plugin from WordPress removes all B2B Commerce Kit database tables and options. Leave this disabled (default) if you want to preserve data during reinstalls or while switching server environments. Enable it only if you're doing a clean removal.
Licenses are per active WordPress installation, billed annually. Starter covers 1 site, Professional covers 3 sites, Agency covers unlimited sites. All plans include every module and update access for the license period. License keys are entered under B2B Commerce Kit → Settings → License.
Yes. Every module exposes a REST API under the /wp-json/b2b-commerce-kit/v1/ namespace. Full endpoint documentation is available at docs/rest-api. Authentication uses standard WooCommerce API keys or WordPress application passwords.
Submit a ticket from your FlikCode account dashboard or email [email protected]. Support is staffed 24/7 by engineers who work directly on the plugin. Average first response time is under 4 hours. Priority and dedicated support are available on Professional and Agency plans respectively.
Yes. See docs/migration for step-by-step guides covering role mapping, pricing rule recreation, and order history preservation. We recommend running both plugins simultaneously in staging for one billing cycle before removing the old one on production.