Skip to content

Build & Replatform · Ecommerce development

B2B ecommerce agency for distributors and manufacturers.

As a B2B ecommerce agency, we put distributor and manufacturer catalogs online with what trade buyers expect: company accounts, customer-specific price lists, quotes, net terms, quick reorder and punchout, with the ERP as the source of truth for stock and price. We build on Adobe Commerce, Magento Open Source, Shopify, BigCommerce or custom code, whichever fits the catalog.

Last reviewed

What a B2B ecommerce build includes

A retail store shows one price to everyone. A trade store shows each account its own price, to buyers who already know the part number and expect to pay on terms. B2B ecommerce website development is the work of closing that gap.

Trade buyers already order electronically. The Census Bureau's 2024 figures, released in September 2026, put e-commerce at $4,649.4 billion of US manufacturers' shipments (66.6 percent) and $4,224.1 billion of merchant wholesale sales (38.3 percent), against $1,182.9 billion (16.6 percent) in retail. Census counts orders placed over EDI networks, extranets and email as e-commerce too, so the website is one ordering channel among several, and a B2B build has to serve all of them.

What trade buyers expect, and what we build:

  • Company accounts and buyer roles. One company, many buyers: who can order, who approves, who pays the invoices.
  • Customer-specific catalogs and price lists. Contract prices, quantity breaks and the products each account is allowed to see.
  • Quotes and approvals. Buyers request a price, sales negotiates, and an accepted quote becomes an order without re-keying.
  • Net terms and credit. Pay on account against a credit limit the ERP enforces.
  • Quick order and reorder. SKU entry, saved lists, and last month's order again without hunting for it.
  • Punchout and EDI. For buyers whose procurement system won't let them shop your website directly.

Every item on that list reads from or writes to the ERP, which is why our B2B ecommerce development services start with the sync, not the storefront.

Which platform fits your B2B catalog

B2B capabilities by platform · As of
CapabilityAdobe Commerce B2BMagento Open Source plus extensionsShopify B2BBigCommerce B2B EditionCustom
Company accounts and buyer rolesNative Company accounts with divisions, users, roles and permissions; a parent company can manage its subsidiaries. 5Extension Not in Open Source core. Adobe's B2B modules, company accounts included, are an Adobe Commerce-only feature; a third-party extension or custom module adds them. 8 6Native Companies with locations and contacts; each contact gets Ordering only or Location admin per location. 18Native Admin, Senior Buyer and Junior Buyer roles in the Buyer Portal, plus custom roles. 26Custom Modeled on your real account structure, ERP hierarchy included.
Customer-specific catalogs and price listsNative Shared catalogs set custom prices per product for different companies; company accounts must be enabled. 5Extension Customer groups, tier prices and catalog price rules are in core. Per-company shared catalogs come with Adobe's Commerce-only B2B modules; an extension or custom module adds them. 10 12 8Native Catalogs with quantity rules and volume pricing. Basic to Advanced: up to 3 active across B2B markets. Plus: unlimited, assigned directly to companies and locations. Basic to Advanced also need new Shopify Markets. 19 17Native Price lists applied to customer groups, and customer groups associated with companies. 26Custom Each account's prices read from the ERP, however the contracts are written.
Quotes and approvalsNative Negotiable quotes (company accounts required) and purchase-order approval rules by role. 5 7Extension Not in Open Source core (its Quote module is the cart). Negotiable quotes and purchase-order approval rules are Commerce-only B2B modules; an extension or custom module adds them. 12 8App No buyer quote request in Shopify's B2B docs. Draft orders take custom line-item prices, and a location can send every order to you for review. 16 21Native Quote requests from the Buyer Portal; Junior Buyers submit shopping lists for approval. 27 26Custom Your approval chain, with as many levels and spending limits as each buying organization requires.
Payment termsNative Pay on Account against a company credit line, with credit managed per company. 5Extension Purchase order and bank transfer methods are in core, with no approval workflow or credit line. Company credit is a Commerce-only B2B module; an extension or custom module adds it. 14 8Native Net 7, 15, 30, 45, 60 or 90, due on fulfillment, or a fixed date on draft orders. Deposits: Plus only. 20 17Native Company terms from Due on receipt to Net 60, a credit hold and a cap on purchase-order orders; credit used isn't tracked, so the balance has to be synced from the ERP. Invoice portal: pay by card, ACH or PO. 26 25Custom Terms and credit limits read from the ERP at checkout.
Quick orderNative Quick Order by product name or SKU, plus requisition lists for repeat orders. 5Extension Reorder from order history is in core. SKU-entry quick order and requisition lists are Commerce-only B2B modules; an extension or custom module adds them. 12 8Native Quick order list: quantities across one product's variants, on free themes 11.0.0 or later. Cross-catalog SKU entry is app or custom work. 22Native Order by SKU or from previous purchases in the Buyer Portal, plus shopping lists. 27Custom SKU pad, CSV upload and reorder, built around how your buyers order.
Punchout Add-on on every platformExtension Not in Adobe's B2B feature list: an extension or middleware adds it. 5Extension Not in core or in Adobe's B2B extension: an extension or middleware adds it. 5App Not among Shopify's B2B features: an app or middleware adds it. 16App Not in the B2B Edition feature list: an app or middleware adds it. 25Custom cXML or OCI punchout, built to each buying organization's procurement system. 30 31
Configure-to-order Rules layer custom on every platformCustom Configurable and bundle products are native, and B2B quotes carry them from the cart. Option rules beyond pre-built variants and live lead time are custom. 9 7 8Custom The same product types (Adobe marks only gift cards as Adobe Commerce only) and the same custom rules layer. 9Custom Options and variants are native. Option rules, live lead time and a buyer quote request are app or custom work. 23 16Custom Up to 600 variants per product, plus modifiers with price and weight rules. Build rules and lead time are custom. 28Custom A declarative rules engine built for your catalog.
ERP sync pattern Integration work on every platformCustom Built on the REST API, whose asynchronous endpoints write requests to the message queue. 11Custom The same asynchronous REST processing ships in core, in the WebapiAsync module. 13Custom Built on the GraphQL Admin API; bulk operations export large data sets as JSONL, with a webhook when each finishes. 24Custom Built on the B2B Edition Management API, server to server: companies, users, orders, quotes, invoices and shopping lists. 29Custom Queue-first, with idempotency keys, designed around your ERP's API.

Each vendor cell links that vendor's own documentation, checked on the last-reviewed date. Native means the vendor documents the feature as built in; Extension and App mean an add-on; Custom means code written for your store. The Custom column describes a bespoke build; only its punchout cell cites sources, the cXML and OCI specifications.

Start with the line in Shopify's help center that matters most for B2B. Shopify B2B is available on the Basic, Grow, Advanced and Plus plans, but below Plus you can assign up to 3 active catalogs across all your B2B markets; unlimited catalogs and direct assignment to companies and locations are Plus features. A distributor with contract pricing per account is a Plus conversation from the start.

The five columns, briefly:

Three rows no vendor covers out of the box. Punchout isn't in Adobe's, Shopify's or BigCommerce's B2B feature lists, configure-to-order rules beyond pre-built variants are custom on every platform, and the ERP sync is an integration project everywhere. So read the matrix by rows: mark the ones your buyers can't work without, then see which column covers them natively and what the rest takes to build.

Leaning Magento? Our page on Magento B2B: Open Source plus extensions or Adobe Commerce B2B goes row by row. Leaning Shopify? We do Shopify B2B builds, and we'll say early if your catalog count means Plus.

The ERP is the source of truth

Who owns which record · As of
RecordSystem of recordSync directionWhat breaks when it drifts
Contract prices and customer price listsERPERP → store, synced or looked up liveCheckout shows a price the invoice won't honor.
Stock and available-to-promiseERP or WMSERP or WMS → storeOverselling, or "in stock" on back-ordered parts.
Company accounts, credit limits and termsERP for the company, ship-tos, terms and credit; the store for buyer logins, roles and approval rulesERP → store; new registrations store → ERP for approvalAn account on credit hold still checks out on terms.
OrdersStore until submitted, then ERPStore → ERPA dropped message loses an order; a blind retry ships it twice.
Order status, shipments and trackingERP, WMS or shipping systemERP, WMS or shipping system → storeBuyers call for a status the portal should have shown them.
Invoices and paymentsERPInvoices and payment status ERP → store; online payments store → ERP (payment references, never card data)Paid invoices still show as open, and collections chases an account that paid.
Quotes and configurationsWherever quotes start (store, CPQ, CRM or ERP) until accepted, then an ERP sales orderSet per project; an accepted quote always lands in the ERPAn accepted quote gets re-keyed by hand, errors included.
Product content: descriptions, attributes, imagesPIM, or the store without one; SKU, unit and cost stay in the ERPPIM → store; SKU master ERP → PIMFilters break when one attribute arrives in three spellings.

In a B2B store the website is a window onto the ERP. Price, stock, credit and the customer record usually live there; the store displays them and sends orders back. When two systems both think they own a price, the buyer sees the wrong one and the invoice disagrees with the checkout.

So we write the ownership table before any code: every record, the system that owns it, the direction it syncs and what breaks when it drifts. The version on this page is where we start; every ERP adds rows of its own.

The failures that cost money are the quiet ones. A timeout drops an order and nobody notices until the customer calls. A retry sends it twice and the warehouse ships both. A price-list update half-applies overnight and the morning's orders go out at the old prices. We build every sync through a queue with idempotency keys, so a retried message is recognized instead of creating a duplicate, and every message lands in a log a person can read. A new sync runs in shadow beside the old one until the numbers match; then we cut over.

Proof: ERP syncs made several times faster, with silent data loss eliminated.

We work in NetSuite over REST, SuiteQL and SuiteScript, and connect Sage, QuickBooks, Dynamics 365 Business Central and other ERPs with an API the same way. The method in full is on our ERP integration page.

Quotes, CPQ and configure-to-order

CPQ stands for configure, price, quote. In a B2B store it means the buyer builds the product they need, sees a real price and lead time, and gets a quote sales can stand behind, without an email thread.

Simple quoting is built into Adobe Commerce B2B and BigCommerce B2B Edition, and an extension or app adds it on Magento Open Source and Shopify: the buyer asks, a rep adjusts the price, the accepted quote converts to an order. Configure-to-order is harder, because everything depends on the rules that say which options work together. Most rule sets we inherit are maintained by hand, exception by exception, and every new option makes them worse.

How CPQ for B2B ecommerce works when we build it:

  1. Only valid builds. The rules decide which options can combine, so a buyer can't configure, and sales can't quote, a product that can't be made.
  2. Live price and lead time. Price comes from the buyer's own price list, and lead time from the stock and components behind the build, both read from the ERP.
  3. Quote to order to ERP. An accepted quote becomes an order with the full configuration attached, and the ERP receives a sales order nobody has to re-key.

The rules live in data, each constraint written once and tested like code. That's the difference between CPQ ecommerce your sales team trusts and a configurator they quietly work around.

Proof: Sprawling hand-maintained configurator rule sets replaced by a small declarative rules engine.

Ecommerce for distributors

Distributors sell other people's products, often a long tail of them, to buyers who search by part number and leave when the first search fails. B2B ecommerce for distributors comes down to five jobs:

  • Part-number search. Your SKU, the manufacturer's part number and the cross-references buyers actually type should all land on the same product, with dashes, spaces and case ignored, so "ABC-123" finds "abc123".
  • Large attribute sets. Filters only work on clean data: one unit per attribute, one spelling per value. Most distributor catalogs we see arrive with neither, so attribute cleanup and SKU reconciliation are part of the build, not an afterthought.
  • Units of measure. Buyers order by the case, the price list quotes per each, and the ERP stocks by the box. The store has to convert all three the same way the ERP does, or totals stop matching invoices.
  • Contract pricing. Each account's prices and quantity breaks come from the ERP, show after login and hold at checkout.
  • Dealer and rep channels. Sales reps order on behalf of their accounts and see what each one bought; dealers buy at their own tier.

Platform vendors' guides to choosing an ecommerce platform for distributors each recommend their own. We don't sell a platform, so our answer is the matrix on this page: count the rows your accounts need natively, and the shortlist writes itself.

Ecommerce for manufacturers

Ecommerce for manufacturers adds a problem distributors don't have: your dealers are your customers and, once you sell direct, your competition. A dealer portal gives them their pricing, stock and order history; a direct store sells to end buyers. Channel conflict is a pricing and routing decision before it is a website feature. Decide which orders stay with the dealer, which ship direct and which price each audience sees, then make the store enforce it with dealer locators, territory rules and a price list per channel.

Configurable products are the other half: build-to-order items, where the configure-to-order rules above apply. Our B2B portal development usually starts with the dealer portal, because dealers already order by phone and email and moving them online changes nobody's margin. Dealer and direct orders then land in the same ERP with the channel recorded.

Punchout and EDI for procurement buyers

Some buyers can't shop your website at all: every order starts and ends in their e-procurement system.

  • Punchout. The buyer clicks through from their procurement system, builds a cart at their contract prices and sends it back for approval. It runs on cXML, whose own site calls PunchOut "widely-used", or on SAP's Open Catalog Interface (OCI) for SAP-based buyers. With cXML the approved purchase order usually comes back as a cXML order; OCI returns only the cart, so that order reaches you separately, by EDI, email or cXML.
  • EDI. Larger trading partners exchange documents instead of carts: X12 850 purchase orders in; 855 acknowledgments, 856 ship notices and 810 invoices out.

Either way, those orders should land in the ERP against the same price list as web orders. Punchout orders usually come through the store's order queue. EDI often runs through an EDI provider straight into the ERP; sending it through the store's queue instead is a per-project design choice.

B2B ecommerce consulting and replatforming

B2B ecommerce consulting, the way we run it, produces documents you keep whether or not we build: your requirements as matrix rows, ranked; the data-ownership table for your ERP; an RFP any agency can answer; and a platform recommendation with the reasons written down. If the honest answer is to stay on your current platform and fix the data, the recommendation says so.

A B2B replatform has two things to lose: customer pricing and rankings. Pricing survives when price lists, account mappings and terms migrate from the ERP rather than the old store, and every account's prices are checked against an ERP export before cutover. For rankings, what we control is the map: every old URL, part-number pages included, gets a permanent redirect to its new address, as Google's site-move guidance recommends, and Google still says to expect some movement while it recrawls. We test every redirect on staging and crawl again after launch.

More on replatforming a B2B store without losing customer pricing, and on how an engagement runs.

B2B ecommerce questions

What should a B2B ecommerce RFP include?

Six sections: your business and buyers (accounts, roles, how they order today); the B2B capabilities you need natively, ranked; your ERP and which system owns price, stock, customers and orders; integrations such as punchout, EDI, tax and shipping; catalog size and data quality, with a sample export attached; and how you will score the replies. Ask every bidder to answer row by row, so the proposals compare like for like.

How do you choose a B2B ecommerce platform?

List the B2B features your buyers can't work without, then check which platform covers each one natively and what the rest takes to build. Weigh the ERP connection, catalog size and your team's skills above the demo. Two documented limits settle many shortlists early: below Shopify Plus you get up to 3 active B2B catalogs, and Adobe supports its B2B extension on Adobe Commerce only. The capability matrix on this page compares all five options row by row.

What is the best B2B ecommerce platform for distributors?

The one that covers your must-have B2B features natively. Per-account contract pricing points to Adobe Commerce B2B, Shopify Plus or BigCommerce B2B Edition, because Shopify's Basic, Grow and Advanced plans stop at 3 active B2B catalogs. Heavy configure-to-order or unusual pricing logic points to Magento (Open Source or Adobe Commerce) with custom modules, or a custom build. Whichever wins, part-number search and the ERP sync decide whether buyers use it.

What are the biggest B2B ecommerce challenges?

Three come up on almost every project. ERP data quality: the store can only show the prices and stock the ERP holds, and gaps surface as wrong prices at checkout. Pricing rules: contract prices, tiers and promotions collide in ways nobody wrote down. Sales-rep adoption: reps who fear losing credit steer accounts back to email. Clean the data first, write the rules down, and credit reps for web orders from their accounts.

How should search work on a B2B catalog?

Part numbers first. An exact match on your SKU, the manufacturer's part number or a known cross-reference should outrank everything else, with dashes, spaces and case ignored, so "ABC-123" finds "abc123". Then attribute filters built on clean, consistent values and units. Then synonyms for the trade terms your buyers use. Review the zero-result searches regularly; that report is your to-do list.

What goes into a business case for B2B ecommerce?

The inputs, measured from your own systems: order volume by channel; what it costs to take an order by phone, email or fax versus online; the share of orders that are reorders; sales-rep time spent on order entry; error and return rates from re-keying; which accounts will self-serve first; and the build, license and running costs of each platform option. Real ERP numbers beat industry averages every time.

How much does a B2B ecommerce build cost?

It turns on five drivers: catalog size; the number and depth of integrations, from the ERP to punchout, EDI, tax and shipping; how much customization the platform needs to cover your B2B requirements; the quality of the data you start with; and the team on your side. We scope from a written audit, not a price range. Our cost guide covers what the market typically charges, with sources.

Sources

  1. 1 US Census Bureau: 2024 Annual Integrated Economic Survey, table AIES00ECOM (E-commerce for Employer Firms in the U.S.), data file · checked
  2. 2 US Census Bureau: 2024 AIES data tables · checked
  3. 3 US Census Bureau: Latest data releases, 2026 · checked
  4. 4 US Census Bureau: E-Stats methodology (definition of e-commerce) · checked
  5. 5 Adobe Experience League: Introduction to Adobe Commerce B2B · checked · ↑ back
  6. 6 Adobe Experience League: Install the Adobe Commerce B2B extension · checked · ↑ back
  7. 7 Adobe Experience League: Negotiable Quotes · checked · ↑ back
  8. 8 Adobe Commerce developer docs: B2B integrations · checked · ↑ back
All 33 sources
  1. 9 Adobe Experience League: Create a product (product types) · checked · ↑ back
  2. 10 Adobe Experience League: Catalog price rules · checked · ↑ back
  3. 11 Adobe Commerce developer docs: Asynchronous web endpoints · checked · ↑ back
  4. 12 Magento Open Source on GitHub: core modules (app/code/Magento) · checked · ↑ back
  5. 13 Magento Open Source on GitHub: WebapiAsync module · checked · ↑ back
  6. 14 Magento Open Source on GitHub: OfflinePayments module · checked · ↑ back
  7. 15 Shopify Help Center: B2B · checked
  8. 16 Shopify Help Center: Overview of B2B features on Shopify · checked · ↑ back
  9. 17 Shopify Help Center: Shopify B2B features by plan · checked · ↑ back
  10. 18 Shopify Help Center: Creating and managing B2B customers using companies · checked · ↑ back
  11. 19 Shopify Help Center: Catalogs and pricing in B2B · checked · ↑ back
  12. 20 Shopify Help Center: Setting up payment terms in B2B · checked · ↑ back
  13. 21 Shopify Help Center: Creating B2B orders using draft orders · checked · ↑ back
  14. 22 Shopify Help Center: Adding the Quick order list section to your theme code · checked · ↑ back
  15. 23 Shopify Help Center: Variants · checked · ↑ back
  16. 24 Shopify developer docs: Perform bulk operations with the GraphQL Admin API · checked · ↑ back
  17. 25 BigCommerce App Marketplace: B2B Edition · checked · ↑ back
  18. 26 BigCommerce developer docs: Company entities and relationships · checked · ↑ back
  19. 27 BigCommerce developer docs: Introduction to the Buyer Portal · checked · ↑ back
  20. 28 BigCommerce: Variants and modifiers · checked · ↑ back
  21. 29 BigCommerce developer docs: B2B Edition Management API overview · checked · ↑ back
  22. 30 cXML.org: Commerce XML resources · checked · ↑ back
  23. 31 SAP: Open Catalog Interface (OCI), Release 5.0 · checked · ↑ back
  24. 32 X12: Transaction sets · checked
  25. 33 Google Search Central: Site moves and migrations · checked

Last reviewed

Send us your ugliest price list. Tell us the platform, the ERP and how your buyers order today. We'll reply in writing with the B2B features that matter for your accounts and how we'd build them.