Sales Channels in Spree Commerce: Sell Everywhere From One Backend

Your customers already buy across your website, your retail locations and their phones. Selling on each surface usually means juggling separate stores and spreadsheets. Spree Commerce Sales Channels run every surface from one backend, with per-channel catalogs and reporting.

Key Takeaways

Last verified: June 2026

The win: customers get one consistent experience across every surface they use.

What it does: each channel keeps its own catalog and reporting on one backend.

Scheduling: a product can go live at the register today and online next month.

Spree Commerce capability: Sales Channels are in the free open source core.

Your customers already shop everywhere. Your backend may not.

Picture the business you actually run. There is the website. There are your retail locations, each with a point of sale. There is a wholesale line for buyers who order by the case. There may be a mobile app, and a seasonal storefront when the calendar calls for one.

Your customers move between all of them without thinking. They find a product on their phone, buy it in one of your retail locations, then reorder online a month later. To them it is one brand. Behind the counter, it is often several systems, or several separate store setups, held together by a spreadsheet someone updates by hand.

That fragmentation is expensive. A Harvard Business Review study of 46,000 shoppers found that omnichannel customers spend more, about 10% more online than single-channel shoppers, and stay worth more over their lifetime. Shoppers routinely cross roughly six touchpoints before they buy. The more surfaces you sell on well, the more those customers are worth.

The catch is the backend. Running each surface as its own system means duplicate catalogs, drifting prices, and no clean answer to “how much did the wholesale channel make this quarter.”

Payments are the sharpest version of the problem. Many chains run one provider online, another in the app, and a third at the register, so refunds, reconciliation, and reporting fracture across three systems that were never meant to talk.

Sales Channels close that gap: one backend behind every surface, each one tracked on its own.

What are sales channels in eCommerce?

A sales channel is a distinct selling surface, such as an online store, a point of sale, a wholesale portal, or a mobile app. Spree Commerce lets one store run several of them at once, each with its own product catalog, publication schedule, and order attribution.

A central Spree Commerce platform feeding Mobile App, Point of Sale, Wholesale, and Online Store channels, each with its own catalog and orders

The key word is distinct. A channel is not just a label on an order. It decides which products a shopper sees, when they see them, and how that sale is counted. A product you sell in the store does not have to appear online. A wholesale-only line never shows up on the consumer site.

Think of a channel as the answer to “where did this order come from.” Once the backend knows that, everything downstream gets easier: reporting, fulfillment, and what each audience is allowed to buy.

It is a native capability of the platform, not a plugin bolted on the side. The backend knows the channel on every order, so reporting and fulfillment follow from it automatically.

One backend, every selling surface

The point of channels is that one catalog, one customer list, and one set of orders can power very different storefronts. You assign each product to the channels it belongs on, and it appears only there.

One Spree Commerce backend powering four sales channels: Mobile App, Point of Sale, Wholesale, and Online Store

A few shapes operators run every day:

None of these needs a second platform or a second team. The storefronts can look and behave differently, but the catalog, the stock, and the order history live in one place you own. That is the difference between selling everywhere and maintaining four businesses that happen to share a name. For the full picture, the omnichannel commerce approach is what channels are built to serve.

How does selling by channel change your reporting and fulfillment?

It gives you a clean per-surface view that you did not have when every channel was its own system. Every order is tagged with its channel automatically, so you can filter, report, and route by where the sale came from.

That tag answers the questions that would otherwise mean exporting from several systems and reconciling by hand. How much did the wholesale channel earn last month. Which surface is growing. Whether the pop-up paid for itself. The numbers are already separated, because the backend separated them at the moment of sale.

Fulfillment follows the same logic. Because each order knows its channel, you can fulfill a wholesale order differently from a web order, and send each to the right location. Order routing is scoped per channel, so your store and your wholesale line can fulfill orders by completely different rules without interfering with each other.

Shared stock and one order history are also what make the cross-channel moments work. A shopper can buy online and pick the order up in your store, the click-and-collect flow people expect, because both surfaces draw on the same inventory. A customer can return an online order at the counter, because the order and its history live in one place, not locked inside whichever surface made the sale.

The result is reporting and operations that match how you actually sell, instead of a single undifferentiated pile of orders you slice up after the fact.

Schedule what goes live, and where

Every product-to-channel assignment carries an optional publication window, so you decide not just where a product sells but when. A product can go live at the register today and in the online store next month, scheduled once and then left alone.

Assigning and scheduling a Spree Commerce product catalog across sales channels

This is the part that turns a frantic launch morning into a quiet one. You set the dates in advance, and the catalog flips itself on each surface at the right moment. No one has to remember to publish at midnight.

It also makes seasonal selling simple. A holiday range can appear on a microsite for six weeks and disappear on its own. A wholesale catalog can open for a buying window and close when the window does. The schedule lives with the product, per channel, so the same item can be live in one place and held back in another.

For an operator, that is real control returned: launches and seasons run on a plan you set once, not on a person watching the clock.

How do channels and Markets work together?

They answer two different questions, and together they remove the need for separate store instances. Markets decide where you sell and in which currency, by region. Channels decide through which surface the sale happens.

A practical example. Say you sell in Europe and the United States, online and through a wholesale portal. Markets handle the currencies, pricing, and regional rules for each place you sell into. Channels handle whether a given order came through the consumer site or the wholesale portal. One backend carries both axes at once.

Covering both on separate platforms means standing up a store for each combination, then keeping them all in sync by hand. That is the overhead multi-store operators know well.

With Markets and channels on one platform, the region and the surface are just attributes of an order, not reasons to run another instance. You add a market or a channel; you do not add a system to maintain.

Retail and wholesale on the same backend

This is where channels pay off fastest for operators serving two kinds of buyer. A consumer browsing your site and a purchasing manager ordering by the pallet want very different things, and channels let you give each the right experience without a second platform.

The consumer channel shows retail pricing, the products you want the public to see, and a checkout built for one-off purchases. The wholesale channel shows contract pricing, a catalog gated to approved accounts, and the bulk-ordering flow those buyers expect. Same inventory underneath, two front doors.

Running retail and wholesale as channels of one store means a sale on either side draws from the same stock and lands in the same order history, tagged by channel. You stop reconciling two systems and start reading one report. When the wholesale side grows into full buyer organizations and approval workflows, that capability is there to add, on the same backend you already run.

Bring every selling surface onto one backend

Your customers were never going to pick one channel and stay there. The job was always to meet them on every surface without running a separate business behind each one. Sales Channels make that the default: one catalog, one stock pool, one order history, presented as many storefronts as your business needs.

Set the channels you sell through, decide what appears where and when, and read clean numbers for each. It is part of the free and open source core, so the fastest way to see it is to model your own surfaces in a store.

And because it all sits on a backend you own, adding the next surface is a configuration change, not a new system to staff and keep in sync. A holiday pop-up, a wholesale line, a second-region storefront: each becomes another channel on the platform you already run. You grow the number of places you sell without growing the number of systems you maintain.

Ready to sell everywhere from one backend? Get started with Spree Commerce, or explore omnichannel commerce and multi-store selling.

Frequently Asked Questions

What are sales channels in eCommerce?

A sales channel is a distinct selling surface, such as an online store, a point of sale, a wholesale portal, or a mobile app, each with its own catalog and reporting. Spree Commerce includes Sales Channels that let one store run several surfaces from one backend, with per-channel catalogs, publication windows, and order attribution.

Can you sell online and in-store from one platform?

Yes, when the platform treats each surface as its own channel while sharing one catalog and stock pool underneath. Online and in-person orders stay separate for reporting and fulfillment, but draw on the same inventory. Spree Commerce supports selling across an online store, point of sale, wholesale, and mobile from a single backend.

How does order attribution by channel work?

Every order is tagged with the channel it came from at the moment of sale, so you can filter, report, and route fulfillment by surface without exporting and reconciling by hand. Spree Commerce provides automatic order attribution by channel and scopes order routing per channel.

Can you show different catalogs and prices to retail and wholesale buyers?

Yes, because each channel controls which products appear and at what price. A consumer channel shows retail pricing and public products, while a wholesale channel shows contract pricing and a gated catalog. Spree Commerce supports per-channel catalogs and pricing assigned from one backend.

How are Sales Channels different from Markets?

Markets decide where you sell and in which currency by region, while channels decide through which surface a sale happens. The two work together on one platform instead of requiring a separate store for each combination. Spree Commerce includes both Markets and Sales Channels in its open source core.

Are Sales Channels free to use?

Yes, there is nothing to license. Spree Commerce includes Sales Channels, per-channel catalogs, publication windows, and order attribution in its free and open source core, so any store can sell across multiple surfaces from day one.

Let's use Spree to build exactly what your business needs

Let's use Spree to build exactly what your business needs

facebook