Cross-Platform Topics, E-commerce Strategy & Trends

B2B Ecommerce Portal: The Nine Things Your Accounts Expect to Do Without Calling You

linkedin mariel
Written by
Mariel
calendar icon
November 6, 2026
b2b ecommerce portal the nine things your accounts expect to do without calling you

A B2B ecommerce portal is a logged-in ordering system, not a website with a login screen attached. Its job is to let a company account see contracted pricing, order history, saved lists, and credit terms using data that lives in the ERP, not in the storefront. When any of its nine capabilities returns the wrong number, the account picks up the phone, and the portal has failed at its only job.

For an ecommerce director weighing where to spend the next development budget, that distinction matters more than any feature list a vendor will hand you. Every B2B ecommerce portal capability is really a question about where a piece of data comes from, who owns it, and what breaks if that ownership isn’t respected. Vendor pages will tell you what the portal does. They won’t tell you what it depends on or what it costs to build, and that’s the information that actually determines how you sequence a project.

This guide breaks down the nine capabilities your accounts expect, what each one depends on, and a realistic effort band in developer days for building it on Adobe Commerce, Shopify Plus, and BigCommerce. We’ve built these systems for manufacturers and distributors across North America, and the capability that always gets underestimated is the one most vendor demos skip entirely: what happens when the ERP and the storefront disagree.

What Is a B2B Ecommerce Portal and How Is It Different From a Storefront?

A storefront with a login screen shows the same catalog and the same price to everyone, then remembers a name and an address once someone signs in. A B2B ecommerce portal does something structurally different: it reads pricing, inventory, credit terms, and order history from a system of record, typically the ERP, and presents a version of the catalog that is specific to that one company account.

That distinction is the whole argument of this piece. A storefront personalizes the experience. A portal personalizes the data. If your team describes the project as “adding B2B features to the site,” the scope conversation is starting in the wrong place, because the hard part isn’t the frontend. It’s the data pipeline behind it.

What Are the 9 Things Accounts Expect From a B2B Ecommerce Portal?

Every B2B ecommerce portal we’ve built ends up answering the same nine expectations from buyers, regardless of industry or platform. Each one follows the same four-part shape: what the buyer does, which system holds the authoritative data, what has to be true before the capability works, and a build effort band in developer days.

  1. Contract pricing and account-specific catalogs. The buyer logs in and sees their negotiated rate, not a list price. Data source: the ERP’s pricing engine (customer price books, contract tiers). Dependency: clean customer-to-price-book mapping in the ERP. Effort: 15 to 30 developer days for the sync layer, pushed to the top by multiple price books per customer or multi-currency pricing.
  2. Order history. The buyer reviews past orders by date, product, or status. Data source: the storefront database for online orders, the ERP for orders placed by phone or EDI. Dependency: a defined list of order channels that need to be represented. Effort: 5 to 15 days for online-only history, up to 25 with ERP-sourced channels included.
  3. Reorder from history. The buyer finds a past order and rebuilds the cart in one click. Data source: order history, revalidated against live pricing and inventory. Dependency: products from the original order must still be sellable. Effort: 5 to 10 days.
  4. Saved lists. The buyer keeps a named list of items they order regularly. Data source: the storefront for the list itself, the ERP for pricing at the moment of add-to-cart. Dependency: real-time or near-real-time price validation. Effort: 10 to 25 days.
  5. Quote to order. The buyer requests custom pricing or quantities and converts an approved quote into an order. Data source: the sales team’s quoting workflow, with cost data pulled from the ERP. Dependency: a defined approval workflow on the seller’s side. Effort: 20 to 40 days.
  6. Approval chains. An order routes to a manager before it reaches the seller. Data source: the company hierarchy configured in the portal. Dependency: that hierarchy and its spending limits are documented before build starts. Effort: 25 to 50 days, pushed up by the number of approval tiers.
  7. PO number capture. The buyer enters their internal purchase order number at checkout. Data source: captured at checkout, stored against the order in the ERP. Dependency: the ERP has a field ready to receive it. Effort: 3 to 8 days.
  8. Credit terms and balance visibility. The buyer sees their credit limit and available credit. Data source: the ERP exclusively. Dependency: a sync schedule the finance team has signed off on. Effort: 15 to 30 days.
  9. Invoice access and payment on account. The buyer views open invoices and pays against their account. Data source: the ERP, which generates invoices the storefront never sees natively. Dependency: a payment gateway that supports ACH or terms-based payment. Effort: 20 to 35 days.

Contract Pricing and Account-Specific Catalogs Come First

Contract pricing is the foundation the other eight capabilities sit on, because almost everything else, from reorder to invoicing, assumes the buyer is already seeing the right price. Get this wrong and every downstream capability inherits the error.

On Adobe Commerce B2B, this lives in company accounts and shared catalogs: a company account is assigned a shared catalog with its own pricing, and that structure is native to the platform. Shopify Plus handles it through company profiles and B2B catalogs, which support custom pricing per company but still need a sync layer to stay current with the ERP. BigCommerce uses customer groups tied to price lists, with the same ERP dependency.

Here’s the failure mode we see most often, and it’s worth naming concretely: a price change lands in Epicor Prophet 21, nobody triggers the sync to the storefront, and the portal keeps quoting the old rate for another billing cycle. The buyer orders at the price they see, the invoice reflects the new rate, and your inside sales team spends the next call explaining a discrepancy instead of taking an order. This is why we treat ERP integration as its own project phase, not a line item inside the portal build. Our breakdown of ERP integration architecture patterns and sync frequency covers the sync architecture in more depth, and our breakdown of the Epicor Prophet 21 integration specifically walks through what that pricing sync requires on the ERP side.

Reorder, Order History, and Saved Lists Are What Drive Repeat Logins

If contract pricing is the foundation, reorder, order history, and saved lists are what determine whether an account keeps coming back to the logged-in experience instead of calling your inside sales team out of habit. These three capabilities are related but distinct, and teams often build one and assume the other two follow automatically. They don’t.

Order history is the data. Reorder is the action taken on that data. Saved lists are a third structure entirely, built for buyers who order the same 20 SKUs every month and don’t want to search for them each time. All three depend on a search experience that can handle a SKU-heavy catalog without forcing the buyer to scroll through irrelevant results, which is where a platform’s search infrastructure, such as OpenSearch on Adobe Commerce, starts to matter more than most teams expect. We cover that dependency in more detail in our post on how B2B ecommerce search handles large SKU catalogs.

Adobe Commerce B2B supports all three natively through requisition lists and quick order. BigCommerce B2B Edition also covers all three natively through shopping lists, a quick order pad, and buy again. Shopify supports quick order lists and reorders from customer accounts natively, but saved lists still require an app or a custom build, since it has no native equivalent to requisition lists.

Quotes, Approvals, and PO Numbers Are the B2B Ordering Portal Requirements Nobody Demos

These three capabilities rarely show up in a sales demo because they’re built for friction, not speed. A B2B ordering portal that skips them still looks complete in a walkthrough. It just doesn’t survive contact with an actual purchasing department.

Quote to order exists because B2B pricing is negotiated, not fixed. A buyer requests a rate on a large quantity, someone on the sales side approves or counters it, and the accepted quote becomes an order. Approval chains exist because the person placing the order and the person authorized to spend the money are often different people, and a B2B ordering portal that can’t route an order for sign-off will get bypassed the first time a purchasing manager notices. PO number capture is the simplest of the three, but it’s non-negotiable for any account that runs its own internal procurement tracking: the field has to exist at checkout, and the ERP has to accept what’s typed into it.

Adobe Commerce B2B supports negotiable quotes and purchase order approvals natively, which is one of the clearer differentiators in its favour for accounts running formal procurement processes. BigCommerce B2B Edition includes native quoting, and Shopify can approximate it by submitting orders as drafts for review. Both support PO numbers at checkout, but manager approval chains with spending limits generally require an app or custom development on both.

Why Do Credit Terms, Invoices, and Payment on Account Matter in a B2B Customer Portal?

Credit and invoicing are the capabilities most likely to get pushed to a later phase, and they’re also the ones finance teams care about most. A B2B customer portal that shows accurate pricing but hides the account’s credit position is only solving half the problem for a buyer who’s used to calling accounts receivable to check their balance.

None of the three platforms we build on surfaces ERP credit data natively. That data (credit limits, outstanding balances, available credit) lives in the ERP by design, and a B2B customer portal has to request it through integration rather than storing a copy locally. Adobe Commerce B2B’s Payment on Account feature manages the terms side of this well, letting a company account purchase against a credit line, but the live invoice list still requires a sync from systems like NetSuite OneWorld, SAP Business One, or Sage Intacct. Get the sync frequency wrong, and the B2B customer portal shows a balance that’s already out of date by the time the buyer checks it.

What Does a B2B Self Service Portal Cost to Build on Adobe Commerce, Shopify Plus, and BigCommerce?

Cost is where most conversations about a B2B self service portal go vague, because “it depends” isn’t a number an ecommerce director can put in a budget request. Here’s how the nine capabilities actually break down across the three platforms we build on:

CapabilityAdobe CommerceShopify PlusBigCommerceCaveat
Contract pricing & catalogsNativeNativeNativeAll three still need ERP sync built separately
Order historyNativeNativeNativeOnline orders only; ERP-sourced history needs custom sync on all three
ReorderNativeNativeNativeShopify via customer accounts; BigCommerce via B2B Edition (buy again)
Saved listsNative (requisition lists)CustomNativeNo native equivalent on Shopify Plus
Quote to orderNative (negotiable quotes)CustomNative (B2B Edition)BigCommerce quoting requires the B2B Edition app specifically
Approval chainsNative (purchase orders)CustomCustomAdobe is the only native option among the three
PO number captureNativeNativeNativeNative on all three; making the field required on Shopify needs customization
Credit & balance visibilityCustomCustomCustomAn ERP integration build regardless of platform
Invoice access & payment on accountNative (Payment on Account) + custom ERP syncCustomCustomEven Adobe’s native feature needs ERP-side invoice sync

A B2B self service portal’s real cost lives in the “custom” cells, not the license or the theme. Frontend choices matter too: teams building on Adobe Commerce often pair it with Hyvä to keep frontend performance manageable at scale, and the ERP sync layer itself is frequently built on an iPaaS platform like Alumio rather than a fully custom connector, which shortens the timeline for the capabilities in that credit and invoice row. For a fuller side-by-side of what each platform brings to a B2B build, see our B2B ecommerce platform comparison.

Which of the 9 Capabilities Should You Not Build in Phase One?

Not every capability belongs in a launch scope, and the honest answer for three of them is: do not build these yet.

  1. Quote to order. Building quote-to-order before reorder is the most common sequencing mistake we see, because quoting serves the sales team’s workflow while reorder serves the buyer directly. Launch without it, watch how often accounts actually request custom pricing, then scope it against real demand.
  2. Approval chains. This is the most expensive capability on the list, and it only matters for accounts with a formal internal purchasing hierarchy. Most B2B ecommerce portal launches serve a mix of account sizes, and building approval routing for every account penalizes the smaller ones with unnecessary friction.
  3. Invoice access and payment on account. This depends on the credit and invoice sync being reliable first, and rushing it before that pipeline is proven tends to surface exactly the pricing and balance mismatches this guide is warning against.

Launch with contract pricing, order history, reorder, saved lists, and PO number capture. Everything else earns its place in phase two based on what phase one’s usage data actually shows.

How Do You Measure Whether Your B2B Ecommerce Portal Is Replacing Phone Orders?

A launched B2B ecommerce portal that nobody uses is worse than no portal at all, because it’s a sunk cost that still requires maintenance. Three metrics tell you whether the portal is actually displacing phone and email orders, not just sitting alongside them.

  1. Share of order lines placed online. Target 55 to 65% at 12 months post-launch, in line with the 63.5% of digitally captured orders that go through ecommerce at wholesalers above $15M in revenue (WizCommerce 2026 B2B E-Commerce Benchmark Report). This is also the easiest metric to game, since routing phone orders through the portal on the buyer’s behalf inflates the number without changing buyer behaviour at all.
  2. Logged-in accounts as a share of active accounts. Target 65 to 75% at 12 months. Two-thirds of B2B procurement leaders already make at least half of their purchases online (B2B Online Insights and OroCommerce survey, 2025).
  3. Average inside sales minutes per order. Target a 40 to 50% reduction at 12 months. Suppliers interviewed by Hobson & Company reported an 80% reduction in time spent on purchase order management after moving to integrated B2B ordering.

If you want the underlying cost model behind these targets, including how per-order handling cost factors into the ROI case, our post on the B2B self service portal walks through that calculation in more detail.

Where Should You Start With a B2B Portal If Your Accounts Still Email Their Orders?

If your accounts are still emailing purchase orders to an inbox someone checks manually, the honest first move isn’t a full B2B portal build. It’s a capability audit against the nine items in this guide: which ones do your accounts already expect from other suppliers, which ones does your ERP actually support today, and which one is generating the most phone calls right now.

That audit usually surfaces the same pattern: contract pricing and order history are the two capabilities accounts notice fastest when they’re missing, and they’re also the two with the shortest path to build. A B2B portal earns its budget by removing the calls your team is fielding today, not by matching a competitor’s feature list. We run this kind of audit with manufacturers and distributors before we scope anything, because it tells us which of the nine capabilities to sequence first, and it usually changes the plan.

Support

Frequently Asked Questions

Everything you need to know about migrating your Shopify store to Magento, answered by our experts.

How much does a basic B2B ecommerce portal cost to build?

A launch scope covering contract pricing, order history, reorder, saved lists, and PO number capture typically runs 40 to 90 developer days combined, depending on ERP complexity and platform. Adobe Commerce tends to reduce cost on the native capabilities; Shopify Plus and BigCommerce shift more of that budget into custom development.

How long does a B2B ecommerce portal implementation take?

Most launch-scope builds run 12 to 20 weeks from discovery to go-live, driven primarily by how clean the ERP’s pricing and product data are before the project starts.

What's the biggest risk in a B2B ecommerce portal project?

Duplicating pricing data into the storefront instead of syncing it live from the ERP. Static or infrequently synced pricing is the single most common source of the invoice-versus-quote mismatches that erode buyer trust.

Who should decide which of the 9 capabilities gets built first?

Whoever owns the relationship between the ERP and the storefront, whether that’s the ecommerce director or an operations lead, since every sequencing decision comes back to what the ERP can reliably sync on day one.

Build a B2B Portal Your Customers Can Actually Rely On

Give your accounts the tools to manage pricing, orders, reordering, and invoices without picking up the phone. Talk to our team about planning a B2B ecommerce portal that fits your business and ERP.

BlobOrange abstract shape
Businessman celebrating a win in front of his laptop

Ready to fix the problems holding your store back?

Book your free discovery call to see how we can build or optimize your eCommerce store and drive your growth.
© 2026 MageMontreal. All rights reserved. Law 25.