Mastering Deferred Revenue in SaaS Accounting: A Guide for Odoo Users
- Brett J. Federer, CPA

- Jul 23
- 3 min read
Updated: Aug 23

One of the hardest things about SaaS (software-as-a-service) accounting is that cash and revenue don’t move at the same pace.
You can close a big contract, invoice the full amount, and see your bank balance jump — but that doesn’t mean you’ve earned it yet. In SaaS, revenue is earned as you deliver the service, not when the money shows up. If you’re not tracking that distinction, your financials can paint a very misleading picture of your growth.
This is where deferred revenue comes in. Done right, it tells you — and your investors — exactly how much of your revenue is already earned versus how much is still tied to future service. Done wrong, it makes you look better (or worse) than you really are. Here’s how to handle SaaS accounting for deferred revenue in Odoo, using a simple example.
Understanding the Contract Stage: Why It’s Not Revenue Yet
Imagine you sign a $120,000 annual contract — $10,000 a month for the next year. It feels like a big win, and you should book the full amount as revenue eventually — but not today. From an accounting perspective, you’ve locked in the deal, but you haven’t delivered the service yet.
This timing issue is especially common in business-to-business (B2B) SaaS, where larger customers are often invoiced for the entire year upfront. They’re paying for a year of access, but you’re delivering that service month by month. Until you do, most of that cash is essentially a promise you still owe them.
On the books, that first invoice records two things:
The customer owes you money (Accounts Receivable – Current Asset)
You owe them 12 months of software (Deferred Revenue – Current Liability)
Journal Entry:
Debit: Accounts Receivable (Current Asset) 120,000
Credit: Deferred Revenue (Current Liability) 120,000
At this point, you’ve won the contract, but every dollar still sits as a liability.
When the Cash Arrives: Same Obligation, Different Asset
When the payment clears, your bank balance goes up, but nothing changes about your obligation. The only difference is what kind of asset you’re holding — cash instead of a receivable.
Journal Entry:
Debit: Cash (Current Asset) 120,000
Credit: Accounts Receivable (Current Asset) 120,000
The cash may be in your account, but until you deliver the service, it’s still tied to future work.
Earning Revenue the Right Way
This is where most SaaS founders underestimate the timing. The $120,000 isn’t all “yours” yet — you release it as you provide the service.
Each month, you recognize $10,000 as revenue and reduce the liability by the same amount:
Journal Entry:
Debit: Deferred Revenue (Current Liability) 10,000
Credit: Subscription Revenue (Revenue) 10,000
After the first month:
Cash: 120,000
Deferred Revenue: 110,000 remaining
Revenue Recognized: 10,000
By month 12, the deferred revenue balance drops to $0, and every dollar is earned.
What If a Cancellation Ever Happens?
Cancellations aren’t common in annual contracts, but they happen — and when they do, you need to refund whatever hasn’t been earned yet.
Let’s say the customer cancels after 7 months:
You’ve earned 7 × $10,000 = 70,000
50,000 remains unearned and must be refunded
Journal Entry:
Debit: Deferred Revenue (Current Liability) 50,000
Credit: Cash (Current Asset) 50,000
The debit reduces the liability because you no longer owe that service. The credit reflects the actual refund going back to the customer.
After the refund:
Revenue Recognized: stays at 70,000 (already earned)
Deferred Revenue: drops to 0 (you no longer owe service)
Cash: decreases by 50,000 (returned to the customer)
Why Getting This Right Matters
Clean deferred revenue schedules do more than keep accountants happy. They tell a true story about your growth:
How much cash is free to reinvest versus tied to future service
How much of your revenue is truly recurring and predictable
Whether your current burn is funding today’s work or tomorrow’s obligations
Investors notice that story — and they trust it when it’s clear.
Handled correctly, deferred revenue shifts from being just another accounting rule to one of the best ways to show the health of your business.
Conclusion: The Importance of Accurate Deferred Revenue Tracking
In conclusion, understanding and managing deferred revenue is crucial for SaaS businesses. It ensures that your financial statements accurately reflect your company's performance. By doing so, you can make informed decisions about growth and investment.
With over five years of working in the SaaS industry, I help SaaS founders build controller-grade financial clarity in Odoo, so they can scale with clean, reliable numbers. Reach out to me on my Contact page and I'll be happy to help you.


