Orders
What sold in the sales period?
Order ID · SKU · quantity · status · created date · commercial value
GMV, valid revenue, SKU mix, cancellation/refund logic and order-period performance
D2 Commerce Knowledge · TikTok Shop P&L Data
Start with Orders, Settlement or Income, Ads spend and a controlled SKU cost master. Connect them with stable identifiers and explicit period rules, preserve the raw evidence, and keep every unmapped or unresolved row visible before automating the final dashboard.
Direct answer
For an initial shop-level P&L, use four evidence groups: Orders for commercial activity, Settlement or Income for realized platform deductions and payout, Ads for paid acquisition cost, and a SKU cost master for COGS. Add pending settlement and other material variable-cost sources when the reporting objective requires them. The report is decision-ready only when its identifiers, period basis and unresolved exceptions are explicit.
Minimum evidence set
What sold in the sales period?
Order ID · SKU · quantity · status · created date · commercial value
GMV, valid revenue, SKU mix, cancellation/refund logic and order-period performance
What did the platform deduct, hold or pay?
Settlement reference · fees · commission · refunds · adjustments · payable/paid amount
Realized deductions, payout timing, pending cash and order-to-settlement reconciliation
What did paid acquisition cost?
Spend · campaign/product scope · account · reporting dates
Ads ratio, contribution after Ads and scale/hold decisions
What did each product sold cost in that period?
Stable SKU key · unit cost · effective date · bundle rule · cost source
Order-level COGS, SKU contribution and reproducible historical profitability
Minimum model
Minimum evidence set = Orders + Settlement/Income + Ads + SKU cost master
This is the minimum evidence architecture for an initial operating P&L. It is not a claim that every business has the same cost structure or that every TikTok Shop export has the same file name over time.
Evidence pipeline
01
Store the original Orders, Settlement/Income and Ads exports plus the controlled cost source before transformation.
02
Standardize identifiers, currencies, timestamps, time zones, SKU keys and commercial states without deleting the source meaning.
03
Define which timestamp answers the sales question, which timestamp answers the settlement question and how Ads dates align to the commercial period.
04
Resolve sold SKU or bundle quantity to the valid cost record for the transaction period.
05
Connect Orders to settled, pending, refunded or adjusted financial records through stable identifiers.
06
Combine valid revenue, recorded deductions, Ads, COGS and other supported variable costs in one declared operating model.
07
Keep unmapped SKUs, missing cost, unmatched settlement, duplicate joins and scope mismatches visible with an owner.
08
Only after evidence is controlled should the model roll up to SKU, campaign, channel, shop or management dashboard.
Join controls
Use the stable platform order identifier as the primary commercial key. Avoid buyer name, product title or row position as reconciliation keys.
Order ID → order event → settlement relationship
Normalize marketplace SKU or variation identifiers to the controlled internal cost key. Product names can change while the economics still need historical continuity.
Marketplace SKU → canonical SKU → cost record
Keep created, settlement, paid and Ads dates as separate business fields. Normalize time zones for comparison without replacing the meaning of each timestamp.
Sales period ≠ settlement period
Label whether a field is GMV, valid revenue, deduction, Ads spend, payable amount, paid cash or cost before comparing totals or building ratios.
One amount → one declared business meaning
Optional evidence
On-hold / unsettled settlement
Add when cash reconciliation matters
Separates valid commerce activity from amounts not yet financially realized.
Packaging / per-order fulfillment
Add when materially variable
Keeps transaction-linked operating cost visible without hiding it inside product COGS.
Creator / Affiliate off-platform costs
Add when not fully represented in platform settlement
Extends the contribution view when commissions, sample or paid creator costs belong to the decision scope.
Promotion / seller-funded offer evidence
Add when promotion cost is not already captured cleanly
Explains how vouchers, discounts or seller-funded mechanics change SKU contribution.
Refund / adjustment detail
Add when aggregate settlement does not explain the financial event
Improves traceability for later reversals and cross-period adjustments.
Exception register
Unmapped SKU
Restore the canonical SKU or bundle mapping before treating contribution as complete.
Missing effective cost
Add or correct the historical cost period instead of using today's cost retroactively.
Unmatched settlement
Investigate identifiers, adjustment type and timing; do not assign it arbitrarily.
Ads scope mismatch
Rebase the Ads extract or the analysis scope before calculating efficiency.
Duplicate join
Fix uniqueness and join rules before any aggregate P&L is trusted.
Unknown deduction
Preserve the original platform label and keep the classification open until evidence supports it.
Decision rules
Publish the sales-period view and keep pending cash separate rather than deleting valid sales from the P&L.
Check whether the comparison is mixing created date with settlement or paid date before calling it an error.
Use the lowest reliable campaign or account scope supported by the source; do not invent SKU attribution that the file cannot prove.
Mark affected contribution incomplete and prioritize cost-master recovery before SKU-level scale decisions.
Treat that as a reporting-control problem. Decision views should expose completeness and reconciliation status, not only totals.
Automate only after source contracts, identifiers, period rules and exception handling are stable enough to reproduce manually.
P&L evidence checklist
Preserve the raw Orders export for every reporting period.
Preserve settled and on-hold Settlement/Income evidence when cash reconciliation is in scope.
Capture Ads spend from a source whose account, product and period scope is explicitly known.
Maintain SKU and bundle COGS in a controlled cost master with effective dates.
Use stable order and SKU identifiers instead of titles, names or spreadsheet row numbers.
Declare the sales-period time basis separately from settlement and paid-cash timestamps.
Normalize time zones before comparing Ads, Orders and Settlement periods.
Keep GMV, valid revenue, payout, deductions and cost fields semantically distinct.
Document every mapping and transformation rule used to build the reporting layer.
Keep unmapped SKUs, missing costs, unmatched settlements and duplicate joins in an exception register.
Add packaging, creator or other variable-cost sources only when they are material to the chosen contribution scope.
Automate the P&L only after the manual evidence model can be traced and reconciled reliably.
Related paths
Use the evidence set to move from GMV and valid revenue through fees, Ads, commission, COGS and contribution.
OpenGo deeper into Orders vs Settlement, pending payout, recorded deductions and financial reconciliation.
OpenTurn controlled source files, mappings and exception rules into a repeatable reporting workflow after the evidence model is stable.
OpenTikTok Shop reporting
D2 can structure source mapping, reconciliation, exception handling and recurring reporting after the evidence model is stable enough to automate safely.
Discuss commerce reportingFAQ
Start with four evidence groups: Orders, Settlement or Income, Ads spend and a controlled SKU cost master. Add on-hold settlement and other variable-cost sources when the reporting objective requires cash reconciliation or a more complete contribution view.
Orders explain what sold in the commercial period, including SKU, quantity, status and sales-period timing. Settlement or Income explains realized payout and recorded deductions. They should reconcile through stable identifiers, but they answer different questions and should not be collapsed into one date basis.
Use the GMV Max or campaign-level Ads source that provides the spend required for the reporting scope. The exact export name can change, so the control is the business meaning: spend must cover the same period, account and product or campaign scope as the revenue used for profitability analysis.
A controlled SKU cost master is safer than hard-coding product cost into report formulas. Store stable SKU keys, unit cost, effective dates and bundle rules outside the presentation layer so historical transactions can be reproduced when costs change.
Keep the item in an exception register with the original reference, error type, amount or SKU, investigation state and owner. Do not silently drop the row, treat missing cost as zero or use a convenient average merely to make the report complete.
No. Preserve the raw evidence used for each reporting period. A normalized model or dashboard is easier to audit when every calculated field can be traced back to the original platform export and the transformation rule that produced it.