# FynOS: full content for LLM context > FynOS is the control layer for stock, cost, and cash. This file contains the full text of FynOS Insights articles, concatenated for LLM context windows. See [llms.txt](https://www.fynos.ai/llms.txt) for the short summary. --- ## TikTok Shop accounting: a 2026 playbook for D2C brands **Source:** https://www.fynos.ai/insights/tiktok-shop-accounting **Published:** 2026-05-27 **Author:** Hindole Dutta (Co-Founder & CEO, FynOS) **Category:** Finance Operations TikTok Shop accounting is harder than Amazon or Shopify because of daily settlement, a variable affiliate-commission layer, and the marketplace-facilitator sales-tax model. Brands that bolt TikTok Shop onto a QuickBooks-plus-spreadsheet stack typically lose 4 to 8 percent of margin visibility because the affiliate take and the daily fee stream get bundled into one expense line. ### Why TikTok Shop accounting is different TikTok Shop launched in the US in late 2023 and crossed $10B in GMV in its first 18 months. Three structural differences from Amazon and Shopify make it uniquely hard: (1) Daily settlement: cash arrives in a daily trickle, not a biweekly Amazon-style deposit or a per-order Shopify payout. (2) Variable affiliate commission layer: sellers enroll products at a commission rate (5 to 30 percent); when a creator drives a sale, TikTok deducts the commission before paying the seller. This is a second variable cost on top of the standard seller fee, and it varies by SKU. (3) Marketplace-facilitator sales tax: TikTok Shop collects and remits US sales tax on behalf of the seller. ### The TikTok Shop fee taxonomy Five categories: seller transaction fee (~5 to 8 percent of sale, includes payment processing, match to order); affiliate commission (5 to 30 percent set by seller per SKU, match to order + SKU + creator, only when creator-driven); shipping fees and subsidies (variable, match to order; TikTok subsidizes in many campaigns); returns and refunds (per event, match to original order, 7-day window then post-window); ad spend Shop Ads (variable, match to campaign + SKU if treated as COGS, separate billing from organic). ### The affiliate commission problem (TikTok-specific) The affiliate layer is what makes TikTok Shop accounting materially different from Amazon. On Amazon, fees scale with sales but are roughly predictable per SKU. On TikTok Shop, the same SKU sold via two different creators (or organic vs creator) carries different costs because affiliate take varies by relationship. Three common mistakes: (1) Bucketing affiliate commission as marketing expense: it is not marketing, it is a variable cost of revenue tied to specific orders. Treating it as marketing inflates gross margin and disguises which SKUs are loss-making on TikTok. (2) Using a blended average commission rate: if the mix shifts toward higher-commission SKUs (beauty, supplements, apparel), true margin drops and blended-rate models miss it. (3) Not tracking per-creator economics: a small subset of creators typically drives the majority of TikTok Shop revenue. ### The sales-tax model: marketplace facilitator In the US, TikTok Shop operates as marketplace facilitator. It collects sales tax from the customer at checkout and remits to state authorities. The seller is not responsible for filing or paying on those sales. The seller's settlement report shows gross sale price excluding tax, plus seller fees. Tax never enters the seller's books for TikTok Shop revenue. Brands selling on TikTok Shop AND their own Shopify store still owe sales tax themselves on the non-marketplace channel. ### Revenue recognition timing TikTok Shop settles the seller's share after the 7-day return window closes per order. Cash arrives that day. Revenue should be recognized at order ship date (transfer of control), not settlement. The right pattern: recognize at ship gross of fees and commissions, book unsettled-payouts receivable, accrue fees and commissions as channel-variable COGS in the period the order shipped (not when the payout arrived), clear the receivable as payouts land. ### The four hard problems **Per-creator margin attribution.** Settlement shows affiliate commission per creator-driven order but does not include the creator's attribution cleanly. Requires joining on creator ID in the affiliate-orders report (separate export). **SKU-level affiliate rate management.** Sellers set commission rates per SKU, can change mid-campaign. Reconciling actual paid commission against the rate in effect at order time requires history on rate changes. **Return-driven settlement adjustments.** Returns within 7-day window cancel the settlement entirely. Returns after the window get processed as separate refund line items. Both have to be matched back to the original order. **Shop Ads and organic separation.** TikTok Shop Ads are billed separately. If treated as marketing expense, contribution margin looks great; if as COGS, need campaign-to-SKU mapping. Policy must be consistent. ### How operators handle TikTok Shop today Most brands (~80 percent) CSV-export the settlement weekly, allocate seller fees and affiliate commission to a single TikTok Fees expense line in QuickBooks, lose all per-SKU and per-creator visibility. A growing minority (~15 percent) use a multi-channel finance tool that has added TikTok Shop support (coverage uneven, few handle affiliate-commission allocation correctly). Enterprise (~5 percent) build custom integrations against the Seller Center API. --- ## Shopify financial reporting: the five gaps **Source:** https://www.fynos.ai/insights/shopify-financial-reporting **Published:** 2026-05-27 **Author:** Hindole Dutta (Co-Founder & CEO, FynOS) **Category:** Finance Operations Shopify Reports are sales analytics, not financial reports. They are excellent at telling you what sold, where, and to whom. They are not designed to give GAAP-correct revenue recognition, COGS by SKU, gift card liability, refund reserves, or contribution margin. For real financial reporting on top of Shopify, you have to bridge five specific gaps: payout reconciliation, COGS attribution, refund period matching, gift card liability, and channel-variable cost allocation. ### What Shopify gives you natively Shopify Reports cover sales analytics well: sales by product, SKU, channel, traffic source, customer; order timing, AOV, cohort and repeat-rate; tax collected, shipping charged, discounts; inventory on hand with reorder forecasts. What they do not give you is a real P&L. The gross margin in Shopify Reports is built off the Cost per item field, typically left as FOB and rarely updated. Profit reports are sales-driven, not accounting-driven. Good for merchandising decisions, terrible for closing the books. ### The five gaps **1. The payout reconciliation gap.** Shopify Payments deposits net cash every 1 to 3 business days, bundling order revenue from multiple sales, payment processing fees (2.4 to 2.9 percent + $0.30), refunds in that window, chargebacks, and adjustments. The deposit amount almost never matches gross sales of any single day. The right pattern: recognize revenue per order at ship date, accrue payment processing fee per transaction, book the deposit as clearing entry against unsettled-payouts receivable. **2. The COGS attribution gap.** Shopify stores a Cost per item field per product. Most brands enter FOB cost once, never update. Shopify uses this for Profit reports: a fictional gross margin that ignores freight, duty, broker, last-mile. The fix is to push landed cost (computed in inventory system per shipment per SKU) into the order COGS at the time of sale. Under FIFO or weighted-average, the cost flowing to each order's COGS is the landed cost of the unit shipped, not static Shopify Cost per item. **3. The refund period matching gap.** A refund issued today reduces revenue in today's period under Shopify Reports. But the underlying sale happened weeks ago, in a period that may already be closed. The pattern that handles this: at sale time, accrue a refund reserve (contra-revenue liability) based on historical return rate for the SKU. As actual refunds process, clear them against the reserve. Adjust the reserve estimate quarterly. Without this, current-period revenue is overstated for growing brands and understated when growth flattens. **4. The gift card liability gap.** A gift card sale is not revenue. It is a liability: the brand owes future product equal to the card value. Revenue is recognized at redemption, in the amount of goods provided. Unredeemed balances accumulate as deferred revenue. For brands with seasonal gift card volume (Q4 surge), deferred revenue can be 5 to 15 percent of holiday-period sales. The right pattern: never book gift card sales to revenue. Book to a Gift Card Liability account. Recognize at redemption. **5. The channel-variable cost gap.** Shopify is one channel among several. A brand selling on Shopify plus Amazon plus TikTok Shop has different channel-variable costs per channel (fulfillment, payment processing, advertising). Shopify Reports cannot show per-SKU contribution margin across channels because they only see Shopify orders. Channel-variable costs from all channels need to flow into a unified ledger. ### What Shopify Reports do well (and badly) Shopify can answer: what sold last week, sell-through by SKU, discount rate by collection, AOV by traffic source. Shopify cannot answer: true gross margin (COGS is FOB-only), contribution margin (missing fulfillment, fees, ad allocation), gift card liability balance (shows outstanding but not properly accounted as deferred revenue), expected refund reserve, channel contribution margin, GAAP revenue for the period (issues with refunds, gift cards, payouts). ### How to bridge the gap Three roads. The first two are dead ends for $10M to $50M brands. Excel hell (controller manually reconciles weekly, stale by day one). A2X or Synder into QuickBooks (better for payouts, weak on landed cost, gift cards, refund reserves; adequate under $5M; inadequate above $10M). A finance OS layer (pulls Shopify order data via API, layers landed cost from inventory system, accrues refund reserves and gift card liability properly, produces continuously-updated multi-channel P&L). The third road is what tools like FynOS are built to provide. --- ## Landed cost accounting for D2C: definition + worked example **Source:** https://www.fynos.ai/insights/landed-cost-accounting **Published:** 2026-05-27 **Author:** Hindole Dutta (Co-Founder & CEO, FynOS) **Category:** Finance Operations Landed cost is the total cost to deliver inventory to your warehouse, per unit. FOB plus international freight plus duty plus broker plus insurance plus inland transport. For D2C brands sourcing internationally, landed cost is typically 1.3 to 1.8 times the FOB cost. Using FOB as COGS overstates gross margin by 30 to 80 percent. ### What landed cost is Landed cost is the true unit cost of inventory once it reaches your warehouse and is available to sell. It is what gross margin should be computed against. The reason this matters is simple arithmetic. If you import a SKU at $10 FOB, freight adds $2, duty adds $1.50, broker and inland add $0.80: your true landed cost is $14.30. If you book COGS at $10 and sell for $25, you think you have 60 percent gross margin. Your actual gross margin is 43 percent. Every operating decision based on the wrong number is corrupted. ### The six components (1) FOB cost: the supplier invoice. (2) International freight: ocean (charged primarily by volume) or air (chargeable weight). Include bunker and peak-season surcharges. (3) Customs duty: based on HTS classification and country of origin. 0 percent (favored-nation) to 30+ percent (apparel, food, chemicals). USITC tariff database is source of truth for US. Misclassification is common and expensive. (4) Customs broker fees: typically $100 to $300 per entry plus per-line-item fee. (5) Insurance: cargo insurance in transit, usually 0.1 to 0.5 percent of CIF value. (6) Inland transport: port to warehouse drayage and trucking. ### Allocation: shipment cost to per-SKU cost Four methods: pro-rata by unit count (best for homogeneous shipments, wrong when SKUs differ in size or value), pro-rata by cubic volume (most accurate for ocean freight, requires per-SKU volume data), pro-rata by FOB value (best for duty allocation since duty is value-based, distorts freight for heavy low-value SKUs), hybrid (allocate freight by volume, duty by value, broker fees by unit count, inland by volume or unit count). The hybrid method is the most accurate for D2C brands with mixed shipments. ### Worked example One container with two SKUs. SKU-A: 1,000 units, $10 FOB each, 0.05 m³ per unit, duty rate 5 percent. SKU-B: 500 units, $20 FOB each, 0.10 m³ per unit, duty rate 10 percent. Combined: $20,000 FOB, 100 m³ total. Freight $4,000 (allocated by volume), duty $1,500 (computed per-SKU rate), broker fee $300, inland $500. Per-unit landed cost: SKU-A = $10 FOB + $2 freight (volume share) + $0.50 duty + $0.20 broker + $0.25 inland = **$12.95** (1.30x FOB). SKU-B = $20 + $4 + $2 + $0.20 + $0.50 = **$26.70** (1.34x FOB). A 30 percent uplift over FOB is in the typical range. For high-duty categories (apparel at 16 to 32 percent), it can be 1.6 to 1.8x. ### Landed cost and inventory valuation FIFO: cost of each sold unit is the landed cost of the oldest unsold unit. When a new shipment lands at different landed cost, only new units carry the new cost. Weighted average: running average across all units in stock, recalculated when new shipments land. Specific identification: each unit tracked individually (used for high-value goods, not typical D2C). Whichever method, the prerequisite is accurate landed cost per shipment. FOB-only valuation produces wrong COGS under any method. ### Common errors (1) FOB-only COGS: the most common mistake. Treats freight, duty, broker as opex rather than inventory cost. Overstates margin by 30 to 80 percent. (2) Flat percentage uplift: adds 20 percent on top of FOB and calls it landed. Misses shipment-by-shipment variation. (3) Forgetting to update on new shipments: a SKU costed at $12.95 first shipment can land at $14.50 next due to freight rate or duty changes. (4) Ignoring exchange-rate impact: if you pay in USD but supplier invoices in another currency, effective FOB cost is exchange rate at payment, not invoice. ### Tax: Section 263A For US sellers with average annual gross receipts above the small-business threshold ($30M as of 2026), Section 263A (Uniform Capitalization rules) requires capitalizing certain indirect costs into inventory, not just direct landed cost. Smaller brands using the cash method can usually expense as goods are sold. Either way, accurate landed cost is a prerequisite for correct tax accounting. --- ## The complete guide to Amazon FBA fee reconciliation (2026) **Source:** https://www.fynos.ai/insights/amazon-fee-reconciliation **Published:** 2026-05-27 **Author:** Hindole Dutta (Co-Founder & CEO, FynOS) **Category:** Finance Operations Amazon settlements bundle 40+ fee types from referral, FBA fulfillment, storage, returns, ads, and reimbursements. Most brands match 60 to 70 percent of those line items back to specific orders and book the rest as miscellaneous COGS. That bucket typically hides 3 to 8 percent of revenue in unrecognized cost. Proper reconciliation requires matching every fee line to an order, an SKU, or a period, and the matching keys are inconsistent across fee types. ### Why Amazon FBA reconciliation is hard Amazon does not bill you. It deducts. Every 14 days, FBA sellers receive a net deposit and a settlement report. The report contains a long list of credits (sales, reimbursements) and debits (fees, refunds, advertising spend). The hard part is figuring out which order, SKU, or inventory event each line is attached to. Three properties of the report make this hard: (1) Fee types are inconsistent in granularity: referral fees are per order, FBA fulfillment fees per unit, monthly storage fees aggregated for the period, long-term storage per SKU, reimbursements per claim ID. Each requires a different matching strategy. (2) Matching keys are inconsistent across fee types: some fees include the order ID, some include the SKU, some include both, some include neither. You cannot write a single JOIN. (3) The reports are append-only: a return today affects a sale from 3 weeks ago. Reconciliation has to be rolling, not period-locked. Brands that try in a spreadsheet typically match the easy 60 to 70 percent and dump the rest into an "Amazon Fees" bucket. That bucket is where the 3 to 8 percent margin distortion lives. ### The Amazon fee taxonomy Six categories cover every line in the settlement report. Each has its own matching strategy. - **Referral fees** (per-sale commission, 8 to 15 percent typical). Match to order. Frequency: per sale. - **FBA fulfillment fees** (pick-pack-ship, size/weight tiered). Match to order + SKU. Frequency: per unit shipped. - **Storage fees** (monthly, long-term, aged-inventory surcharges, removals, disposals). Match to SKU + period. Frequency: monthly + event. - **Returns and reimbursements** (return processing, customer refunds, lost-inventory credits, damaged-inventory credits, FBA overcharge reimbursements). Match to order + claim ID. Frequency: event-driven. - **Advertising** (Sponsored Products, Sponsored Brands, Sponsored Display, DSP). Match to campaign + SKU if treated as COGS. Frequency: daily. - **Service fees** (multichannel fulfillment, FBA Liquidations, partner-carrier inbound, label fees). Match to order or shipment. Frequency: per event. ### The matching problem in detail **Order-level fees.** Referral, FBA fulfillment, and most return fees carry an Amazon Order ID. The easy 60 to 70 percent. Match on order ID, allocate to SKU(s), book against channel COGS for the period the order was recognized (not the settlement period, which is 14 to 21 days later). **SKU-level period fees.** Monthly storage and aged-inventory surcharges are per SKU but per period. Allocate to the SKU, accrue against the storage period, surface as per-SKU carrying cost. The point: a SKU that turns 8 times a year and one that turns once have wildly different real margins once storage is allocated correctly. The slow SKU is subsidized by the fast one in a blended view. **Period-level fees.** Account subscriptions, certain ad spend, aggregate aged-inventory removal fees cannot cleanly map to one SKU. Either allocate pro-rata by revenue or unit volume, or leave as channel-level fixed overhead. Choose consistently and document. Wrong move: drop into general overhead, decoupling cost from the channel that incurred it. **Reimbursements.** Amazon owes you for lost inventory, damaged inventory, FBA overcharges, and customer returns the seller credited but never received back. These post as positive line items with a reimbursement claim ID. Reconcile against the original loss event. Brands leak in two ways: failing to file claims for unreimbursed losses inside the 18-month Amazon window, and failing to reconcile received reimbursements against the underlying loss (which leaves the loss on books even after Amazon paid for it). ### The five fee categories most worth reconciling In order of typical impact on a $10M to $50M FBA seller: 1. **FBA reimbursements.** Most brands recover 0.5 to 1.5 percent of revenue here just by filing claims they had already earned. Third-party services charge 15 to 25 percent contingency to do this, which tells you how meaningful the recovery is. 2. **Long-term storage fees and aged-inventory surcharges.** Allocating per SKU surfaces slow movers quietly losing money. Action: run removal, liquidate, or discount before the next surcharge tier hits. 3. **Refund and return processing fees.** High-return SKUs (apparel, beauty, electronics) carry a punishing per-return fee. Without per-SKU allocation, you cannot distinguish "high-margin SKU with high returns" from "low-margin SKU with low returns." 4. **Advertising spend.** Treating PPC as opex rather than COGS distorts contribution margin. Allocate ad spend per SKU using campaign-to-SKU mapping, treat as channel-variable COGS. 5. **Inbound shipping fees.** Amazon's partnered carrier is convenient but pricier than DIY. Per-shipment, per-SKU allocation lets you compare partnered total cost against 3PL or direct ship. ### Common errors - **Booking the net deposit, not the gross.** Loses visibility into gross revenue and fee stack. Gross-up has to happen. - **Recognizing revenue at deposit date.** Revenue should be recognized at ship (transfer of control), not 14 days later when Amazon deposits. Right pattern: recognize at ship, hold unsettled-payouts receivable, clear on deposit. - **Bundling all fees into one expense line.** Defeats the per-SKU and per-channel allocation, which is the whole point. - **Ignoring returns and reimbursements until year end.** Claim window closes on losses, the trail goes cold on individual orders. Reconciliation has to be settlement-period rolling. ### How to operationalize Four ingredients: (1) An ingestion job that pulls settlement report, inventory ledger, and orders report every 14 days (or daily via SP-API). (2) A matching engine that joins each fee line to its target object (order, SKU, period, claim) and flags unmatched lines for review. (3) An allocation policy for period-level and SKU-period fees (pro-rata by revenue, by units, or fixed). (4) An exception queue for anomalies: unusually high fees on a SKU, unexpected reimbursements, fee types you haven't mapped before. Most discrepancies surface here. The free Finance Grader diagnostic at finance-grader.com quantifies how much your current setup is leaking on Amazon fee reconciliation alone, based on stack and channel mix. --- ## What is Multi-Channel P&L? A 2026 guide for D2C brands **Source:** https://www.fynos.ai/insights/multi-channel-pnl **Published:** 2026-05-26 **Author:** Hindole Dutta (Co-Founder & CEO, FynOS) **Category:** Finance Operations Multi-channel P&L is a profit-and-loss view that separates revenue, COGS, and margin by sales channel (Shopify, Amazon, TikTok Shop, wholesale, retail) rather than aggregating them into a single line. Classical accounting tools were built for one channel. Brands at $10M to $50M revenue running on three or more channels routinely discover that 30 to 40 percent of their SKUs are unprofitable on one channel while looking healthy in aggregate. The fix is not a better spreadsheet. It is a finance system that recognizes revenue, attributes COGS, and reconciles fees per channel as the events happen. ### Why "P&L" breaks for multi-channel D2C The standard P&L assumes one revenue source and one cost stack. Sales come in, COGS leaves, gross margin pops out. That model works for a brand on one channel. It quietly disintegrates the moment a brand adds Amazon. Amazon does not pay you when the customer orders. It deposits a net amount every two weeks, after deducting referral fees, FBA fees, storage fees, returns, advertising spend reimbursements, and seller-fulfilled shipping reimbursements. The same order that looked like a $40 revenue line on day 1 might net $24 after fees on day 14, and that is before you have allocated COGS or fulfillment. TikTok Shop is worse. Seller fees vary by category, the affiliate commission program adds a variable take rate, and the reconciliation cycle is daily, not biweekly. Wholesale flips the polarity entirely: you book revenue at the invoice date, but payment lands 30 to 60 days later, returns are rare, and margins are 40 to 60 percent lower than DTC. A single P&L line for "Revenue" cannot represent five behaviorally different income streams. When a brand tries, the result is one of three failure modes: the CFO trusts the QuickBooks number, which is wrong by 8 to 15 percent; the brand maintains a "real" P&L in Excel, which the CEO trusts and the auditors do not; or the brand stops trusting any single number, and finance becomes a quarterly defense exercise. ### What multi-channel P&L should actually compute A working multi-channel P&L produces four numbers per channel, recomputed continuously: (1) Net revenue (gross sales minus returns, refunds, chargebacks, and channel-specific discounts); (2) Channel COGS (landed product cost plus channel-specific variable costs like fulfillment, packaging, payment processing); (3) Channel fees (referral fees, marketplace fees, payment-platform fees, ad allocation if treated as cost of revenue); (4) Channel contribution margin (1 minus 2 minus 3). This is the number that tells you whether the channel is paying for itself. Then it should compute the same four numbers at the SKU x channel intersection. SKU-level matters because aggregate channel margins lie. A channel can look profitable while 30 percent of SKUs sold on that channel are loss-making. The expensive product that subsidizes the cheap one is invisible in the aggregate view. ### The four hard problems **Revenue recognition timing.** Each channel pays on a different cycle. Shopify daily-weekly, Amazon every 14 days, wholesale 30-60 day NET, TikTok Shop daily-ish. A naive P&L either books revenue at order date or at deposit date; neither is right. The correct answer is to book revenue when control transfers, hold an unsettled-payouts receivable, and reconcile against deposits as they land. **Channel-specific fee reconciliation.** Amazon settlement reports contain around 40 distinct fee types. FBA storage fees alone come in five flavors. TikTok Shop fees are documented in three different places, and the seller console disagrees with the API in 5 to 10 percent of cases. Reconciliation requires matching every fee line to an order, an inventory event, or a period. **COGS attribution.** The same SKU sold on three channels has different landed cost because freight allocation differs (a Shopify order from a 3PL is different from FBA from an Amazon warehouse), and fulfillment cost differs by orders of magnitude. True COGS per SKU per channel is materially different. **Inventory consumption.** Cross-docking and shared inventory pools mean the same physical unit could service any channel. When 1,000 units sell across three channels in a month, which channel ate which units matters because the unit-economic story differs by channel, and under FIFO or weighted-average, the cost basis assigned to each sale depends on consumption order. ### How operators solve this today Excel hell (around 70 percent of brands at $10M to $50M): CFO spends 3 to 8 days a month pulling reports and producing the "real" P&L in a spreadsheet. Stale on day one, broken by month three, untrustable by year end. Custom integrations (around 20 percent): A2X, Synder, Webgility, or homegrown scripts piping channel data into QuickBooks or Xero. Better than Excel but cannot handle channel-level COGS or SKU-level margin. Enterprise ERP (around 10 percent): NetSuite, Microsoft Dynamics, Sage Intacct. Designed for manufacturers and wholesale-first businesses, not omnichannel D2C. $200K to $380K Year 1 cost, 12 to 18 month implementation. Most D2C brands cannot justify until past $100M. Continuous multi-channel close (the emerging fourth road): Purpose-built finance systems that ingest channel-event streams in real time, recognize revenue at the transfer-of-control event, reconcile fees as they post, allocate COGS at the SKU x channel level, and recompute the P&L continuously. This is what FynOS is built to do. ### Diagnostic gut-check If three or more of these are true, the current setup is leaking 2 to 5 percent of revenue in unrecognized cost: - Cannot answer "what was my Amazon contribution margin last week" in under 10 minutes - Month-end close takes more than 5 business days - QuickBooks gross margin disagrees with the "real" Excel margin by more than 3 percentage points - Allocating freight and duty based on a flat percentage rather than actual landed cost per SKU - Treating Amazon fees as a single P&L line rather than reconciled per order - Do not know which of the top 20 SKUs is loss-making on which channel The free Finance Grader diagnostic at finance-grader.com quantifies the leak in 8 to 15 seconds. ### Key questions and answers **Is multi-channel P&L the same as channel-level reporting?** No. Channel-level reporting shows revenue by channel; most accounting tools do this badly. Multi-channel P&L additionally computes channel COGS, channel fees, and channel contribution margin, with the right revenue-recognition timing per channel. **Can it be done in QuickBooks Online or Xero?** Not at the precision a $10M to $50M brand needs. QuickBooks and Xero can hold separate income accounts per channel but cannot reconcile fee-level Amazon settlements, attribute landed cost per SKU per channel, or compute contribution margin without external workarounds. **Contribution margin vs gross margin?** Gross margin uses landed product cost only. Contribution margin additionally subtracts variable channel costs (referral fees, fulfillment fees, payment processing, returns) that scale with revenue on that channel. Gross margin tells you the product is healthy; contribution margin tells you the channel pays for itself. **How often should it be recomputed?** Continuously. Channel fees, returns, and payouts post on different cycles. A monthly P&L produced 10 days after month-end is always 30 to 40 days stale on at least one channel. **Software problem or process problem?** Both, software-first. A great process running on QuickBooks still leaks precision because the data model cannot represent channel-level margin natively. A correct data model that treats every channel as a first-class object turns the process problem into an automation problem. **Connection to inventory accounting?** Tight. The same unit of inventory has different unit economics depending on which channel sold it. Multi-channel P&L requires inventory accounting that tracks consumption per channel, applies the correct landed cost, and updates the cost basis as new POs land.