Problems & solutions · ERP

Wholesale Showroom and Order Book Problems: The 7 That Cost Real Money, and How to Avoid Them

Wholesale Showroom Management Software architecture and database illustration showing common problems and fixes.
The short answer

The most expensive failure in a wholesale order book build is feeding available to sell from a static file exported at the start of the season. Pre-book orders are written against goods that do not exist yet, so the only honest availability figure is the factory commitment minus what has already been written, adjusted for the vendor's current promised date. When a factory slips and nothing updates, sales keeps writing against units that will never arrive and the shortage becomes visible at allocation, which is the worst possible moment because the orders are already confirmed to buyers.

Why does the order book get modelled as an ecommerce cart?

Because most software teams have built a cart and very few have built a season. A cart line is a product and a quantity. A wholesale order line is a style, a colourway, a delivery window with a start ship and a cancel date, and a size run across eight to fourteen sizes with different quantities in each. Flatten that into product and quantity and you have created a system where a buyer's routine request, meaning move the whole delivery two weeks later or take the size run up one because the fit ran small, becomes forty manual edits.

The damage is not only in the editing. Reps stop using the system for anything a buyer might change, which is everything, so the master order book goes back to being a merge job done by two people in the back office in the days before the factory buy. That buy is the whole company, since placing it too small means cancellations and a buyer who does not open the next appointment, and placing it too big means branded seasonal goods sold off far below list.

The fix is to insist the model carries style, colour, delivery window and a size curve as distinct first class concepts before any screen is designed. Then bulk operations are one action instead of forty. Shift a window. Apply a size curve to a whole category. Copy last season's buy for an account and adjust. Ask a prospective developer to draw an order on a whiteboard, and if those four concepts are not all present within two minutes, they are about to build you a cart.

What goes wrong migrating product data and season history?

Product data is the schedule risk that sinks these projects, and the arithmetic is unforgiving. A style with eight colourways and twelve sizes is ninety six individual units, and a four hundred style season is therefore a very large catalogue that currently lives in at least three incompatible places: a design spreadsheet, a linesheet document, and an enterprise system with different codes for the same thing.

The failures are consistent. Colour names differ between the design file and the enterprise system, so matching by name produces duplicates and orphans. Size scales differ by category, meaning apparel, footwear and accessories cannot share one lookup. Carry over styles exist under two identifiers because somebody re-created rather than re-used them. And historic orders reference styles that no longer exist, so migrating them produces order lines pointing at nothing.

The fix is to run product data as its own workstream with a named owner, starting before development, and to establish a single identifier convention that every source maps into rather than trying to reconcile three conventions after the fact. Migrate historic orders for reporting and for repeat buying patterns, and accept that some will reference retired styles which need marking as legacy rather than repaired. Then time the go live between seasons rather than in the run up to market, because a catalogue load that slips during market week is a catastrophe rather than a delay.

Why do trading partner and warehouse integrations break after launch?

Electronic data interchange is not a standard in the way the name suggests. Each major retailer runs its own implementation and its own routing guide, so a purchase order, an order acknowledgement, an advance ship notice and an invoice with one partner tells you very little about the next one. Anyone who says it is all the same has not shipped it.

The failure after launch is chargebacks, deducted from your remittance without a conversation. The usual mechanism is a mismatch between the advance ship notice and the physical cartons, which happens whenever the notice is generated from an optimistic export rather than from what the warehouse packed. Label data, consolidation points and appointment booking are the other routine causes, each a routing guide detail that changed without your team being told.

Warehouse integration fails in the same place from the other direction. If your third party logistics provider cannot report real carton contents back, the shipment notice can never be accurate and no amount of order book quality will fix it.

The fix is to generate the advance ship notice from confirmed carton contents rather than from the order, and to record every chargeback against the account with its reason code from day one. You cannot argue a deduction you cannot report on, and a meaningful share of them are disputable. Then treat each trading partner as its own scoped piece of work with its own testing cycle, priced individually.

What happens when credit holds and channel restrictions are not covered?

These two gaps produce the cancellations that get blamed on the factory.

Credit is the one that surprises brands. An account is fine when the order is written in February and on hold when the goods ship in August, and if credit status is not visible against the order book, the first person to discover it is the warehouse operative trying to pick. By then the units have been reserved against that account for months and are unavailable to everybody who could have taken them. The correct behaviour is to remove held accounts from the allocation pool before allocating rather than after, which requires credit status to be a live attribute of the account rather than a report finance runs monthly.

Channel and territory restrictions are the one that becomes a legal problem rather than an operational one. When a style is exclusive to one retailer, or barred from an off price channel, or not distributed in a particular market, showing it to the wrong account is a breach rather than an embarrassment. Systems that handle this with separate catalogues per account fail as soon as the catalogue count grows, because somebody eventually generates the wrong one.

The fix is to express visibility as attributes on the account applied against a single product master, so a linesheet is a filtered render generated on demand and always current, and to enforce the restriction at order entry rather than catching it in review. Prices should come from a matrix of currency, region and account tier for the same reason.

Should you build custom or configure what you already own?

If you are an emerging or mid sized brand under roughly 150 doors, selling mostly to independents, with straightforward assortment rules and no trading partner mandates, do not build. Brandboom is well suited to that and costs a fraction of a build. JOOR is worth paying for on retailer network access alone if buyer discovery is a growth lever for you, and RepSpark fits a heavily multi line rep model. Building your own order book at that size is a distraction from selling.

Be clear about what those platforms are, because the criticism is not that they are weak. NuORDER and JOOR do digital catalogue, showroom presentation and order capture genuinely well, and most brands should keep using one even after they build. They are order capture layers. They do not own your factory commitment, your allocation policy, your credit position or your delivery window exposure, so those remain in spreadsheets and in the head of one person in operations.

The signals that justify building are specific. Your order book drives a factory commitment large enough that being wrong by ten percent hurts materially. You regularly allocate short goods and the policy is currently a person at eleven at night. You sell to majors with routing guides and chargebacks. Your channel restrictions are contractual. Or you run wholesale and direct to consumer competing for the same units, which no wholesale platform will ever arbitrate.

The sensible architecture keeps the showroom platform for presentation and buyer discovery, with your build owning the order book, supply commitments and allocation, and orders flowing in through an integration rather than being re-keyed.

How do hidden costs get into the quote?

The order entry screens are the visible cost. These are the ones that move the total.

  • Each trading partner. Priced individually, because every retailer's implementation and routing guide differs and each carries its own testing cycle. A single line item called electronic data interchange will be revised.
  • Product data cleanup. A large catalogue spread across a design spreadsheet, a linesheet and an enterprise system with different codes needs a real workstream before development.
  • Multi entity and multi currency. A European and a North American business sharing an assortment but not a price list is structurally more work than one business in one currency.
  • Warehouse integration. This decides whether the advance ship notice can be generated from real carton data, which decides your chargeback exposure.
  • Season timing. Going live between seasons rather than before market is a scheduling constraint with real cost implications if it means waiting.
  • Chargeback reporting. Recording reason codes and building the dispute view is work, and it is work that pays for itself.

Ask for these itemised before comparing any two proposals.

What separates a build that works from one that fails here?

The builds that change the business get one thing right early: the factory commitment is a real object with a promised date, not a number in a file. When a vendor moves a date, every order touching that window is flagged immediately with the accounts affected shown in dollars. That single feature is the one wholesale operations people ask for first once they see it, because a call to a buyer eight weeks out is a negotiation and the same call at ship time is a cancellation.

Second, allocation is expressed as a policy that runs and proposes rather than a decision a person makes under pressure. Protect complete size runs over spreading fragments, respect exclusivity and channel restrictions, remove credit held accounts before allocating, honour cancel dates, weight by account tier. Then let a human override with a recorded reason. The value is not automation, it is that the same policy applies every time and you can explain it to an account that lost out.

Third, run allocation as a simulation before anything is committed, so the commercial team can see who gets hurt while there is still time to make a different choice. Brands that skip the simulation step end up with allocations that are technically correct and commercially damaging.

Fourth, ask what a developer has integrated by name, meaning a specific retailer's implementation, a specific logistics provider, a specific enterprise system. Trading partner work is measured in weeks each. And settle code ownership in writing before kickoff, covering the repository and the cloud accounts, because your order book commits your production cash and it should not sit inside an account controlled by an agency.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Across 1,471 IT projects the average cost overrun was 27%, but one in six projects was a 'black swan' with an average cost overrun of 200% and a schedule overrun of nearly 70%. Source: Harvard Business Review (Bent Flyvbjerg & Alexander Budzier, University of Oxford) (2011) →
  2. Large companies globally have captured, on average, only 31% of the expected revenue lift and 25% of the expected cost savings from their digital and AI transformations - a significant gap between expected and realized value. Source: McKinsey & Company (2023) →
  3. WordPress powers 41.5% of all websites and holds 59.2% of the market among sites running a known content management system, making it by far the most-used CMS on the web. Source: W3Techs (2026) →
  4. Median SaaS spend reached $9,455 per employee, and organizations leave an average of 36% of their SaaS licenses unused. Source: Zylo (2026) →
Olivia R. · Senior Product Designer · Sydney

Olivia is a senior product designer working on the software side of Digital Heroes: dashboards, admin tools, internal systems and the screens people use all day rather than once. She writes about designing for repeat use, where speed and clarity matter more than a striking first impression.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

Why do our wholesale orders cancel at ship time?

Usually a factory date slipping past a retailer's cancel date combined with an account moving onto credit hold between order and delivery, with neither event visible against the order book until the warehouse tries to pick. Both are structural rather than operational failures. Hold the factory commitment with its promised date as its own object, make credit status a live attribute of the account, and flag every affected order in dollars the moment either changes.

What is wrong with modelling an order like an ecommerce cart?

A cart line is a product and a quantity, while a wholesale order line is a style, a colourway, a delivery window with start ship and cancel dates, and a size run across many sizes. Flatten that and a buyer's routine request to move a delivery or adjust a size run becomes dozens of manual edits, so reps stop using the system for anything a buyer might change. The master order book then reverts to a merge job before the factory buy.

How long does product data cleanup take before a build?

Treat it as its own workstream starting before development rather than a task inside it. A style with eight colourways and twelve sizes is ninety six units and a four hundred style season is a large catalogue currently split across a design spreadsheet, a linesheet and an enterprise system with different codes. Establish one identifier convention that every source maps into, rather than trying to reconcile three conventions after data has already been loaded.

Why do chargebacks keep arriving after we automate shipping documents?

Because the advance ship notice is being generated from the order rather than from what the warehouse actually packed. Any mismatch between the notice and the physical cartons produces a deduction, and it is taken from your remittance without a conversation. Generate the notice from confirmed carton contents, which requires your logistics provider to report them back, and record every chargeback against the account with its reason code so you can argue the disputable ones.

How should allocation of short goods be handled?

As a policy that runs and proposes, with a human able to override and a reason recorded. Worthwhile rules include protecting complete size runs over spreading fragments, respecting exclusivity and channel restrictions, removing credit held accounts before allocating rather than after, honouring cancel dates and weighting by account tier. Run it as a simulation first so the commercial team can see who loses while there is still time to choose differently.

Do we still need NuORDER or JOOR if we build?

Usually yes, and ripping them out is rarely worth it. Presentation, buyer discovery and the market week experience are what those platforms are built for, and replicating them adds cost without adding much. The sensible architecture has your build owning the order book, supply commitments and allocation, with orders flowing in from the showroom platform through an integration rather than being re-keyed by somebody in the back office.

How should channel and territory restrictions be enforced?

As visibility attributes on the account applied against a single product master, enforced at order entry rather than caught in review. Separate catalogues per account fail as soon as the count grows, because somebody eventually sends the wrong one, and when a style is contractually exclusive to a retailer that is a breach rather than an embarrassment. Prices should work the same way, from a matrix of currency, region and account tier rather than a spreadsheet per market.

When should a wholesale order book go live?

Between seasons, never in the run up to market. A catalogue load or an integration issue that slips during market week is a catastrophe rather than a delay, because your entire commercial calendar depends on those two weeks. Plan the cutover against your season calendar first and let the development schedule fit around it, and run the previous process in parallel through the first full pre-book cycle before retiring it.

What happens to my ERP if the agency shuts down or we part ways?
If ownership was set up correctly, nothing breaks: you hold the source code, the system runs in cloud accounts you own, and handover documentation lets a new team take over. Insist on repository access from day one, admin ownership of all hosting and third-party accounts, and documentation as a contract deliverable rather than a favor. This is the single most important clause to check before signing an ERP contract.
Should I pick Microsoft Dynamics 365 Business Central or build a custom ERP?
Pick Business Central if you already live in the Microsoft stack, your processes are close to standard, and around $80 per user per month for Business Central Essentials stays affordable at your headcount. Build custom when your revenue-driving workflow, such as custom manufacturing steps or unusual pricing logic, would need heavy extension work anyway. In our experience, once Dynamics customization quotes pass about $100,000 the custom option deserves a serious side-by-side.
Is SAP overkill for a mid-sized company?
For most companies under about 500 employees, yes. SAP S/4HANA is built for multi-entity, multi-country enterprises with implementations measured in years and seven figures, while SAP Business One, the mid-market product, still forces your processes into its mold. If your competitive edge lives in how you operate, a custom ERP scoped to your actual workflows ships faster and costs a fraction of an SAP program.
Can custom software connect to the tools we already use, like QuickBooks, Stripe, and Google Workspace?
Yes, and connecting your existing tools is one of the main reasons to build custom: mainstream platforms like QuickBooks, Stripe, Shopify, and Google Workspace all publish documented APIs. Budget 1 to 3 weeks of work per integration depending on API quality and how much data flows in both directions. Ask any vendor whether they have integrated with your specific tools before, because quirks like QuickBooks' OAuth token handling and API rate limits get learned on someone's project, and it should not be yours.
What mistakes kill ERP projects most often?
The three we see most in rescue work at Digital Heroes: recreating the old system's broken process in new software, launching everything at once instead of module by module, and having no single internal owner with authority to decide. A fourth is skipping the parallel run on data migration to save two weeks, which trades a short delay for months of distrust in the numbers. None of these are technical failures, which is why vendor selection should weigh process discipline over demo polish.
Is custom software more secure than off-the-shelf SaaS?
Neither is secure by default; security tracks the practices of whoever builds and operates the system, not the model. SaaS gives you the vendor's certifications and patching but puts your data in a shared multi-tenant platform on their terms, while custom gives you full control over data residency, access rules, and compliance requirements like HIPAA, with the responsibility sitting with you and your agency. Before hiring anyone for a system holding sensitive data, ask for their security checklist: encryption at rest and in transit, an OWASP Top 10 review, role-based access, and a penetration test before launch.
Who owns the source code if an agency builds my ERP?
You should, in full, and it must be written into the contract as work for hire with IP assignment on payment. At Digital Heroes every client receives the complete repository, database schemas, and deployment documentation, so they could hand the system to another team tomorrow. Walk away from any ERP proposal built on the agency's proprietary platform with ongoing license fees, because that recreates the vendor lock-in you were escaping.
How many developers does it take to build an ERP?
A typical Digital Heroes ERP pod is five to seven people: two or three backend engineers, one frontend engineer, a QA engineer, a project manager, and a part-time architect and designer. Bigger teams rarely go faster on ERP because the bottleneck is decisions about your business rules, not typing speed. What you need on your side is one empowered internal owner who can answer process questions within a day.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
How do I calculate the ROI on a custom ERP?
Add up three lines: hours of manual work removed at loaded labor cost, subscription licenses you cancel, and error costs like mispicks and double entry that disappear. In Digital Heroes delivery experience, mid-market ERP builds typically reach payback in 18 to 30 months, faster when they replace a per-seat platform at 30 or more users. Run the math over five years, because that is where a one-time build beats recurring licenses decisively.
What happens to my software if the agency shuts down or we stop working together?
Nothing dramatic, if the engagement was set up correctly: the code sits in your repository, hosting runs on your cloud account, and a handover document explains how to deploy and operate the system. Any competent replacement team can then take over in days rather than months. If the agency controls the repo, the servers, or the domain, fix that now, because renegotiating access during a dispute is the most expensive place to discover the problem.
Can I build my product on a no-code tool like Bubble instead of hiring developers?
For testing whether anyone wants the product, yes, and Bubble's paid plans start at $29 a month, which is the cheapest validation you will ever buy. The ceiling arrives with complex data relationships, heavy integrations, performance at a few thousand users, and the fact that you cannot export a Bubble app to servers you control. A path many Digital Heroes clients take: prove demand on no-code, then rebuild custom once revenue justifies it, treating the no-code version as a paid prototype rather than a foundation.
Who can build a custom ERP software system?

Digital Heroes builds custom ERP software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other ERP software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?