Skip to content
Creatuity
Back to Insights

Why Shipping Quotes Are Wrong in Your Adobe Commerce + P21 Store (And How to Fix It)

If your B2B customers are seeing inaccurate shipping rates at checkout, the problem is almost always in how Adobe Commerce and Epicor P21 share data. Here's what's actually going wrong and how to fix it.

You’ve invested in connecting Epicor P21 to Adobe Commerce. Orders sync. Inventory is live. Customer-specific pricing works. But your B2B customers keep calling about shipping quotes that are clearly wrong — and your sales reps are spending hours correcting freight charges after the fact.

This is the most common post-integration problem we see in Adobe Commerce + P21 deployments, and it’s almost never a single bug. It’s a systemic gap in how product, warehouse, and customer data flows between your ERP and your shipping logic.

Here’s what’s actually happening and how to fix it.

The Root Cause: Shipping Needs Data That Lives in Three Places

Accurate B2B shipping quotes require data from three separate systems, and most integrations only connect two of them:

  1. Epicor P21 holds the authoritative product weights, dimensions, warehouse locations, customer freight terms, and carrier account information.
  2. Adobe Commerce holds the cart contents, shipping address, and customer session.
  3. Your shipping/rating engine (whether it’s built into Adobe Commerce, a carrier API, or a tool like ShipperHQ) needs all of that data combined to generate an accurate quote.

The typical failure mode: Adobe Commerce calls the carrier API with product weights and dimensions that are either missing, stale, or defaulted to placeholder values — because the P21 sync didn’t include shipping-critical attributes, or the middleware dropped them during transformation.

The Five Most Common Shipping Quote Failures

1. Missing or Incorrect Product Weights and Dimensions

P21 stores product weights and dimensions, but many integration connectors don’t map these fields to Adobe Commerce by default. If your product catalog sync only pulls SKU, name, price, and inventory — and skips weight, length, width, and height — every shipping calculation is working with incomplete data.

The fix: Audit your P21-to-Adobe Commerce product sync. Confirm that weight, ts_dimensions_length, ts_dimensions_width, and ts_dimensions_height (or your equivalent P21 fields) are mapped to the corresponding Adobe Commerce product attributes. Run a report on products with null or zero weights in Adobe Commerce — if it’s more than a handful, your sync has a gap.

2. Warehouse Origin Address Mismatch

When Adobe Commerce calculates shipping, it uses a “ship from” origin. If you’re running multi-warehouse with P21 and Adobe Commerce MSI, the origin address needs to match the warehouse that will actually fulfill the order. If all your quotes are calculated from your headquarters address instead of the fulfilling warehouse, rates will be wrong — sometimes dramatically so for LTL freight.

The fix: Configure Adobe Commerce MSI sources with accurate addresses for each P21 warehouse. Make sure your source selection algorithm runs before the shipping quote — not after. The shipping engine needs to know which warehouse is fulfilling the order to calculate the correct rate.

3. Customer Freight Terms Not Applied

Many B2B distributors have negotiated freight terms with customers: free freight over a threshold, flat-rate delivery for local customers, or “ship on customer’s carrier account” arrangements. These terms live in P21 but are rarely synced to Adobe Commerce.

The result: a loyal customer with a $500 free-freight threshold sees a $147 LTL quote on a $600 order. They call your sales rep. The rep manually adjusts it. Everyone’s time is wasted.

The fix: Include customer freight terms and shipping preferences in your customer data sync from P21. In Adobe Commerce, use customer group rules or a shipping management tool to apply those terms automatically at checkout.

4. LTL Freight Quoting Is Missing Entirely

Small parcel shipping (UPS, FedEx) works reasonably well out of the box in Adobe Commerce. LTL freight — which is how most B2B distributors ship large or heavy orders — does not.

Default Adobe Commerce doesn’t support freight class (NMFC codes), pallet configuration, liftgate requirements, or residential delivery surcharges. If you’re shipping palletized orders and your checkout only shows small parcel rates, your customers are either overpaying (if they complete the order) or abandoning the cart (if the rates look absurd).

The fix: This is where a purpose-built B2B shipping solution becomes essential. ShipperHQ, for example, connects directly to LTL carriers, handles freight class assignment, calculates pallet configurations, and applies accessorial charges — all at checkout time. We’ve found it to be the most reliable way to deliver accurate freight quotes in an Adobe Commerce + P21 environment.

5. Shipping Rules Don’t Account for Hazmat or Oversized Items

Distributors who sell hazardous materials, oversized items, or items with special handling requirements face an additional layer of complexity. P21 tracks hazmat flags and special handling codes, but if those attributes don’t make it into Adobe Commerce, the shipping engine has no way to apply surcharges, restrict carriers, or flag orders for special processing.

The fix: Map P21 hazmat flags, freight class overrides, and special handling codes to Adobe Commerce custom attributes. Configure your shipping rules engine to use those attributes for carrier restriction and surcharge calculation.

The Stack That Actually Works: Adobe Commerce + P21 + ShipperHQ

After building multiple B2B distributor storefronts, we’ve found that the combination of Adobe Commerce, Epicor P21, and ShipperHQ is the most reliable way to deliver accurate shipping quotes in a B2B distribution environment.

Here’s why:

ShipperHQ sits between Adobe Commerce and the carriers with access to all the data that matters: product weights and dimensions (synced from P21), warehouse origins (mapped to MSI sources), customer freight terms (synced from P21 customer records), and carrier-specific rules (LTL class, hazmat, dimensional weight).

It calculates rates in real time at checkout, using the actual fulfillment warehouse, the actual product dimensions, and the actual customer freight terms. No stale rate tables. No placeholder weights. No post-order manual adjustments.

It supports the full spectrum of B2B shipping complexity: multi-origin quoting, LTL freight with pallet optimization, carrier account shipping (bill to customer’s UPS/FedEx account), and configurable shipping rules per customer group, product type, or order value.

This isn’t theoretical — we run this exact stack in production for B2B distributors. The shipping accuracy improvement is immediate and measurable: fewer customer calls about incorrect quotes, fewer manual adjustments by sales reps, and higher checkout completion rates.

How to Audit Your Current Shipping Integration

If your Adobe Commerce + P21 store is live and you suspect shipping quotes are off, here’s a quick audit:

  1. Pull 20 recent orders where the customer contacted support about shipping charges.
  2. Compare the quoted rate vs. the actual carrier invoice for those orders.
  3. Check the product data in Adobe Commerce for those orders — are weights and dimensions populated and accurate?
  4. Check the ship-from origin — did the quote use the correct warehouse address?
  5. Check customer freight terms — did the customer have negotiated terms that weren’t applied?

If you find systemic issues in any of those areas, the fix is in the integration layer — not in Adobe Commerce’s shipping configuration.

Get a Shipping Diagnostic

Shipping accuracy is one of the highest-ROI fixes you can make to a B2B ecommerce store. Every inaccurate quote costs you — either in margin (if you eat the difference) or in customer trust (if you pass it along after the fact).

Our Commerce Diagnostic includes a detailed shipping data flow analysis for Adobe Commerce + P21 environments. We’ll identify exactly where your shipping data is breaking down and give you a concrete fix plan. It’s the fastest path from “our quotes are wrong” to “our quotes are right.”

About the Author

J

Joshua Warren is CEO of Creatuity, an ecommerce agency specializing in Adobe Commerce and B2B digital commerce. He hosts the Commerce Today podcast and has led 500+ ecommerce projects over 25+ years. View all articles by Joshua →

Related Insights