Clutch4.8/5 ★★★★★
Madgeek
eCommerce

B2B eCommerce — Complex Pricing, Catalog Logic, and Custom Ordering for Wholesale and Distribution

B2B eCommerce requires customer-specific pricing, catalog visibility rules, approval workflows, net terms, and multi-location shipping. Here's what standard platforms can't handle and when to build custom.

Abhijit Das

CEO

B2B eCommerce differs from B2C in five ways that break standard eCommerce platforms: customer-specific pricing where every account has negotiated rates that change by volume tier, catalog visibility rules where different customers see different products and categories, complex ordering workflows with approval chains and purchase order management, net payment terms with credit limits instead of immediate payment, and multi-location shipping with split orders and drop-ship routing. These five areas are where Shopify Plus, BigCommerce, and WooCommerce stop working — not because they lack plugins, but because the data models underneath were built for consumer checkout, not wholesale distribution.

This guide breaks down each complexity area with enough technical depth to evaluate whether your current platform can handle it or whether you need custom development.

What makes B2B eCommerce different from B2C?

The gap between B2B and B2C eCommerce is not a feature gap — it is an architectural gap. B2C platforms assume one price per product, one cart per session, one payment method per order, and one shipping destination per checkout. B2B operations violate every one of those assumptions.

Requirement

B2C

B2B

Pricing

One price per product, visible to all

Per-account negotiated rates, volume tiers, contract pricing

Catalog

All products visible to all shoppers

Account-specific catalogs, restricted SKUs, tiered access

Ordering

Add to cart, pay, done

Multi-step approvals, PO numbers, re-order templates

Payment

Credit card at checkout

Net 30/60/90 terms, credit limits, invoicing

Shipping

Single address per order

Multi-location, split shipments, drop-ship from vendors

User Roles

Individual shopper account

Company accounts with buyers, approvers, admins

Quoting

Not applicable

Request-for-quote, negotiation, quote-to-order conversion

ERP Integration

Optional, simple inventory sync

Required — pricing, inventory, credit, orders all sync bi-directionally

The table above is not a feature wish list — it is the baseline for any distributor or manufacturer selling to other businesses. Every B2B buyer expects these capabilities because their internal procurement systems require them.

How does customer-specific pricing work in B2B eCommerce?

Customer-specific pricing means every account on the platform can see a different price for the same product, calculated from negotiated contracts, volume tiers, and sometimes real-time ERP data. This is the single most common reason B2B companies outgrow standard eCommerce platforms.

A wholesale distributor with 400 accounts might have 400 different price lists. Account A gets 22% off list price on fasteners but only 8% on electrical. Account B gets flat contract pricing on 200 SKUs and list price on everything else. Account C gets volume breaks — buy 100 units at one price, 500 at another, 1,000 at another — and those tiers differ from Account D's tiers for the same product.

The pricing engine must resolve these rules at page load (showing the correct price when a logged-in buyer browses) and again at checkout (recalculating volume discounts after cart changes). That resolution requires real-time access to the pricing data — which usually lives in the ERP, not in the eCommerce platform.

This is where standard platforms fail. Shopify Plus supports price lists but limits the number of them and cannot handle volume-tier recalculation at checkout. BigCommerce B2B Edition handles basic customer groups but cannot represent the kind of per-SKU, per-account contract pricing that distributors need. Both platforms assume pricing lives inside their database — not in an external ERP that is the source of truth.

We built a B2B platform for a wholesale distributor with 12,000 SKUs and 400+ customer-specific price lists. The previous platform required manual CSV uploads for price changes — the custom system syncs pricing from the ERP in real time and recalculates volume discounts at checkout. Price changes that previously took two days of manual work now take zero human effort.

What catalog management features do B2B buyers need?

B2B catalog management is not about listing products — it is about controlling which products each customer can see, search, and order. This is fundamentally different from B2C, where every visitor sees the same catalog.

Catalog visibility rules in B2B typically operate at three levels:

  • Account-level restrictions — Customer A can see categories 1–5 but not 6–8. Customer B sees all eight. This is usually based on the distributor-customer agreement and reflects which product lines the customer is authorized to purchase.
  • SKU-level restrictions — Within a visible category, specific SKUs may be hidden from specific accounts. A distributor might carry a manufacturer's full line but only be authorized to sell certain SKUs to certain regions or customer types.
  • Custom product attributes — B2B products often carry attributes that consumer products don't: minimum order quantities, case pack sizes, lead times, hazmat classifications, country-of-origin data, and compliance certifications. These attributes affect ordering rules and must be displayed per-product.

The data model underneath matters more than the interface. Standard eCommerce platforms store products as flat records with variants. B2B catalogs need a hierarchical data model where a product can belong to multiple catalogs, each with different visibility rules, pricing, and availability — all resolved at query time based on the logged-in account.

Quick-order and re-order functionality is another catalog feature that B2C platforms lack entirely. A procurement buyer placing a weekly restocking order does not want to browse categories and add items one at a time. They want to paste a list of part numbers and quantities, or pull up their last order and modify it. This requires order history tied to the company account (not the individual user) and a bulk-entry interface that validates SKUs, checks availability, and applies the correct pricing — all before the cart is built.

How do approval workflows work in B2B ordering?

In B2C, a customer clicks 'Buy' and the order is placed. In B2B, clicking 'Submit' often starts an approval chain that can involve two or three people before the order reaches the seller. This is not optional — it reflects how companies actually purchase.

A typical B2B approval flow works like this: a buyer (the person who needs the product) builds a cart and submits it as a requisition. If the order total exceeds that buyer's spending authority, it routes to their manager for approval. If the total exceeds the manager's authority, it routes to a director or VP. Once approved, the order is placed with the seller and a purchase order number is generated.

The complexity multiplies when you add these common requirements:

  • Spending limits per user role — buyers can order up to a threshold without approval, but anything above routes to the next level
  • Category-based routing — orders containing hazardous materials might require EHS approval regardless of dollar amount
  • Budget tracking — approved orders deduct from a department or project budget, and the system must reject or flag orders that would exceed the budget
  • Purchase order management — the buyer's company assigns PO numbers that must be captured, validated against their format rules, and carried through to invoicing
  • Blanket orders and scheduled releases — long-term contracts with scheduled delivery dates, where the total quantity and price are agreed upfront but releases happen on a calendar

None of the standard eCommerce platforms support this natively. Shopify Plus has no concept of approval workflows. BigCommerce B2B Edition added basic buyer roles and purchase lists but has no configurable approval routing. OroCommerce is the only platform-grade product that ships with approval workflows, but its workflow engine still requires significant configuration for real-world scenarios.

How much does custom B2B eCommerce development cost?

Custom B2B eCommerce development costs range from $80,000 for a focused platform handling one or two complexity areas to $300,000+ for a full-featured wholesale distribution platform with ERP integration, multi-warehouse shipping, and approval workflows. The cost is driven primarily by three factors: the number of pricing rules and volume tiers, the depth of ERP integration required, and the complexity of the approval and ordering workflows.

ERP integration is typically the largest single cost driver. A one-directional sync (orders pushed from eCommerce to ERP) is straightforward. A bi-directional real-time sync (pricing, inventory, credit limits, and order status flowing both ways) requires building an integration layer that handles conflict resolution, error recovery, and data mapping between two systems with different data models. That integration layer can represent 30–40% of the total project cost.

The cost comparison that matters is not "custom vs platform license fee" — it is "custom vs the total cost of making a platform do what it was not designed to do." We see companies spending $40,000–$60,000 per year on Shopify Plus apps, custom integrations, and workarounds to approximate B2B functionality that still does not work correctly. Over three years, that is $120,000–$180,000 spent on friction, with manual processes still filling the gaps.

When should you build custom vs use a B2B eCommerce platform?

The decision is not about preference — it is about how many of the five B2B complexity areas your business requires. The more areas you need, the less viable a standard platform becomes.

Platform

Pricing

Catalog Rules

Approvals

Net Terms

Best For

Shopify Plus B2B

Basic price lists, limited volume tiers

Company-level catalog limits only

None

Via third-party apps

D2C brands adding a basic wholesale channel

BigCommerce B2B

Customer groups with price tiers

Category-level restrictions

Basic buyer roles only

Built-in invoice portal

Mid-market manufacturers with simple pricing

OroCommerce

Full price engine with contract pricing

Multi-catalog with website-level control

Configurable approval workflows

Native net terms and payment rules

Large distributors willing to invest in platform configuration

Custom Build

Any pricing model — ERP-synced, real-time, contract-based

Full account-level and SKU-level control

Any workflow — multi-level, budget-aware, category-based

Custom terms, credit checks, ERP-integrated invoicing

Distributors with complex pricing and deep ERP dependency

Use a platform when you need basic B2B features — customer groups, simple price lists, purchase lists — and your catalog has fewer than 5,000 SKUs with fewer than 50 customer accounts. The moment you need per-account contract pricing with volume tiers that sync from an ERP, or multi-level approval workflows with budget tracking, you have crossed the line where platforms create more problems than they solve.

The decision framework is straightforward:

  • If your pricing is simple (customer groups, not per-account contracts) and you have no approval workflows: Shopify Plus or BigCommerce B2B Edition will work.
  • If you need full B2B capabilities but can tolerate a slower platform with a steeper learning curve: evaluate OroCommerce — it is the closest a platform gets to real B2B.
  • If your pricing rules are complex, your ERP is the source of truth, and your buyers need approval workflows: custom development is the only path that does not require permanent workarounds.

Net payment terms, credit limits, and invoicing

B2B buyers do not pay at checkout. They place orders against credit terms — Net 30, Net 60, or Net 90 — and receive invoices that they pay through their accounts payable process. The eCommerce platform must support this by checking the buyer's credit limit before accepting an order, generating invoices that match the buyer's expected format, and tracking payment status.

Credit limits are the critical constraint. When a buyer places an order, the system must check their current outstanding balance against their credit limit in the ERP. If the new order would push them over the limit, the order should either be blocked with a notification or flagged for credit review. This check must happen in real time — not after the order is placed — because sales teams waste hours chasing orders that should never have been accepted.

Invoice generation for B2B is not a receipt with a total. Buyers need line-item detail matching their purchase order, tax breakdowns by jurisdiction, freight and handling charges separated, and format consistency that their AP automation tools can parse. Many distributors still receive chargebacks or payment delays because their invoices do not match the buyer's PO — the eCommerce system should enforce PO matching at order entry to prevent this downstream.

Multi-location shipping and order splitting

A single B2B order might ship to three different addresses from two different warehouses, with some items drop-shipped directly from a manufacturer. This is normal in wholesale distribution — and it is exactly what standard eCommerce platforms cannot handle.

Multi-location shipping requires the platform to split a single order into multiple fulfillment groups, each with its own shipping address, carrier selection, tracking number, and delivery date. The inventory check must happen per-warehouse — Item A ships from the East Coast facility, Item B ships from the West Coast, and Item C drops from the vendor — all appearing as one order to the buyer with one invoice.

The buyer also needs address book management at the company level — not per-user. A national retailer placing orders through their procurement team might ship to 200 store locations. Those addresses, with their receiving hours and dock instructions, must be maintained in the system and selectable at checkout without re-entry.

Freight calculation in B2B adds another layer. Consumer shipping uses package weight and destination. B2B shipping uses freight class, pallet count, LTL vs FTL, negotiated carrier rates, and sometimes customer-provided shipping accounts. The platform must support all of these — or integrate with a freight management system that does.

What the ERP integration layer actually requires

Every B2B eCommerce system is only as useful as its connection to the ERP. The ERP holds the source of truth for pricing, inventory, customer credit, and order history. The eCommerce platform is a presentation and ordering layer. Without deep integration, the two systems drift apart within hours — showing prices that do not match, inventory that does not exist, and credit limits that are not enforced.

The integration layer must handle seven data flows:

  1. Pricing sync — ERP to eCommerce, triggered by contract changes or on a schedule, with the eCommerce system falling back to ERP lookup for any price not cached locally
  2. Inventory sync — multi-warehouse availability updated every 5–15 minutes or via webhooks, with safety stock thresholds that prevent overselling
  3. Customer and credit sync — new customer accounts, credit limit changes, and payment terms updated from ERP to eCommerce
  4. Order push — completed orders pushed from eCommerce to ERP as sales orders, with line-item mapping, PO number capture, and shipping instructions
  5. Order status pull — shipment tracking, backorder status, and delivery confirmation pulled from ERP back to eCommerce for buyer visibility
  6. Invoice sync — invoices generated in the ERP pushed to the eCommerce portal for buyer access and payment tracking
  7. Product data sync — new SKUs, updated descriptions, images, and specifications pushed from the ERP or PIM to the eCommerce catalog

Each data flow needs error handling, retry logic, and conflict resolution. When the ERP says a product is priced at $14.50 and the eCommerce cache says $14.25, which wins? When an order fails to push to the ERP, does the buyer see it as confirmed or pending? These edge cases are where B2B eCommerce projects succeed or fail — and they are exactly the kind of detail that platform-based solutions handle poorly because they were designed for a world where the eCommerce system is the source of truth, not a satellite of the ERP.

Madgeek builds custom B2B eCommerce platforms for wholesale distributors and manufacturers whose ordering complexity exceeds what Shopify Plus and WooCommerce B2B plugins can support. If your pricing rules live in your ERP, your buyers need approval workflows, and your shipping involves multiple warehouses — that is the kind of custom eCommerce platform we build.

Written by

Abhijit Das

CEO

Building AI tools for businesses from legacy to new age SaaS startups

LinkedIn ↗

Need a team to build this for your business?