AI & applications
Custom software or SaaS: a defensible decision
Updated
SaaS wins when the process is largely standard and speed matters more than differentiation. Custom software wins when stable, business-critical logic creates the advantage and a team exists to operate and evolve it. The usual middle ground is a standard platform with a small custom extension.
For commerce teams choosing between an app, SaaS platform, custom application or combined architecture.
Contents
When is this approach the right fit?
For commerce teams choosing between an app, SaaS platform, custom application or combined architecture.
The first step is therefore not tool selection but a decision map. It separates essential processes from habits, names dependencies and shows which parts already sit inside Shopify's standard capabilities. Only the remaining gaps justify apps, middleware or custom development.
NICCOS considers a topic ready for delivery only when the objective, non-goals, owners and acceptance are documented. This prevents a concise page title from turning into an open-ended transformation programme whose effort nobody can explain reliably.
What architecture does it require?
The decision is made per capability rather than for the whole stack. Commodity functions stay standard; differentiating logic sits in a small, decoupled application.
The architecture is shaped around change frequency, outage impact and team ownership. A process that runs every minute needs different guarantees from a nightly catalogue export. Editorial content requires different approvals from a price or an order.
We always plan an observable path: stable IDs, logged state transitions, repeatable processing and a dashboard for exceptions. Without that operating layer, a technically working connection is only a demo rather than a dependable commerce solution.
Which data and process decisions come first?
Portability, export formats, API access and deletion paths must be settled before signing. Data ownership without a practical export is only a clause.
For every relevant object we document source, destination, key, update frequency, conflict rule and error path. It sounds formal, but it removes the late loops caused when two systems hold the same field with different meanings.
Data is not merely migrated or synchronised; it is reconciled against business meaning. Samples must cover variants, taxes, markets, discounts, returns and historical exceptions. A successful import without business reconciliation proves only that files were read.
What does delivery look like from discovery to operations?
The delivery path is deliberately split into verifiable outcomes. Every phase ends with an artefact, a decision or test evidence. The team can change scope without losing the overall plan, and risks become visible before they block the critical path.
The order follows risk: data and processes first, then architecture and prototype, followed by implementation, migration, acceptance and staged rollout. Interfaces are not approved against sample data, and integrations are complete only after failure and recovery paths have been tested.
- Capability matrix with standardisation and differentiation value
- 36-month TCO including internal work
- Data portability and exit assessment
- Prototype for the riskiest custom logic
- Decision paper including the hybrid option
Which risks require active control?
These risks need explicit controls in discovery, testing and monitoring. Before implementation, each one receives an owner, evidence requirement and fallback path.
SaaS lock-in becomes visible only when data or processes need to move.
Custom builds underestimate operations, security and staff turnover.
Feature lists hide the difference between essential process and habit.
What does NICCOS add beyond a standard implementation?
We prefer standard products for interchangeable processes and custom development only where the process demonstrably differentiates. A hybrid answer is usually better than an ideological either-or.
We connect commerce decisions with SEO, data quality, analytics and operations. A solution is not complete when the happy path works. It must be discoverable, measurable, accessible, translatable and understandable to the team after the project.
We also document when the standard is the better decision. Not every requirement deserves custom software, not every data flow needs real-time processing, and not every historical exception should be carried into the target architecture.
How is quality measured before launch?
Acceptance measures are set before implementation and tested with real data. Functional tests alone are insufficient: completeness, speed, fault tolerance and the team's ability to recognise and classify exceptions are what matter.
- Gate 1
- All costs and dependencies are comparable across the same period
- Gate 2
- Data export and provider exit are tested in practice
- Gate 3
- Custom software has an owner, budget and support model
| Check | Expected evidence |
|---|---|
| Gate 1 | All costs and dependencies are comparable across the same period |
| Gate 2 | Data export and provider exit are tested in practice |
| Gate 3 | Custom software has an owner, budget and support model |
Keep exploring
Related playbooks
FAQ
Frequently asked questions
When is this approach useful?
For commerce teams choosing between an app, SaaS platform, custom application or combined architecture. The business value, data ownership and operating model must be explicit before implementation begins. A technology decision without those three points merely pushes unresolved questions into delivery.
How should the project start?
With a short discovery sprint covering current processes, interfaces, volumes, exceptions and acceptance criteria. Capability matrix with standardisation and differentiation value The scope can then be split into testable delivery packages instead of being estimated from a feature list.
Which data must never be maintained twice?
Portability, export formats, API access and deletion paths must be settled before signing. Data ownership without a practical export is only a clause. Every object needs one system of record, a defined direction and an owner for corrections. Double maintenance is not an integration pattern; it is a reconciliation problem waiting to happen.
What belongs in acceptance testing?
Acceptance covers visible behaviour as well as failure modes, permissions, retries, monitoring and realistic data. All costs and dependencies are comparable across the same period The solution is production-ready only after load and partial outages have been addressed.
What is the NICCOS point of view?
We prefer standard products for interchangeable processes and custom development only where the process demonstrably differentiates. A hybrid answer is usually better than an ideological either-or. We prefer understandable standards, a small number of justified exceptions and measurable release gates. That lowers project cost and leaves the internal team with a system it can operate.
Primary sources
Official documentation used for capabilities, constraints and implementation guidance.
Next step
Settle the decision before the build
We assess custom software versus SaaS against real processes, data and operating requirements, then turn it into a deliverable scope with clear release gates.