Intelligent routing: Channel profitability
Channel profitability tab (Inventory › Intelligent routing › Channel profitability) holds the information the system uses to answer the question "where is it more profitable to sell this product?". Here you enter what is deducted from a sale on each channel and the average purchase cost of products. The system considers limiting a product on a marketplace only if it calculates that we earn significantly more per product on our own channel.
If information is missing for a channel, category, or product group, the system does not limit the marketplace; the product continues to be shown normally on the marketplace. So missing information does not cause lost sales, it only disables protection.
What is channel profitability?
The amount you keep when you sell a product is called profit per product:
Profit per product = sale price − purchase cost − commission − payment − shipping − return share
This calculation is done separately for each channel. The system compares the profit on our own channel (website and mobile app) with the profit on each marketplace. If our own channel is more profitable and the product sells fast enough there, it suggests allocating the product to our own channel by limiting the quantity shown on the marketplace.
You do not enter the sale price: the system uses the average sale price over the last 28 days on each channel. If there were no sales on a marketplace in the last 28 days, the price from our own channel is used for that marketplace.
Table: what is deducted from a sale?
<video controls preload="metadata" playsinline poster="https://files.docs.hebiar.com/videos/console/inventory/routing/kanal-karliligi.en.jpg" src="https://files.docs.hebiar.com/videos/console/inventory/routing/kanal-karliligi.en.mp4"><a href="https://files.docs.hebiar.com/videos/console/inventory/routing/kanal-karliligi.en.mp4">Open the video</a></video>
The first row of the table is Our own channel (website and mobile app), and each active marketplace channel is a row below it. Items:
| Column | What to enter | Example |
|---|---|---|
| Commission % | Commission percentage taken from the sale price by the channel. Usually 0 for our own channel. | 21 |
| Payment % | Virtual POS or payment provider fee as a percentage of the sale price. | 2 |
| Fixed payment | Fixed payment fee per sale, including VAT. | 2.50 |
| Shipping | Shipping cost per product, including VAT. | 42 |
| Return rate % | Percentage of sales returned out of 100 sales. | 14 |
| Return cost | Cost of a return to you (return shipping, processing), including VAT. | 75 |
- Enter percentages as numbers: entering 12.5 means 12.5%. Percentages must be between 0 and 100.
- Amounts must be between 0 and 1,000,000. Fixed amounts include VAT and are per product; commission and payment percentages are applied to the VAT-inclusive sale price.
- Leaving a cell empty means "not entered", not zero. If there is truly no deduction, enter 0.
- Currency and percent signs in pasted values are removed ("₺ 1,234.50" → 1234.5). Spaces inside numbers are treated only as thousand separators ("1 234.50"). Ambiguous formats ("1.2.3", "0,5.5", "00.123") are not accepted; a warning appears below the cell. Notations starting with zero like "0.125" are interpreted as decimals (0.125).
Categories
Commissions may vary by category. Select a category from the Category box above the table or add a new category code with Add category.
- All categories (default) applies to all products without a category-specific row.
- If a category has its own row, that row applies. Empty cells in that row are considered "not entered" and do not inherit defaults.
- If a category has no own row, default values appear faded in cells. Changing a cell creates a category-specific row for that channel saved with the values you see. If defaults change later, the category row remains unchanged.
- Deleting all values in a category row marks it as "not entered" and disables protection for that category.
Inline editing
Click a cell and enter a value. Enter moves to the same column in the next row (Shift + Enter moves up), Tab moves to the cell on the right, Esc reverts the cell to its original value.
Changed rows are marked with a Changed badge and a Save changes (N) bar appears at the bottom.
- Save changes saves all changes at once: either all are saved or none. Up to 500 rows can be saved at once; for more, use Excel upload.
- If a value is invalid, the cell is outlined in red and instructions appear below; you cannot save until fixed. If the server rejects a value, the error also appears below the cell.
- Cancel reverts all unsaved changes.
- If you try to leave the tab or page without saving, the system asks: Stay on page or Discard changes and leave.
Saved values are used in the next decision cycle.
Ctrl/⌘ + S saves. Saving is disabled during Excel upload.
Rows changed while you edit
When you save, the system first reads the current table state. If another user or an Excel upload changed the same row while you edited, saving stops and a These rows changed while you edited window opens listing the changed rows. Since a row is saved with all its values, saving without asking would overwrite those changes.
- Get current values, apply my changes on top: refreshes the table with current values, then applies your changed cells on top; if you changed the same cell, your value remains. Review and save again.
- Cancel: nothing is saved; your changes remain on screen.
This window also appears if the row you are editing changes when Excel upload finishes or the table refreshes automatically.
Very long list
If there are too many records, the list is shortened and the profitability table cannot be edited on this screen (to avoid accidentally overwriting some category rows not shown). Use Excel upload for bulk changes; purchase rates remain editable.
How to determine the average purchase rate?
In the Average purchase rates section, enter the product's purchase cost as a percentage of the sale price on our own channel. For example, if you sell a product for 1,000 and buy it on average for 450, the rate is 45.
- The All products (default) row is at the top and applies to all product groups without their own rate.
- If a product group has a different cost structure, add its code and rate with Add product group. The system first looks for the product's group rate, otherwise uses the "All products" rate.
- The rate must be greater than 0% and less than 100%.
- To delete a product group rate, click the trash icon on its row; deletion can be undone until saved.
- Products without a purchase rate entered are not limited on marketplaces. If the "All products" rate is missing, the Missing information box at the top reports this.
You can calculate the rate by dividing total purchase cost over the last few months by your own channel's sales revenue for the same period. Exact accuracy is not required; the system uses this rate only to compare channels and deducts the same purchase cost on both.
Missing information
The Missing information box at the top of the tab briefly counts what is missing, for example:
- "Commission rate missing for 3 marketplace channels."
- "Shipping cost missing for our own channel."
- "Missing information in 2 categories."
- "Default purchase rate missing for all products."
Categories with missing data are listed below the box; clicking one switches the table to that category. The box disappears automatically when nothing is missing.
Bulk upload with Excel
To enter many channels and categories at once:
- Click the Download template button. The template includes columns and channel list.
- Fill the margins sheet:
channel_id: marketplace channel number (listed on the channels sheet); for our own channel row enter D2C.category_code: category code; leave blank for default (all categories) row.commission_pct,payment_pct,return_pct: percentages as numbers (12.5). Percentage formatted cells (%12.5) are also read correctly.payment_fixed_fee,shipping_cost,return_cost: amounts including VAT, per product.
- Optionally enter purchase rates on the purchase_rates sheet:
sku_group(blank = all products) andpurchase_pct(percentage). - Do not change column names or use formulas (enter values directly). Empty cells mean "not entered".
- Drag or select the file in the Select or drop Excel file here area, then click Upload. Only .xlsx files up to 2 MB and 5,000 rows can be uploaded.
The file is processed in the background; you can leave the page. While processing, a "Loading profitability from Excel" banner and progress bar appear at the top; the same job can be monitored in the Operations tab. When finished, a result message appears (e.g. "12 rows read (10 profitability, 2 purchase rates), 3 records changed") and the table refreshes automatically.
If even one row has an error, no rows are saved. Errors are listed in a table with sheet, row number, column, and issue (e.g. "Profitability sheet · 14 · commission_pct · Rate must be between 0 and 100"). Fix all errors and upload again. Up to 100 errors are shown; if more, the count remaining is displayed.
You cannot upload a second file while a previous upload is in progress; a "Previous Excel upload still in progress" warning appears. Wait for it to finish. Excel uploads cannot be retried from the Operations tab; re-upload the file from there.
If you upload Excel with unsaved changes, the table refreshes with file values after upload; saving your changes first is recommended.
How to read the "Sample calculation"?
The Sample calculation box below the table shows step-by-step what you keep per product on each channel with the entered values. Values are included even if not saved; results update as you type.
- Sample sale price: default 1,000. Enter a price close to your products.
- Compared marketplace: which marketplace our own channel is compared against.
- Product group (purchase rate): which product group's purchase rate is used for the calculation.
- Category is the one selected in the table.
The table in the box shows these steps for each channel:
| Step | Calculation |
|---|---|
| Sale price | The sample price you entered |
| − Purchase cost | Sale price × average purchase rate (same for both channels) |
| − Commission | Sale price × commission rate |
| − Payment | Sale price × payment rate + fixed payment |
| − Shipping | Shipping cost |
| − Return share | Return rate × return cost |
| = Profit per product | Remaining amount |
Example: sale price 1,000, purchase rate 50%, commission 32% on our own channel, 38% on marketplace, other items 0, then profit is 1,000 − 500 − 320 = 180 on our own channel, and 1,000 − 500 − 380 = 120 on marketplace. The Result sentence says "Selling this product on our own channel is 60 more profitable per product than the marketplace" and shows the difference percentage (50%). The percentage is shown with at most one decimal (e.g. 56.9%).
Result sentences can be:
- Our own channel is more profitable: if the product sells fast enough on our own channel, the system tries to protect this difference.
- Marketplace is more profitable or both channels equal: the system does not limit that marketplace.
- No profit on our own channel: the system does not protect loss-making sales and does not limit the marketplace.
- Cannot calculate: missing information is listed (e.g. "shipping cost and purchase rate missing for our own channel").
The sample calculation uses the same formula as the system decisions; the only difference is that real calculations use the last 28 days average sale price per channel.
Permissions
- Channel profitability and purchase rates are commercial information. Users without View profitability permission do not see amounts on this tab; "You do not have permission to view profitability amounts" is shown. The tab name remains visible.
- Users without Edit profitability permission can only view the table; editing, saving, and Excel buttons are hidden, with the reason shown on the tab.
Common mistakes
- Writing rates as decimals: for 12.5% commission enter 12.5, not 0.125. 0.125 means 0.125%.
- Leaving cells empty vs entering 0: empty means "not entered" and marketplace is not limited. Enter 0 if there is no deduction.
- Entering amounts excluding VAT: fixed amounts (payment fixed fee, shipping, return cost) must include VAT; sale price also includes VAT.
- Leaving cells empty in category rows: empty cells in category-specific rows do not inherit defaults. Fill all cells.
- Not entering purchase rates: if the "All products" rate is missing, no products without their own rate are limited.
- Changing column names or using formulas in Excel: the file is rejected. Download the template and fill columns without changes.
- Entering our own channel as a number in Excel: enter D2C in the
channel_idcolumn for our own channel row.
Related articles
- Intelligent routing — getting started; profitability setup is the first step
- How it works? — how the system compares profit, what happens if info is missing
- Rule sets — profit thresholds and testing
- Decisions — profit details in the "Why?" window
- Operations — "Loading profitability from Excel" job
- FAQ — what "No priced sales" (missing price) or "Purchase rate not entered" mean