Inventory & Channel Sync

ERP vs inventory management system: what's the difference, and when do you need an ERP?

What an inventory management system does, what an ERP adds on top, and the signs an IMS plus QuickBooks or Xero has stopped keeping up.

Last updated November 13, 2026

An inventory management system (IMS) tracks how many units you have and where they are. An ERP tracks that too, then records what those units cost, posts every receipt, shipment, and count adjustment to the general ledger, and runs purchasing, multi-channel orders, and wholesale in the same system. If your IMS count and your books agree at month-end without a manual true-up, an IMS plus QuickBooks or Xero is still enough. If they need a true-up every month, you have outgrown it.

What an inventory management system does

An IMS is a quantity ledger. On-hand by SKU and location. Available-to-sell after open orders. Transfers between warehouses. Reorder alerts. A channel sync that publishes stock to Shopify or Amazon. Better ones add bins, lots, and barcode scanning. What most hold about cost is a unit cost field. They do not own the journal entry. Your bookkeeper rebuilds inventory and COGS in QuickBooks or Xero from an export, a payout report, and a count.

That split is fine while the two numbers stay close. It breaks when they drift, because nothing forces them back together except the person closing the month.

What an ERP adds

An ERP puts the money side of every movement in the same record as the quantity.

  • Accounting and COGS posting. Receiving a purchase order debits inventory. Shipping an order relieves inventory, and COGS posts against it. A cycle count variance posts to an adjustment account with a reason. The inventory asset on the balance sheet is quantity on hand times unit cost, so the valuation report ties to the GL instead of being rebuilt.
  • Purchasing. Purchase orders, partial receipts, and supplier bills matched against what you ordered and what you received before you pay.
  • Multi-channel orders. Shopify, Amazon, and wholesale orders in one queue, drawing from one inventory record, routed to the location that holds the stock.
  • Wholesale and EDI. Retailer purchase orders (850) in. Acknowledgements (855), advance ship notices (856), and invoices (810) out, against the same stock your DTC store sells.
  • Landed cost. Freight, duty, brokerage, and insurance capitalized into unit cost, so COGS reflects what the unit cost to land, not the factory price.

Signs you've outgrown an IMS plus QuickBooks or Xero

Inventory true-ups swing COGS. Your IMS says $412,000 of inventory. The GL says $447,000, because shrink, damages, and returns written off in the warehouse never reached the books. The bookkeeper posts a $35,000 true-up to COGS in March. On a $900,000 month, March gross margin drops almost 4 points for no operating reason, and nobody can say which SKUs caused it.

Landed cost lives in a spreadsheet. The freight and duty invoices arrive after the container is received, often after some of it has sold. Someone allocates them across SKUs in a sheet and posts one journal entry. Unit cost in the IMS stays at the factory price, so SKU margin reports overstate profit on every imported product.

You reconcile channels by hand. Shopify, Amazon, and wholesale each export orders, fees, refunds, and payouts in a different shape. Someone matches them to bank deposits line by line. Channel contribution margin is a quarterly project, not a report.

Wholesale runs outside the system. Retailer POs get keyed in by hand, or an EDI provider sits between your retailer and a system that does not know what you can ship. Chargebacks for late or wrong ASNs start showing up.

Three systems, three on-hands. The IMS, the 3PL portal, and the accounting system each show a different number. Nobody can say which is right without a count.

The close waits on ops. Your accountant cannot close the month until the warehouse sends a count file and someone explains the variance.

When an IMS is still enough

One sales channel. One warehouse or one 3PL. A few hundred SKUs. No wholesale, no EDI, no imported goods with duty. In that shape, an IMS plus QuickBooks or Xero is cheaper and simpler, and an ERP adds process you do not need yet. The test is the true-up. If it is small, predictable, and your bookkeeper closes without waiting on the warehouse, stay.

Revisit when one of these changes: a second channel starts selling the same stock, a retailer requires EDI, you start importing and paying duty, or you add a second location. Each one adds a place where quantity and cost can drift apart.

How this works in Fulfil

Fulfil is an ERP for brands selling across Shopify, Amazon, and wholesale. Inventory, purchasing, orders, the warehouse, and accounting share one record, so the count and the books come from the same transactions.

  • Perpetual inventory accounting. Supplier receipts, customer shipments, transfers between warehouses, and inventory adjustments post journal entries as they happen. Picks, putaway, and bin transfers inside one warehouse move stock without posting. Cost each product on weighted average or standard cost. See COGS tracking.
  • Landed cost. Track freight, duty, insurance, handling, and brokerage against supplier shipments. Post estimates when goods are received, or actuals when the invoice arrives, and allocate by value, volume, or unit. Landed cost capitalizes into weighted-average unit cost.
  • Purchasing. When a purchase order is received, Fulfil creates a draft supplier invoice at the received quantity and PO price, ready for a three-way match against the supplier's bill. Re-order points create draft purchase requests when on-hand plus inbound stock drops below your minimum. See Purchasing and reorder points.
  • Channels. Shopify, Amazon (including FBA inventory), and wholesale orders draw from one inventory record. Quantity available pools hold stock for a specific channel so one channel cannot drain units promised to another. See multi-channel sync, Shopify, and Amazon.
  • Wholesale and EDI. Exchange documents with retailers through native EDI over VAN, AS2, or SFTP, or through a provider such as SPS Commerce or Orderful. See EDI.
  • Warehouses. Run your own building on the built-in warehouse management system and send orders to 3PLs from the same system. Each location is set up as operated or 3PL.

Start with inventory management to see how counts, cost, and channels connect.

Run this with AI

Connect Claude or ChatGPT to your Fulfil data with the Fulfil MCP, then run this prompt on your own numbers.

You are the ops lead for a DTC brand deciding whether to stay on an inventory management system (IMS) plus QuickBooks or Xero, or move to an ERP.
Here is: month, channel (shopify / amazon / wholesale / edi), orders, revenue, active_skus, locations (own / 3pl / fba), inventory_value_ims, inventory_value_gl, cogs_booked, true_up_adjustment, landed_cost_method (spreadsheet / journal / none), hours_reconciling_channels, retailer_pos_keyed_by_hand.
[paste]

Produce:
1. Months where the IMS inventory value and the GL inventory balance disagree, and by how much.
2. True-ups that moved COGS by more than 2% of revenue, and what each did to reported gross margin.
3. Receipts where landed cost was missing, or applied after the units had already sold.
4. A verdict: stay on IMS plus accounting, or move to an ERP, with the one or two signals that decide it.
This is a systems-fit question, not a software bake-off.

See it run on
your data.

Fulfil runs inventory, fulfillment, purchasing, and accounting for scaling DTC brands in one system.