What follows is a decision with three options and no default. The retailer can buy a different ready-made system, build one to its own specification, or keep the current platform and add custom software around the parts that do not fit. All three are legitimate. They differ mainly in what they commit the business to over the next few years.
The choice depends less on technology than most vendor conversations suggest. It comes down to how unusual the operation really is, how much engineering capacity sits in-house, and how fast the change has to land. Teams without that capacity can look at an ecommerce software development company with platform experience rather than a general web agency, because most of the work turns out to be integration. Each route is worth taking on its own terms.
What Off-the-Shelf Platforms Cover Well
Buying is the default for good reason. A hosted platform gives a retailer a working store in weeks, with hosting, updates, security patching, and a payment stack that someone else is responsible for. For a merchant selling a few hundred SKUs through one channel, that is usually the correct answer and stays correct for years.
The pieces a mainstream platform handles well are fairly consistent:
- Catalog, cart, and checkout for standard product types
- Card payments and common wallets, with compliance handled at the platform level
- Basic tax, shipping rate, and discount logic
- Templated storefronts plus a marketplace of third-party apps
- Uptime and scaling through seasonal peaks.
None of that is trivial engineering, and rebuilding it in-house is rarely a good use of budget. Plenty of businesses never need more than this. A catalog that behaves like a catalog, orders that behave like orders, and a finance team that can close the month without help from engineering is a perfectly good place to stay.
Signs the Platform Has Run Out of Room
Trouble tends to announce itself through workarounds rather than outages. Someone maintains a spreadsheet that reconciles two systems. A developer writes a script that runs at 3 a.m., and nobody documents it. Support staff learn which orders to fix by hand.
A few patterns suggest the platform has become the constraint:
- Pricing or fulfillment rules the platform's data model cannot express
- B2B requirements such as customer-specific catalogs, quotes, or credit terms
- Inventory shared across an online store, marketplaces, and a physical shop floor
- App subscription prices that have quietly passed the cost of a small dev team
- Reporting the business needs from data the platform will not expose.
The distinction worth making is between friction and limitation. Friction is a task that takes longer than it should and can be eased with a better process or a paid app. A limitation is something the platform cannot be made to do at any price.
One of these is survivable. Three or four together mean the operation has outgrown the assumptions the software was built on.
When Building From Scratch Makes Sense
Custom development earns its keep when the thing that makes the business money is also the thing no platform supports. Examples include a distributor with contract pricing across 4,000 accounts, a retailer running rental alongside outright sales, and a brand selling configurable products with real manufacturing constraints. In those cases, the software is the business logic, and bending a generic platform around it costs more than writing it properly.
Building also means owning everything that used to arrive free. That includes uptime, scaling, fraud handling, and the full weight of PCI DSS requirements once card data touches infrastructure you control. Most teams shrink that burden by routing payments through a tokenized provider, though the obligation does not disappear. It just gets smaller and more specific.
Timelines deserve the same honesty. A custom commerce backend for a mid-sized retailer is usually a six- to nine-month project before anyone switches live traffic to it, plus a migration plan for historical orders, customer accounts, and the URLs that already rank. Teams who skip that last part often hear about it from their traffic reports.
The real cost of building rarely shows up in the first release. It is the second year, when someone has to keep the thing running.
The Middle Path Most Retailers End Up Taking
Extending sits between the two and gets less attention than it deserves. The retailer keeps the platform that handles catalog, checkout, and payments, then adds custom services around it for the parts that are specific to them. For example, they might add a pricing engine, a middleware layer that talks to the ERP, or a warehouse app that does what the packers actually need instead of what the vendor imagined.
This works because commerce platforms now expose most of their behavior through APIs, webhooks, and app frameworks. The custom work concentrates on a shorter list:
- Integration between the store, ERP, WMS, and accounting systems
- Business rules the platform cannot model, run as external services
- Internal tools for merchandising, customer service, and operations staff
- Data pipelines that move clean records into reporting.
Scoping keeps it under control. The strongest version of this approach starts with a written inventory of what the platform does adequately, what it does badly, and what it refuses to do at all. Only the third column justifies custom code, and keeping that boundary explicit is what stops an extension project from quietly becoming a rebuild.
The trade-off is real. You inherit the platform's roadmap, its rate limits, and its occasional decision to deprecate an endpoint you depend on. Version upgrades stop being routine. Teams who go this way usually keep a written map of every custom touchpoint, because the alternative is rediscovering them during an upgrade weekend.
Four Questions Worth Answering First
Before the architecture debate starts, it helps to settle a few things about the business itself.
- How much of what we do is genuinely unusual? Be specific. "Our workflow is complex" is not an answer. "We price 60 percent of orders against negotiated contracts" is.
- Who will be responsible for maintaining this? If nobody can name a team, custom software becomes a liability rather than an asset.
- What does a month of delay cost? Buying wins on speed. Building wins on fit. The gap between those two is where the number matters.
- What happens if we get it wrong? Extending is usually the easiest to reverse. A full custom rebuild is the hardest.
Answering these before the technology conversation saves a surprising amount of argument later, because most build-versus-buy disputes are really disagreements about the business, not the stack.
How the Decision Usually Lands
In practice, few retailers pick one route and stay there. They buy early, extend as the operation gets more specific, and build custom only for the two or three processes that separate them from everyone else selling similar products. That progression is not indecision. It matches spending to how well the business understands its own requirements.
So the useful question is not which approach is best. It is which parts of your operation are common enough to rent and which are unusual enough to own. Answer that honestly, and the rest of the decision tends to follow.