Think of your channels like mail sorters at a post office.
Each sorter has a rule taped to the front — “Only accept mail going to ZIP 84097 and marked Priority,” for example.
When a new order comes in, Luminous checks each sorter (channel) one by one:
- It starts with the most specific channel (the ones with filters set).
- It checks if the order matches every filter on that channel.
- If it fits, that’s where the order goes.
- If not, it keeps moving down the line until it reaches the catch-all — a final channel with no filters, which takes anything that didn’t match earlier.
This guarantees every order lands somewhere.
⚙ How filters work
Filters look directly at the raw JSON data we pull from your source system (Shopify, Amazon, etc.).
You can add filters under:
Manage → Channels → [your channel] → Edit → Filter Incoming Orders
Example:
| Property | Operator | Value |
location_id | EQUALS | 65671528523 |
This means: “Only attach orders to this channel when location_id in the raw order data equals 65671528523.”
🧩 Filters are ANDed together, not ORed.
If you add multiple filters (e.g., location_id AND tags), an order must match all of them to qualify.
🔍 Viewing your raw order data
To see exactly what Luminous sees:
- Open an order.
- Click the Actions ⋯ menu → Pull Raw Order.
- You’ll see the JSON data like this:
{ "id": 6322589007947, "location_id": 65671528523, "app_id": 1354745, "client_details": { "accept_language": "en-US" } }
You can use any of these fields in your filters.
✅ Best practices
- Start in Integrations
Set up the base connection (Shopify, Amazon, etc.) in Integrations first.
Channels are built on top of these integrations — each channel tells Luminous which subset of orders from that integration should be pulled in. - Create specific channels for special cases
Use filters when you want to isolate certain types of orders (for example, POS orders, marketplace orders, or orders from specific locations). - Always include a catch-all
Keep one channel per integration that has no filters — your safety net for anything that doesn’t match another channel.
Managing Channels via the Luminous MCP Server
Channels can also be created, updated, and deleted through the Luminous MCP (Model Context Protocol) server — without touching the UI.
This is especially useful when:
- Onboarding a new account — set up all channels in one session without navigating screen by screen
- Making bulk changes — update multiple channels at once through a connected AI assistant
What you can do via MCP
| Action | What it does |
|---|---|
| Create Channel | Define a new channel with its integration source, label, and filters |
| Update Channel | Modify an existing channel's name, settings, or filter rules |
| Delete Channel | Remove a channel that's no longer needed |
💡 Standard channel rules still apply — always keep at least one catch-all channel (no filters) per integration so no orders fall through.
🛒 Example: Brand xyz's Shopify Locations
Brand xyz uses multiple Shopify locations to handle both online and in-person sales.
Here’s how their setup works:
Goal
Sell certain products in person at the CanJam trade show using Shopify POS, while keeping the rest of their inventory available online and accurately synced.
How they did it
| Channel | Filter | Purpose |
Shopify – CanJam | location_id = CanJam Location ID | Handles POS orders from the CanJam booth; stock is transferred to a special “SoCal” location in Luminous. |
Shopify – Tuscany | location_id = Tuscany Location ID | Used for “ship-to-order” sales when the item isn’t physically at the show. |
Shopify – Catch-All | (no filters) | Catches any other orders that don’t fit the above locations. |
Result
- Products sold at the trade show instantly reduce inventory in Shopify and Luminous.
- Staff can switch the POS iPad between locations depending on where the sale is fulfilled.
- The main website inventory remains separate from the POS event stock.
🧠 Summary
- Filters act like rules on mail sorters — they narrow down which orders go where.
- Filters are ANDed together, not ORed.
- Channels are built from integrations, not the other way around.
- Always keep a catch-all channel with no filters.
- You can test your filters by pulling a raw order and comparing values directly.
- Channels can also be created, updated, and deleted via the Luminous MCP server — useful for faster account setup and onboarding.