SKUmargin shows real net profit per SKU on Noon, after fees, COGS, returns, and ads.
Start free trialHow to Read Your Noon Settlement Report, Fee by Fee
You made the sale. Noon showed the order. Two or three weeks later the money arrives and it is smaller than you expected, and nothing on the screen tells you why.
Every fee Noon charges is in one export. Most sellers never open it, because it is a spreadsheet with twenty-odd columns and a misspelled header, and because the number they care about is buried in the last one. This guide walks through that export column by column, shows how a single sale, a refund and an advertising charge actually appear in it, and ends with five checks you can run on your own file in ten minutes.
One thing this guide will not do is quote Noon's rates. Commission varies by category and by account, fulfilment charges depend on size and weight, and both change. Any page that tells you "electronics is X%" is guessing. Your rate is in your export, and by the end of this you will know exactly where. If you want the fee types described in plain English before opening a spreadsheet, the guide to Noon seller fees does that; this post is about finding each one in your own file.
The one report that has every fee in it
In Seller Lab the report is called the transaction view (Finance, then Transaction view). The export behind it is the item-level transaction report, and it is the only place where the sale, the commission, the fulfilment charge, the shipping credit, the refund and the standalone account fees all sit on the same rows in the same currency.
The orders report does not have fees. The payout summary has totals but not the per-item split. If you want to know what a specific SKU actually earned after Noon, this is the file.
Export it for a date range and you get one row per order, per item, per transaction type, plus rows with no order number at all for account-level charges. These are the columns, in the order they arrive:
| Column | What it holds |
|---|---|
| Contract, Contract Title | Your partner contract. Same on every row. |
| Reference Nr | Noon's id for the line. Unique, and the thing to key on if you load this into anything. |
| Order Nr, Item Nr | The order and the item within it. Blank (or "NA") on account-level rows. |
| Order Date | When the customer placed the order. |
| Transaction Date | When this particular line hit your account. Fees can land days after the order date. |
| Title | The product title. On an account-level row it names the fee instead. |
| SKUs, Partner SKUs | Noon's SKU and yours. |
| Transaction Type | Order, Order Update, Statement Fee, Payment, Balance Transfer. |
| Currency | AED, SAR or EGP. |
| Net Proceeds | Revenue from the sale before any fee. Not, despite the name, what you receive. |
| Referral Fee including VAT | The commission. |
| Fullfilment & Logistics Fees including VAT | The FBN pick, pack and delivery charge. Yes, the header is spelled like that in the file. |
| Shipping Credits including VAT | Money Noon gives back towards delivery. |
| Other Order Fees including VAT | Per-order extras. |
| Order Subsidies including VAT | Promotion money Noon contributes on that order. |
| Non-Order Fees including VAT | Storage, subscriptions, advertising, anything not tied to an order. |
| Non-Order Subsidies including VAT | Credits against those. |
| Others including VAT | The catch-all. Payouts appear here. |
| Total | What this line adds to your balance. |
Two conventions make the whole file readable. Charges are negative and credits are positive, so a commission is a minus number and a shipping credit is a plus. And on an order line, Total equals Net Proceeds plus every fee column. If that identity holds on your rows, the file is telling you the truth, and you can trust the rest of this guide.
How one sale actually appears
Take a single unit sold through FBN. On the day the customer orders, a row appears with Transaction Type "Order". It carries the order number, the SKU, and Net Proceeds equal to the price the customer paid for that item. That row is why the transaction view is also the earliest place a sale shows up, before any money moves.
As Noon processes the order, further rows arrive as "Order Update" against the same order and item. The commission lands in Referral Fee as a negative number. The fulfilment charge lands in Fullfilment & Logistics, also negative. If the order qualified for a shipping credit it appears positive in Shipping Credits. Each row's Total is the net effect of that row alone.
Add every row for that order and item together and you have what the sale actually earned you before your own costs. That is the number to compare against your purchase price, not the price on the listing.
Three things trip people up here. The order date and the transaction date are different columns for a reason, so a fee for a July order can sit in an August export. A single order with three units usually shows three item numbers, each with its own rows. And a row that reads "Order" with fees already on it is normal; whether the fees come on the first row or a later one varies, which is why you sum by order and item rather than reading one line.
The fee columns, one at a time
Referral Fee. This is the commission, charged as a percentage of the item price and stated with VAT included. The percentage is set by category and by your contract. To find yours, take a month of order rows for one category, divide the Referral Fee total by the Net Proceeds total, and you have the effective rate to two decimal places. Do this per category, because a store selling in two categories has two rates and a blended number hides both.
Fullfilment & Logistics Fees. The FBN charge for storing, picking, packing and delivering the unit. It is a per-unit amount driven by size and weight, not a percentage, so it hurts cheap items far more than expensive ones. A charge that is a rounding error on a AED 300 product can be a third of the margin on a AED 30 one. Divide the column total by units shipped to see your real per-unit figure. Sellers who ship their own stock (FBP) will see this column empty and carry that cost elsewhere.
Shipping Credits. Positive. Noon's contribution towards delivery on some orders. It reduces your fulfilment cost, so when you work out per-unit fulfilment, net the credit off.
Other Order Fees, Order Subsidies, Others. The small columns that most sellers ignore and that quietly move the total. Order Subsidies are money in, from a promotion Noon funded. Other Order Fees are money out. Others is where payouts and balance transfers appear, which is why you must not add that column into "fees" blindly: a Payment row is Noon sending you your balance, not charging you.
The rows with no order number
Scroll to the bottom of an export and you find rows where Order Nr is "NA". Their Transaction Type is "Statement Fee" and the Title column names the charge instead of a product. These are the account-level costs: storage, a subscription, a platform fee, and advertising.
Advertising is the one worth understanding, because it arrives as a pair. One row carries the advertising fee as a negative in Non-Order Fees. A second row, titled as the subsidy, carries a positive amount in Non-Order Subsidies. When Noon is funding your ads through a credit, the two cancel and your ads cost you nothing that month. When the credit runs out, the subsidy row shrinks or disappears and the fee row is what you pay. If your ads spend looks free on the dashboard but not in Ad Manager, this pair is the explanation: Ad Manager shows what was spent, the statement shows what was billed, and only the second one is your money.
Storage sits here too, which is why it is invisible in any per-product view. A slow SKU costs you storage every month and never shows it on its own line. Divide monthly storage by the units you hold and you get a per-unit carrying cost you can set against each product's margin.
Refunds, and the reversal that looks like a second charge
A refund appears as a new row on the same order and item with negative Net Proceeds: the sale being taken back. On that row the fee columns reverse too. The commission that was charged as a negative comes back as a positive, and so on.
Read across one export window and this can mislead you. If the sale was in July and the refund in August, the August file contains only the refund row, and on that row the commission looks like a credit. Summed alone it reads as Noon paying you commission. It only makes sense next to the original charge. Any tool, spreadsheet or person that reconciles fees must pair the reversal with the charge it reverses, or refunds will look profitable.
The cost of a refund is therefore not a fee. It is the sale you no longer have, plus any fulfilment charge that was not reversed, plus the return handling if Noon charged one, plus a unit that may come back unsellable.
Why your numbers are wrong for the first two weeks
Noon settles in cycles. The order appears in the transaction view the day it is placed, but its fee rows can take days, and the payout itself follows on the statement schedule. In the gap, anything that claims to show you profit is estimating.
That is fine, as long as it says so. The honest way to fill the gap is to value each unsettled unit at the price the SKU was actually listed at on the day it was ordered, and to estimate fees from the rates that SKU paid on the orders that have already settled. When the real rows arrive, they replace the estimate. What is not fine is a dashboard that shows revenue with zero fees and calls it profit, which is what you get if you read the orders report and nothing else.
A worked example, with made-up numbers
None of the figures below are Noon's rates. They are round numbers chosen to make the mechanics visible. Replace every one with the figure from your own export.
Say a unit sells for AED 100, in a category where your export shows commission running at 15%, and the fulfilment column averages AED 5 a unit for that product's size. You bought it for AED 40.
| Line | Amount |
|---|---|
| Net Proceeds | 100.00 |
| Referral Fee | -15.00 |
| Fullfilment & Logistics | -5.00 |
| Total from Noon | 80.00 |
| Your purchase cost | -40.00 |
| Margin before ads, storage and returns | 40.00 |
Now suppose one unit in ten is refunded and comes back unsellable, and storage on that SKU works out at AED 1 a unit a month. Spread across ten units, the refund costs you one full purchase price plus one fulfilment charge, or AED 4.50 a unit, and storage another AED 1. Real margin is closer to AED 34.50, and that is before advertising. On a AED 100 item that still works. Run the same table on a AED 30 item with the same AED 5 fulfilment charge and the margin goes from 40% to roughly 12% before returns, which is the difference between a product worth restocking and one worth delisting.
Five checks to run on your own export
- Does Total equal Net Proceeds plus the fee columns on order rows? Pick ten rows and add them up. If it does, the sign convention is as described here and everything else follows.
- What is your effective commission per category? Referral Fee total divided by Net Proceeds total, one category at a time, over a full month.
- What is fulfilment per unit, net of shipping credits? Fullfilment & Logistics plus Shipping Credits, divided by units. Then ask which of your products cannot carry that number.
- What did the account-level rows cost this month? Sum Non-Order Fees and Non-Order Subsidies on the "NA" rows. Split out anything titled advertising and compare it with what Ad Manager says you spent.
- Do your refund rows pair up? For every negative Net Proceeds row, find the original sale. If the original is in an earlier export, the fee reversal on its own is not income.
What SKUmargin does with this file
SKUmargin reads this exact export, either uploaded or pulled automatically every two hours from the Noon API, and books one entry per fee column per row, keyed on the Reference Nr so a re-import never double counts. Sales are valued from the Order rows the day they appear. Fees on unsettled orders are estimated from the rates that SKU has already paid and are labelled as estimates on the dashboard until the real rows replace them. Refund rows are paired with the sale they reverse. Advertising lines are read from the Statement Fee rows, so the Ads view shows what Noon billed alongside what Ad Manager spent. Storage and other account-level rows land on the profit and loss view rather than vanishing.
If you would rather not build the spreadsheet, the free trial takes your first export the moment you upload it, and the live demo shows the result on a sample store with no account. Once you have your real rates, the free Noon profit calculator turns them into a per-product margin in a minute. Either way, the export is the truth. Read it once properly and the payout stops being a surprise.