#nopCommerce

The checkout is only the beginning of a nopCommerce project

Zulu Shack illustration for “The checkout is only the beginning of a nopCommerce project”: basket and crates

There are two ways to underestimate a nopCommerce project.1 One is to think a new theme will solve everything. The other is to decide that, because the platform is customizable, absolutely everything should be customized.

Both can produce an impressive quote. Neither is a particularly good starting point.

For a business considering nopCommerce 4.60 in late 2023, I’d begin with the work surrounding an order. Shipping rules, customer roles, approvals and staff exceptions often determine whether the system is worth using long after everyone has stopped commenting on the homepage.

Choose the right home for each business rule

Take a hypothetical supplier serving consumers and trade customers. They share a catalog, but some customers need different delivery arrangements and an internal approval before an order proceeds.

Before choosing plugins, describe what must happen:

  • Identify which customer roles can use each service or offer.
  • Define when an order becomes an operational commitment.
  • Name the person or system authorized to approve an exception.
  • Explain how a changed order affects payment, stock and dispatch.
  • Show staff what to do when an external service fails.

Those are requirements someone can demonstrate. Make it flexible is more of a mood.

Use configuration when the platform already fits

Check existing settings first. nopCommerce has established mechanisms for store configuration and customer roles. The plugin system also allows capabilities such as payment methods and shipping calculations to be added.

If the business rule fits an existing option, use it and test it. Custom code isn’t automatically more valuable because it was written specifically for you.

Configuration has a maintenance advantage when it expresses the rule clearly. Staff can see the setting, the development team understands its scope and the next upgrade has less bespoke behavior to carry forward.

The catch is pretending an almost-right setting is right enough. If staff must repair every fifth order afterward, the saving deserves a second look.

Buy an extension when the fit survives a demonstration

An existing plugin can be a sensible purchase. Verify its supported platform version, configuration, maintenance arrangements and actual behavior before treating the marketplace description as a specification.

A shipping-rate plugin may return a price perfectly well and still leave your warehouse’s dispatch process untouched. A plugin called Approvals may mean something rather different from the approval your accountant has in mind.

As nopCommerce Silver Partners, we’ve put this into practice. See the nopCommerce store we built for Freddy’s Jewelry.

Ask the supplier to demonstrate your normal case and your difficult one. Check what happens after a timeout, a cancellation or a change of customer role.

The cheaper option is the one that does the required work over its useful life. The lowest purchase price gets a vote, not a veto.

Build the part that makes the business different

Custom development earns its place when a central rule cannot be represented cleanly through configuration or an appropriate extension.

Treat that work as a complete feature. An approval button needs permissions, validation, recorded decisions, staff visibility and a recovery path. The button itself is usually the least argumentative member of the group.

Jimmy Bogard’s vertical-slice approach offers one way to organize related concerns around a particular use case.3 It is an architectural option, not a claim that nopCommerce automatically structures every customization that way.

What matters to the business is that the team can explain the feature, test it and change it without surprising unrelated workflows.

Worth reading next: nopCommerce 4.90: where the new quoting workflow could help B2B stores.

Use it whenCheck before committing
ConfigurationThe rule fits an existing nopCommerce setting or customer roleStaff aren’t repairing every fifth order afterwards
Extension (plugin)It does the required work in your normal case and your difficult oneSupported version, maintenance, and behaviour after a timeout, cancellation or role change
Custom buildA central rule can’t be represented cleanly any other wayPermissions, validation, recorded decisions, staff visibility and a recovery path
Where should each business rule live?

Decide whether the stores should share the office

nopCommerce supports multiple storefronts within one installation and shared administration. That can suit related brands or markets with common operating responsibilities.

It also means shared decisions need care. A product or setting changed for one store may affect another unless its scope is understood. Separate installations can be worth considering where stronger operational independence matters.

Don’t make this decision by counting domain names. Ask who owns the catalog, who controls releases and which rules genuinely differ.

Before approving the project, walk one order from the storefront into the back office, then repeat the walkthrough with an exception. Put each rule in its proposed home and ask how it will be maintained.

You may finish with a small amount of custom code and a great deal of careful configuration. That’s a perfectly good outcome. The objective is a business that runs better, not a platform that can put More Bespoke on its business card.

Turn reading into results

Like what you’re reading? Let’s put it to work on your brand.