Profit and loss for Shopify fashion brands: a monthly P&L and cash flow report in KNKTD OS

A monthly P&L built from the variant cost, the label, the customs owed, the fees actually charged and the ad accounts — then the same month as cash, including what the factories are still owed.

· 8 min read

In short: KNKTD OS has two finance reports built from the records the brand already runs on. Profit & Loss walks one month from net sales to operating profit — duties in DDP prices, cost of goods, shipping, payment fees, chargebacks, ad spend, influencer gifting and the expenses you enter. Cash Flow shows the same month as money that actually moved, explains why cash differs from profit, and lists what is still owed on open purchase orders.

Shopify tells a fashion brand what it sold. It does not know what the units cost at the factory, what the labels cost, what customs is owed out of a duty-paid price, or what went on Meta that month. So the monthly profit figure usually lives in a spreadsheet stitched together after the fact, and the question "we were profitable, so where is the cash?" goes unanswered.

KNKTD OS already holds those records — the order, the variant cost, the label, the ad account, the purchase order and its payments. The two reports below read them directly. Neither is accounting software and neither files anything; they are the operating view a founder checks before the books are closed.

The Profit & Loss report

The report covers one calendar month in the workspace's reporting time zone, optionally against a comparison month. It opens on the last closed month against the one before; the month in progress can be picked too and is labelled month to date. Four cards lead — net sales, gross profit, contribution and operating profit, each with its margin and change — followed by a bridge chart from net sales to profit, the variable costs ranked by size, fixed costs by category and a six-month operating-profit trend.

The statement, top to bottom:

LineWhat it is
Net salesAfter discounts and returns; returns booked in the month they were refunded
− Duties & taxes in priceWhat customs is owed out of duty-paid (DDP) prices, recorded on each order line
− Cost of goodsUnits kept × the variant's cost — the supplier price
= Gross profit
+ Shipping, netShipping charged, less shipping refunded and labels bought, plus return-label fees withheld
− Payment processing feesActual Shopify Payments fees once synced; your own rates for other providers
− Chargebacks lostDisputed amounts taken back, less disputes won
− Service fees remittedCheckout add-ons such as package protection, collected in sales but owed onwards
− Ad spendFrom connected ad accounts, converted to the workspace currency
− Influencer giftingThe cost of units shipped on gift and paid-collaboration orders, plus their labels
= Contribution
− Fixed costsThe expenses you enter, by category
= Operating profit

A few lines are worth explaining for a fashion brand in particular.

Duties & taxes in price. A brand selling duty-paid into the US or UK collects the duty inside the price. That money is not sales; it belongs to customs. KNKTD OS records, per order line, the duty and tax the store owes, using the same landed-duty maths as the Margin report, and takes it off before gross profit. A discount code does not reduce it: halving the price does not halve what customs is owed.

Cost of goods. Cost is the variant's unit cost — the supplier price — on units that were kept. Returned units come back off cost of goods in the month they were refunded, like the sale. Freight and other landing costs are not part of the figure today. When units sold have no cost recorded, the report says how many, and that cost of goods is understated, rather than counting them at zero in silence.

Shipping, net. A label is only half of shipping. Deducting labels without the shipping customers paid would charge the month twice, so the line nets shipping charged, shipping refunded, the labels bought through the orders module and the return-label fees withheld from refunds. It can be positive.

Influencer gifting. Gifts are a marketing cost that leaves as product, so they have their own line beside ad spend instead of disappearing into cost of goods. The rule is the one the influencers module uses.

Payment fees, and what happens when they cannot be counted

Processing fees are the line most monthly P&Ls guess. KNKTD OS does not.

For Shopify Payments, the workspace can turn on Read payment fees in the Shopify settings. It is off by default and needs a one-time reconnect to grant read access to the payments account. Once on, the actual fee on every charge, refund and chargeback is read back up to 24 months and kept current hourly. Payouts are read, never changed; reconciling them is a separate report.

For other providers — PayPal, Klarna, Afterpay and the rest — the owner enters a rate per provider: a percentage of each charge, an optional fixed fee per order, and the month it applies from. Gift cards, store credit and Shop Cash are skipped when finding the provider that took the money, since they charge no processing fee.

When a month's fees cannot be counted — the setting is off, the store has not reconnected, the history has not been read back that far, or an order went through a provider with no rate — the line shows Not counted with the reason, never a zero. Contribution, operating profit and break-even then say they leave those fees out. Chargebacks lost come from the same sync, so they are unknown exactly when Shopify Payments fees are.

Fixed costs you enter once

Salaries, rent and subscriptions are not in any store system, so the report takes them from you: a name, a category (salaries & contractors, rent & utilities, software & subscriptions, professional services, marketing (other) or other), an amount, and whether it repeats every month or happens once. A recurring expense counts from its start month until it is ended; changing the amount starts the new figure from a chosen month without rewriting the months before it.

An expense can be entered in another currency. It is converted when it is entered and that rate is kept, so last March's rent does not move every time exchange rates do. The dialog asks for amounts before sales taxes you claim back, such as GST/HST or QST.

With fixed costs in, a closed month shows break-even: the net sales that cover its fixed costs at its own contribution margin.

A PDF statement and an assistant that reads the same figures

The on-screen report is a dashboard; Export PDF produces the classic statement for the month and its comparison, with every notice the page shows — uncosted units, fees not counted, currencies with no exchange rate. The workspace assistant, which connects to Claude and ChatGPT, has a Profit & Loss tool that returns the same statement. The page, the PDF and the assistant share one calculation, so they cannot disagree.

Access is its own permission. Members without access to product costs see net sales and nothing below it.

The Cash Flow report

Profit is dated by the order. Cash is dated by when money moved. The Cash Flow report reads the same months in that second way:

  • Cash in: customer payments, dated by the order and including the tax and duties collected at checkout.
  • Cash out: refunds paid (not refunds to store credit or gift cards), chargebacks lost, payment fees, ad spend, shipping labels by purchase date, and your expenses.
  • Operating cash flow, then supplier payments from the purchase-order payment ledger by the date they were paid — deposits, balances, additional and other payments.
  • Net cash flow.

Each line is marked Exact, Approximate or Estimated, and a line that could not be read shows as not counted rather than zero. Fees, ad spend, expenses and cost of goods come from the Profit & Loss statements themselves, so the two reports cannot drift apart.

From profit to cash

A bridge card starts at the month's operating profit and walks to its net cash flow: stock bought vs sold (cost of goods is a cost but not a payment; paying a factory deposit is a payment but not yet a cost), tax & duties collected, and timing & other for the rest. For a brand paying deposits on next season while selling this one, the first step is usually the answer.

Still owed to suppliers

A separate panel lists what remains on open purchase orders, grouped as due now, this month, next month, later or no date, using each order's confirmed or planned ship date. Received orders with a balance are due now. The panel is kept out of net cash: it is money committed, not money moved.

The report is explicit about its limits. It sees money moving, not the bank balance, so there is no runway figure, and tax remitted to the authorities is not tracked.

Pricing

Both reports are part of the analytics module, included on every plan. Plans start at $100 USD per month for two team members, then $150 for five, $275 for ten and $500 for unlimited, with a 14-day free trial. See current pricing.

Bottom line

A monthly P&L for a Shopify fashion brand is only as good as its costs. KNKTD OS builds it from the variant cost, the label, the customs owed, the fees actually charged and the ad accounts, names every figure it could not count, and then shows the same month as cash — including what the factories are still owed.

Frequently asked questions

What lines does the KNKTD OS Profit & Loss report include?

Net sales after discounts and returns, less duties and taxes built into duty-paid prices and cost of goods, gives gross profit. Shipping net, payment processing fees, chargebacks lost, service fees remitted, ad spend and influencer gifting then give contribution. The fixed costs you enter by category give operating profit.

How are Shopify payment processing fees counted?

For Shopify Payments, turn on Read payment fees in the Shopify settings. It is off by default and needs a one-time store reconnect. The actual fees are then read back up to 24 months. For other providers such as PayPal or Klarna, you enter a percentage and an optional fixed fee per order. A month whose fees cannot be counted shows as not counted with the reason, never as zero.

Why is my cash flow different from my profit?

Profit is dated by the order and cash by when money moved. The Cash Flow report bridges the two. It starts at operating profit and walks to net cash flow through stock bought versus stock sold (supplier payments against cost of goods), the tax and duties customers paid at checkout, and timing and other differences.

Does KNKTD OS replace my accountant or accounting software?

No. The Profit & Loss and Cash Flow reports are an operating view built from the orders, costs, labels, fees, ad accounts and purchase orders already in KNKTD OS. They do not file taxes, track your bank balance or track tax remitted to the authorities. They show what the month made and where the cash went, before the books are closed.