nopCommerce and ECI M1 integration

We build nopCommerce ecommerce sites that connect directly to ECI M1 through M1’s Public API. Customers, pricing, stock, orders and invoices stay in step between the two, and M1 remains the system of record. It suits manufacturers who’ve outgrown a basic web ordering portal and want a proper B2B or B2C store without re-keying anything into the ERP.

Book a discovery call

Who this is for

M1 is built for discrete and make-to-order manufacturers, and those businesses rarely sell simply. Trade customers have their own price agreements, some accounts are on hold, orders still arrive by phone, and product ranges have sizes, options and revisions that a standard online shop doesn’t understand.

If your web ordering is a separate island from M1, or someone on your team spends part of every day copying orders and payments between systems, this is the problem we solve.

What connects

The exact scope is agreed with you, but a typical nopCommerce and M1 integration covers the following.

AreaDirectionWhat it does
Customer accountsBoth waysNew web customers are created in M1 automatically, and changes customers make to their details online are written back.
Credit holdM1 to siteCustomers on hold in M1 can’t place orders online.
Products and categoriesM1 to sitePart numbers, categories, options and tax status come from M1 on a schedule, so the catalogue follows the ERP.
Stock and lead timesM1 to siteStock status and per-part lead times shown on product pages.
Customer-specific pricingM1 to sitePrice rules by customer or customer group, and by part or product group, as fixed prices or percentage discounts.
Web ordersSite to M1Orders are written into M1 with the chosen shipping method and cost. A declined payment never creates an order.
Phone and sales ordersM1 to siteOrders entered directly in M1 appear in the customer’s online account alongside their web orders.
Invoices and paymentsBoth waysCustomers see their invoices and balances, pay open invoices by card, and the payment is recorded against their account in M1.
ShippingSite to M1Live carrier rates based on weight and dimensions, with the result carried onto the M1 order.

Catalogue and pricing data typically refreshes every 15 to 30 minutes. Orders go to M1 at checkout.

How we build it

An ERP integration usually looks fine on launch day. The hard part is keeping it right as your business changes, so these are the principles we build to.

M1 stays the system of record. Products, prices and trade accounts are mastered in M1. The website reads them and doesn’t compete with them.

Your catalogue isn’t hard-coded. The integration reads what M1 holds rather than a fixed list of your products and options, so a new size, option or range added in M1 appears on the site in the next sync without development work.

Changes you didn’t plan for get flagged. If a field starts being used in M1 that the site doesn’t yet handle, you get an alert rather than a silent gap that a customer finds first.

Checkout never waits on M1. Prices are resolved on the site from synced rules, so product pages stay fast. If M1 is unreachable when an order is placed, the order is queued and sent as soon as it’s back, and the customer’s checkout still completes.

Nothing disappears by accident. A sync that would remove a large part of the catalogue stops and raises an alert instead of unpublishing products.

Changing ERP later is contained. All the M1-specific logic sits behind one layer, so if you move to a different ERP in future, the website doesn’t need rebuilding.

It’s monitored. Sync health is watched, and a stale price feed or a failed order push raises an alert rather than waiting to be noticed.

Why nopCommerce

nopCommerce is an open-source ecommerce platform built on Microsoft .NET. It handles B2B and B2C on one site, with customer roles, tiered pricing, multiple stores and a full admin your team can use without a developer. Because it’s open source, there’s no per-order licence fee and the integration code can go as deep as M1 needs, which is where hosted platforms and off-the-shelf connectors tend to run out of room.

Working with M1’s API

M1’s Public API is capable, but it has quirks that matter for ecommerce. List calls are paged and capped, filtering is limited, and fields that a business has customised don’t always appear in the published API specification. We plan around these from the start, so the integration is built on how the API actually behaves rather than how the documentation suggests it should.

You’ll need API access to M1 and a test environment, which are arranged through ECI. We’ll tell you exactly what to ask for.

Why Stratoworks

We’re a small, senior consultancy with more than 20 years of ecommerce and software delivery, much of it on nopCommerce. We’ve built and run complex nopCommerce platforms for manufacturers, including multi-channel B2B and direct-to-consumer sites that have come through acquisition-level technical due diligence.

We also host and support what we build, on AWS, so the people who designed your integration are the ones looking after it.

How it works

  1. Discovery call. We talk through how you sell today, how you use M1, and what the site needs to do.
  2. Scope and proposal. A fixed scope, timeline and price, written around your M1 setup.
  3. Build. Developed against your M1 test environment, with regular reviews.
  4. Launch and support. Go-live, then ongoing hosting, maintenance and monitoring if you want it.

Let’s talk about your project.

Whether you know exactly what you need or you’re still working it out — start with a conversation.

Book a discovery call

Frequently asked questions

Can nopCommerce integrate with ECI M1?

Yes. nopCommerce can connect to ECI M1 through M1’s Public API, so customers, pricing, stock, orders and invoices stay in sync between the website and the ERP. Stratoworks builds these integrations as a service, scoped to how each manufacturer uses M1.

Is this an off-the-shelf plugin?

No. It’s a service. Every M1 business sets the system up differently, so we scope and build the integration around yours rather than selling a generic connector.

Is the integration real-time?

Orders are sent to M1 at checkout. Catalogue, stock and pricing data is synchronised on a schedule, typically every 15 to 30 minutes, which keeps the website fast and means it doesn’t depend on M1 being available for every page view.

Can it handle customer-specific pricing from M1?

Yes. Price rules held in M1 by customer or customer group, and by part or product group, are synchronised to the site, so each logged-in customer sees their own contracted prices, including group-level discounts.

What happens if M1 is unavailable?

The website keeps trading. Orders placed while M1 can’t be reached are queued and sent automatically once it’s back, and the problem raises an alert so it’s dealt with quickly.

Can customers pay invoices for orders placed by phone?

Yes. Invoices are read from M1, including orders that never went through the website, and customers can pay them online. The payment is recorded against their account in M1.

Do we need to involve ECI?

Usually only to arrange API access and a test environment for M1. We’ll give you a clear list of what to request.

Is Stratoworks affiliated with ECI?

No. Stratoworks is an independent consultancy. We build integrations that use M1’s Public API.

ECI and M1 are trademarks of ECI Software Solutions, Inc. Stratoworks Ltd is not affiliated with or endorsed by ECI. nopCommerce is a trademark of its respective owner.