Accounting for Multiple Ecommerce Brands: Keep a Portfolio's Books Clean
How to keep clean books across multiple ecommerce brands: chart of accounts, shared cost allocation, monthly close checklist, and common mistakes.
One store with messy books is annoying. Five brands with messy books is a business you can no longer read: you don't know which brand is profitable, which one is quietly burning ad spend, or how much cash you actually have. This guide covers how to structure accounting for multiple ecommerce brands—chart of accounts, shared cost allocation, a monthly close routine, and the mistakes that sink portfolio operators. It's deliberately high-level and jurisdiction-neutral: the principles apply whether you're incorporated in the US, the EU, or Vietnam. It is not tax or legal advice—entity structure, VAT/sales tax, and filing obligations vary by country, so confirm specifics with a professional in your jurisdiction.
First Decision: One Set of Books or Several?
Before you touch a chart of accounts, answer a structural question: how do your brands map to legal entities and bank accounts?
One entity, multiple brands (most common early on). All brands live under one company, one set of books, one tax filing. You separate brands "inside" the books using dimensions—classes, tracking categories, or sub-accounts. This is the cheapest structure to run and the right default while brands are small.
Multiple entities, one per brand (or per market). Each brand has its own registration, bank account, and complete set of books. You get legal separation (one brand's dispute or liability doesn't automatically touch the others) at the cost of multiplied admin: separate filings, separate reconciliations, and inter-company charges whenever brands share resources. Operators usually move here when a brand gets large, when they plan to sell a brand individually, or when brands operate in different jurisdictions.
The hybrid. One holding entity owns brand entities, or one main entity plus a separate entity for a single high-risk or high-value brand.
Two rules hold regardless of structure:
- One brand's money should be traceable to that brand. Even inside a single entity, every sale, refund, fee, and expense should carry a brand label.
- If brands are separate entities, never let money cross between them without documentation. Paying Brand B's ad bill from Brand A's card creates an inter-company loan whether you meant it or not—record it, or your books stop matching reality.
If you also run multiple "stores" per brand (say, per-market Shopify stores), the same logic extends one level down—our guide to multi-store bookkeeping and reconciliation covers separating revenue by store before you consolidate.
Chart of Accounts: Per Brand vs. Consolidated
The chart of accounts (CoA) is the list of buckets every transaction lands in. For a portfolio, you have two viable designs.
Option 1 — One shared CoA plus a "brand" dimension. Keep a single, clean account list (Revenue, Refunds, Payment fees, Ad spend, COGS, Software, Payroll…) and tag every transaction with its brand using your software's dimension feature:
- QuickBooks Online: class tracking (available on the Plus and Advanced plans) lets you tag transactions by segment and run a P&L by class—one column per brand.
- Xero: tracking categories work the same way; you can have up to two active categories per organisation (e.g., one for "Brand", one for "Sales channel"), each with its own options.
This is the recommended default. The account list stays short, adding a brand is instant (add one class/option, not thirty accounts), and you can view any report consolidated or filtered per brand.
Option 2 — Duplicate accounts per brand. Create "Revenue – Brand A," "Revenue – Brand B," "Ad spend – Brand A," and so on. It works in software without dimensions, and some accountants prefer it for small portfolios, but it bloats fast: 10 core accounts × 6 brands is 60 accounts, and every new expense type has to be created N times. If you go this route, use a strict naming convention (<Account> – <Brand code>) so reports sort sanely.
Either way, follow these CoA rules:
- Record gross, not net. Book gross sales, then refunds and payment-processing fees as their own lines—don't just book the bank deposit. Shopify's payout reconciliation report (in the admin's Finance section) breaks each payout into gross amounts, fees, and net, which is exactly the split your ledger needs. Our walkthrough of Shopify Payments payout reconciliation covers this step by step.
- Give platform and payment fees their own accounts. Payment processing, platform subscriptions, marketplace commissions, and app charges are real costs that routinely eat 3–6% of revenue; burying them in "bank fees" hides them from per-brand P&Ls.
- Separate COGS from operating expenses. Product cost, inbound freight, and fulfillment belong in COGS so gross margin per brand is visible; ads, software, and salaries sit below the line.
- Mirror the structure across brands. Whatever buckets Brand A has, Brand B has. Comparability is the whole point of a portfolio P&L.
Allocating Shared Costs: Ads, Tools, Staff
Direct costs are easy—Brand A's Facebook ad account, Brand A's supplier invoices. The hard part is everything shared: the ops manager who covers all brands, the multi-store management tool, the 3PL contract, the office. If you don't allocate these, small brands look artificially profitable and your flagship looks worse than it is.
Pick a driver that roughly matches how each cost is consumed:
- Ad agency retainer / creative team → allocate by ad spend per brand
- Ops & support staff → allocate by order count per brand (or logged time)
- Software billed per seat or flat → split evenly, or by order count
- 3PL / warehouse contract → allocate by units shipped per brand
- Accounting, legal, rent, insurance → allocate by revenue share per brand
Three practical rules:
- Keep it simple and consistent. A revenue-share split applied every month beats a "perfect" activity-based model you abandon by Q3. Precision matters less than consistency.
- Write the method down. One page: which costs are shared, which driver applies, when you revisit it (e.g., annually or when brand mix shifts materially). Your accountant—and future you—will need it.
- Show allocations as their own line. On each brand's P&L, keep "allocated shared costs" separate from direct costs. That way you can see both "contribution margin" (revenue minus direct costs—the number that tells you whether to scale ads) and "fully-loaded profit" (after allocations—the number that tells you whether the brand deserves to exist). Judging kill/scale decisions on the wrong one is how operators shut down brands that were actually carrying the team, or keep zombie brands alive. The same contribution-first logic drives profit tracking for dropshipping stores.
If brands are separate legal entities, allocations become inter-company recharges: one entity invoices the others for its share of the shared cost. Same math, but now it's real invoices with a paper trail—another reason many operators stay single-entity until brands justify the overhead.
The Monthly Close: A Portfolio Checklist
A "close" means locking the previous month's numbers so reports stop moving. For a portfolio, run it per brand, then consolidate. A realistic checklist for the first week of each month:
- Reconcile every bank and payment account. Match each Shopify payout, PayPal transfer, and card statement to the ledger—per store, per brand. Unmatched deposits are where errors hide.
- Book gross sales, refunds, and fees per brand. From payout/finance reports, not bank deposits. Automations help here: syncing orders to Google Sheets or using a payout-mapping integration removes most of the manual matching.
- Capture all ad spend. Pull final invoiced amounts from Meta, Google, TikTok per brand—ad platforms bill on their own cycles, and dashboard spend rarely equals invoiced spend to the cent.
- Record COGS and update inventory. Post supplier invoices, freight, and fulfillment charges to the right brand; adjust inventory balances if you carry stock.
- Post shared-cost allocations. Apply your documented drivers; if multi-entity, issue inter-company invoices.
- Check pending liabilities. Open disputes and chargebacks, unshipped prepaid orders, and refund backlogs are money already promised away—note them even if you account on a cash basis.
- Run the brand P&L pack. One P&L per brand plus a consolidated view, and skim for anomalies: a brand whose payment fees jumped, ad spend without matching revenue, refund rate creeping up.
- Lock the period. Close the books so last month's numbers can't silently change under you.
Expect the first close to hurt and the third to take a day. If it still takes a week by month four, the fix is usually upstream data, not accounting effort: when every store's orders, refunds, payouts, and ad spend already sit in one place, close becomes checking rather than gathering. That's the gap consolidated dashboards exist to fill—StoreFleet, for example, pulls revenue, ad spend, and payouts from all your Shopify stores into one finance view, so per-brand numbers are ready before you open the ledger.
Common Mistakes That Wreck Portfolio Books
- Mixing personal and business money. The classic. Personal card pays for samples, business account pays a personal subscription. In a multi-brand setup it's doubly toxic because it breaks both entity separation and brand attribution. One business account (at least) per entity, no exceptions.
- Booking deposits as revenue. The bank deposit is net of fees, refunds, and holds. Treating it as revenue understates sales "and" hides your real fee burden. Always book from payout reports.
- Ignoring platform and payment fees per brand. A brand with small orders and high dispute rates can pay double the effective fee rate of its sibling. If fees are one blended lump, you'll never see it.
- Letting brands "borrow" from each other untracked. Cash moved between brand wallets or entities without a journal entry means neither P&L is true.
- No allocation method—or a new one every month. Both make month-over-month comparison meaningless.
- Judging brands on revenue instead of contribution. Your portfolio strategy depends on knowing which brands earn their keep—the same discipline behind a deliberate niche store portfolio strategy.
- Closing "when there's time." Books that are three months behind aren't books; they're archaeology. A fixed close date is the single highest-leverage habit on this list.
When to Involve an Accountant
You can run a small portfolio on well-organized software plus discipline. Bring in a professional when:
- You're choosing or changing entity structure—one entity vs. many, holding companies, or selling a brand. Getting this wrong is expensive to unwind.
- You cross a tax threshold or a border. Sales tax/VAT registration, marketplace facilitator rules, and cross-border obligations are jurisdiction-specific and unforgiving; this is exactly where "not tax advice" ends and a licensed advisor begins.
- Brands are separate entities that share anything. Inter-company recharges and transfer pricing need professional setup.
- You're preparing for a sale or investment. Buyers diligence per-brand books; clean, separable records add real money to the price.
- The close eats more than a couple of days a month. A bookkeeper doing the monthly mechanics is usually cheaper than your time, and an accountant reviewing quarterly catches drift early.
The pattern that works for most operators: an accountant designs the structure once (CoA, dimensions, allocation policy), a bookkeeper or automation runs the monthly close, and you read the per-brand P&L pack every month. Structure first, automation second, discipline always—that's what keeps a portfolio's books an asset instead of a liability.
Sources
- QuickBooks Help | Create and manage classes in QuickBooks Online
- QuickBooks Help | Get started with class tracking in QuickBooks Online
- Xero Central | Set up tracking categories and options
- Shopify Help Center | Payout reconciliation report
- Shopify Help Center | Finance reports
- Shopify Help Center | Viewing and exporting Shopify Payments payout details
- A2X | Shopify multi-entity accounting guide