Reconciliation
Reconciliation compares what DataGlass computed for an order against what the marketplace actually did to it — fee by fee, and payout by payout. Anything that doesn't line up is flagged, so an overcharge or a missing payout stops being something you'd only find by exporting a spreadsheet.
Open it at Orders → Reconciliation. It is always single-shop: both legs reconcile one shop against one marketplace, so a multi-shop workspace is asked to pick a shop before the page opens.
Which platforms have reconciliation
| Leg | Shopee | Lazada | TikTok Shop |
|---|---|---|---|
| Fees — modelled fees vs charged fees | ✓ | — | ✓ |
| Income — escrow vs payout ledger | ✓ | — | — |
| Mark an order reconciled | ✓ | — | — |
| Search by order number | ✓ | — | — |
| .xlsx export | ✓ | — | — |
Lazada reconciliation exists in the backend but has no page in the app yet, so a Lazada shop sees a "not available for this platform" state.
The two reconciliation legs
On a Shopee shop the Fees and Income legs sit as sub-tabs in the Orders tab row, directly after Reconciliation. Fees is the default; Income rides ?leg=income in the address bar, so a link to either one reopens where you left it. A TikTok shop has the fee leg only and no selector.
| Leg | Question it answers |
|---|---|
| Fees | Did the marketplace charge the fees we expected on each order? |
| Income | Did the escrow we computed actually arrive in the payout ledger? |
Reading the fee leg
The fee leg is a price-minus-fees waterfall per order, with every rate-driven fee shown as an ours │ theirs pair. The marketplace's figure turns red when it diverges from ours.
Four tiles sit above the table:
- Orders matched — how many of the run's orders reconciled, with the match rate and the time the run completed.
- Mismatch — the outstanding count, with Unknown and Missing theirs broken out beneath it.
- Fee totals — expected (our model) against actual (the marketplace). The actual figure is red when the marketplace charged more in total, green when it charged less.
- Shipping variance — net settled shipping paid beyond quote. Only appears once the run carries shipping data.
On Shopee the columns are Order, Status, Revenue, Commission, Service, Transaction, Est. shipping │ Settled, Other, Payout and Total Δ. On TikTok Shop the fee pairs are Commission, Pre-order, Transaction, Commerce growth, Infrastructure and BCD/FS, followed by the same shipping pair.
- Total Δ is the sum of (their fee − our fee) across the order. Positive means the marketplace charged more than our model.
- Other is everything else that nets the order down to its payout — rebates, shipping, affiliate commission, protection fees, taxes. Revenue − all fees − other = payout.
- Shopee's processing fee is not shown as its own column, but it still nets into Total Δ.
What each reconciliation status means
| Status | Meaning |
|---|---|
| Match | Our figure and the marketplace's agree. |
| Mismatch | They disagree. This is the bucket to work through. |
| Missing theirs (Shopee) / Missing actual (TikTok) | We modelled a fee the marketplace never reported. |
| Unknown | The order has no expected figure yet — usually not settled far enough to model. |
| Needs attention | The coarse filter for everything that is not a clean match. |
The income leg uses its own set: Match, Mismatch, Missing ours (a ledger line with no order behind it on our side) and Non-order (a ledger line that isn't an order at all, such as an adjustment).
The shipping sub-leg
Shipping is reconciled independently of the fees, because it settles on its own schedule: the marketplace quotes a shipping fee when the order is created, then settles a real one after the parcel ships. The pair shows both, and the delta reads settled − quoted — positive means you paid more than the quote.
A row can read On quote, Pending, No quote or n/a. The Off-quote shipping filter (called Bore shipping on TikTok) narrows the table to rows where the settled fee differs from the quote. It filters the rows already loaded rather than the whole run, so while it is on the pager stops offering more pages.
Own-fleet and non-integrated shops still see the shipping columns — they render as dashes rather than disappearing, so the table's shape never changes underneath you.
How to work through a run
- Set the date window. It defaults to the last two months, matching the window the backend applies when no range is given; the presets and the calendars both accept anything else.
- Filter to Mismatch, or to Needs attention for everything that isn't clean.
- Read the offending pair on the row. The commission, service and transaction cells carry a tooltip spelling out the calculation: order discounted price × rate = fee, with the rate derived from our modelled fee.
- On Shopee, tick the row's checkbox to mark it reconciled once you've dealt with it. The header checkbox marks — or reopens — every order shown on the page, behind a confirmation that names the count.
- Export the period report as .xlsx (Shopee fee leg only) if you need it beside your bookkeeping.
Reading the income leg
The income leg is the escrow ⇄ payout-ledger check, Shopee only. Each row carries the order and its payment description, the reconciliation status, the payout state (Pending or Released), Shopee's escrow figure, our computed escrow, the delta, and the estimated payout date. A non-zero delta is coloured.
Reconciliation lines are not clickable — there is no per-order detail page behind them.