By Waseem Chaudhry, Senior CPA, Accountico Inc
Disclaimer: This is general information, not tax, legal, or accounting advice; confirm your specific situation with a CPA.
You version-control your code and monitor production, but the finances live in a personal checking account, an unreconciled Stripe dashboard, and a spreadsheet last touched in March. That works until you raise a round or file a tax return.
Here's the finance stack I recommend for a seed-stage software company in California: what to set up, how data should flow, and what investors will ask to see.
1. Separate founder money from company money (day one)
- Open a business bank account and company card as soon as the entity exists, and run every company expense through them.
- Never pay personal expenses from company accounts. Commingling makes the books harder to trust and can weaken the corporation's liability protection.
- Reimburse founders through expense reports with receipts when they pay company costs personally.
- Document founder money going in. Decide with your attorney whether it's a stock purchase, a SAFE, or a loan. "Founder put in some money" is not an accounting category.
- Keep investor money out of revenue. SAFE and round proceeds belong on the balance sheet, never on the P&L.
2. A chart of accounts built for SaaS
Your chart of accounts is your schema. Design it so gross margin, R&D spend, and burn fall out naturally.
| # | Account | Why it matters |
|---|---|---|
| 1000 | Operating checking | Main bank feed |
| 1050 | Stripe clearing | Holds gross sales until payouts land |
| 2300 | Payroll liabilities | Should return to zero each cycle |
| 2400 | Deferred revenue | Annual plans not yet earned |
| 2500 | SAFEs / convertible notes | Classification depends on terms |
| 4000 | Subscription revenue | Recurring revenue only |
| 4100 | Services / onboarding revenue | Keep separate from recurring revenue |
| 5000 | COGS: Hosting (production) | Drives gross margin |
| 5100 | COGS: Payment processing fees | Classify consistently |
| 6000 | R&D: Salaries | Supports R&D credit work |
| 6050 | R&D: Contractors (US) | Domestic vs. foreign matters for tax |
| 6060 | R&D: Contractors (non-US) | See section 5 |
| 6100 | R&D: Dev tools and staging infra | Not COGS |
Split cloud costs by environment. Production hosting is cost of revenue; dev, staging, and CI are R&D. Tagging resources by environment turns this into a filter instead of a guess.
3. Stripe reconciliation without tears
The most common SaaS bookkeeping error is booking Stripe payouts as revenue. A payout is net of fees, refunds, and chargebacks, and often bundles several days of charges, so your MRR never ties to the books.
The fix is a clearing account:
- Record gross charges into Stripe clearing (offset to revenue or deferred revenue).
- Record Stripe fees, refunds, and disputes against clearing.
- When a payout hits the bank, move it from clearing to checking.
At month-end, the clearing balance should roughly equal what's still in Stripe. Sync tools automate this, but verify it:
import pandas as pd
# Column names vary by export; rename yours to match.
payouts = pd.read_csv("stripe_payouts.csv", parse_dates=["arrival_date"]) # id, amount, arrival_date
bank = pd.read_csv("bank_deposits.csv", parse_dates=["date"]) # date, amount, description
m = payouts.merge(bank, on="amount", how="left")
m["lag_days"] = (m["date"] - m["arrival_date"]).dt.days.abs()
matched = m[m["lag_days"] <= 3].drop_duplicates("id")
unmatched = payouts[~payouts["id"].isin(matched["id"])]
print(f"{len(matched)} payouts matched, {len(unmatched)} need review")
print(unmatched)
Anything unmatched is in transit, split, or a real problem worth chasing now.
4. Deferred revenue basics
If a customer pays $1,200 upfront for an annual plan, you haven't earned $1,200 in January. Under accrual accounting, you recognize it as you deliver the service:
| When | Debit | Credit | Amount |
|---|---|---|---|
| Jan 1 (payment) | Stripe clearing | Deferred revenue | $1,200 |
| End of each month | Deferred revenue | Subscription revenue | $100 |
Annual plans, multi-year deals, and setup fees all need a recognition schedule (customer, start date, term, amount) that ties to the deferred revenue balance every month.
5. Software development costs: book vs. tax
Financial reporting and tax law treat development costs differently. Keep the two questions separate.
For your financial statements (GAAP): Hosted SaaS is generally accounted for as internal-use software. At seed stage, most teams expense most development costs because capitalization criteria are narrow. FASB's ASU 2025-06 modernizes these rules for agile development (removing the old "project stage" framework), effective for annual periods beginning after December 15, 2027, with early adoption permitted. Whatever policy you choose, apply it consistently.
For federal tax (Section 174 / 174A): For tax years beginning in 2022 through 2024, research and experimental (R&E) costs, including most software development, had to be capitalized and amortized (five years for US research). The One Big Beautiful Bill Act, enacted July 4, 2025, added Section 174A, which again allows domestic R&E costs to be deducted currently for tax years beginning after December 31, 2024. Foreign R&E costs still must be amortized over 15 years. Transition rules for 2022–2024 costs had elections and deadlines (one small-business option closed in July 2026), so ask your CPA how your returns handled them.
That domestic/foreign split is why the chart above separates US and non-US contractors.
For California: California did not adopt the federal capitalization requirement, so R&E costs have generally remained deductible for state purposes, a federal/state difference to track.
The R&D credit: The federal research credit can apply to qualified wages, supplies, and part of contract research. Qualified small businesses (generally under $5 million in gross receipts and no more than five years of receipts) can use up to $500,000 per year of it against employer payroll taxes, which matters for pre-profit startups. California has its own research credit, with an alternative simplified method added starting in 2025. These rules are documentation-heavy, so confirm eligibility with a CPA before counting on the cash.
The bookkeeping takeaway: track engineering wages and contractors by person, project, and location from day one. That data is very hard to reconstruct later.
6. Delaware C-corp, California operations (briefly)
Most venture-backed startups are Delaware C-corps. If you operate in California, the company generally must register as a foreign corporation with the California Secretary of State. Budget for:
- California minimum franchise tax: $800 per year, though newly incorporated or qualified corporations are generally exempt from the minimum for their first taxable year.
- Delaware annual report and franchise tax: due March 1. If the authorized-shares bill looks alarming, ask about the assumed par value capital method.
- California Statement of Information filings.
7. Tools and data flow
A typical seed-stage stack:
- Ledger: QuickBooks Online or Xero, set to accrual basis
- Bank and card feeds: connected directly to the ledger
- Billing: Stripe, synced to the ledger through a clearing account
- Payroll: a provider that integrates with your ledger
- Spend: a corporate card or bill-pay tool with receipt capture
Treat the ledger as the source of truth and never let two integrations post the same transaction. Duplicate postings are the finance equivalent of a race condition.
8. Monthly close checklist
Run this within 10–15 days after month-end:
- [ ] Reconcile every bank and credit card account to statements
- [ ] Reconcile Stripe clearing and match payouts to deposits
- [ ] Update the deferred revenue schedule and post recognition
- [ ] Review payroll liabilities (should net to zero)
- [ ] Book accruals for unbilled expenses and prepaid amortization
- [ ] Code engineering spend by person, project, and location
- [ ] Review the P&L and balance sheet for anything that looks off
- [ ] Update runway: cash on hand ÷ average net burn
Whether you do this yourself or use outside bookkeeping services, what matters is that it happens every month, not every April.
9. What investors ask for in due diligence
When a priced round gets serious, expect requests for:
- Monthly accrual-basis financial statements, often for 12–24 months
- MRR/ARR that ties to recognized revenue, plus churn and customer concentration
- Bank statements that reconcile to the books
- Cap table, SAFEs, option grants, and board approvals
- Tax returns and franchise tax filings
- Payroll registers and contractor agreements with IP assignments
- R&D credit documentation, if you've claimed it
With a clean monthly close, diligence becomes an export. Without one, it's a fire drill.
TL;DR
Separate accounts, use a SaaS-shaped chart of accounts, reconcile Stripe through a clearing account, defer annual revenue, track engineering costs by location, and close monthly. Your finance stack should be as boring as good infrastructure.
Waseem Chaudhry is a Senior CPA at Accountico Inc in Union City, California, where he works with startups and small businesses across the Bay Area on bookkeeping, payroll, and tax compliance.
Top comments (0)