Skip to content
Rechnungskit
Accounting · Revenue recognition
Explainer

Deferred revenue for SaaS and online courses in Germany: when a pRAP is required

A pRAP (passiver Rechnungsabgrenzungsposten, deferred revenue) matters for providers that prepare a balance sheet when payment is recorded before the balance sheet date, the corresponding service is still owed after that date, and this period can be determined objectively. For SaaS annual subscriptions that is regularly the case; for online courses it depends on the specific obligation to perform, not on the access expiry date alone.

Quick check for subscriptions and courses

This page covers the cases that are disputed for software subscriptions and digital courses. What a pRAP is in principle, how to book it in the German standard charts of accounts SKR03 and SKR04, and how an annual plan is released month by month are covered in the basics article on deferred revenue (Rechnungsabgrenzung).

A deferred revenue item (passiver Rechnungsabgrenzungsposten, pRAP) does not shift a payment. For businesses that prepare a balance sheet, it makes sure that a payment already recorded only becomes revenue in the periods in which the service is economically provided. § 250(2) HGB and § 5(5) sentence 1 no. 2 EStG (both German) require revenue for a specific period after the balance sheet date for this.

Question Yes No
Does the business prepare a balance sheet? Keep checking Under cash-basis accounting (EÜR), generally no pRAP
Was the payment recorded as a receipt or revenue before the balance sheet date? Keep checking No transitory pRAP for this balance sheet date
Does the provider still owe a service after the balance sheet date? Keep checking No pRAP; service already provided
Is the service period fixed by calendar or objectively calculable? pRAP for the share after the date Usually no pRAP without a reliable time measure

Rule of thumb: what decides is not "SaaS" or "online course", but the service still owed under the contract and its objectively determinable period.

SaaS subscriptions: ongoing access is usually time-related

With a SaaS subscription, the provider typically owes a consistent continuing service over the whole term: availability of the application, hosting, access and often maintenance or support. If an annual subscription is paid upfront and the term runs past the balance sheet date, the share not yet earned is usually deferred.

SaaS case Typical treatment at the balance sheet date Why?
Annual subscription from October 1 to September 30, paid upfront pRAP for January to September Access and operational readiness are still owed after December 31
Monthly subscription from December 1 to 31 No pRAP at December 31 The service period ends on the balance sheet date
Monthly subscription from December 15 to January 14 pRAP for the January share An objectively determined period runs past the balance sheet date
One-time setup, fully accepted before the balance sheet date Usually no pRAP for the setup The specific one-time service has already been provided

One point for combined contracts: a one-time setup and the SaaS subscription that follows can be separate service components. The price should then be allocated to the components on a reasonable basis; an arbitrary allocation without a contractual or objective basis is risky.

For online courses, access alone does not answer the question

Digital courses need a closer look. An end date in the customer account does not automatically make the service time-related. Under the case law of the BFH (Germany's Federal Fiscal Court), what matters is whether the service owed is itself provided over time (payments for a time-related service still outstanding: BFH, judgment of July 26, 2023, IV R 22/20, German) or whether the time only frames a service that has already been fully provided.

Course model pRAP typically relevant? Assessment
Twelve-month course with ongoing live sessions, coaching or monthly modules Yes Significant services are still outstanding after the balance sheet date
Cohort course with a fixed start and end Yes, to the extent it runs past the date Teaching and coaching can be determined by calendar
Course library with ongoing hosting, update and support obligations for twelve months Often yes The provider owes continuing services during the term
Full download or one-time unlock with no further obligation for the provider Usually no The main economic service may be fulfilled on delivery
Pre-produced course where only the login ends after twelve months Case by case The expiry date alone does not prove a continuing service still owed

In the last case especially, the contract, the service description and what actually happens should match. If regular updates or coaching are advertised but the accounting assumes a service fully provided at once, that is a contradiction you will have to explain.

How the amount is calculated at the balance sheet date

Example: a SaaS provider that prepares a balance sheet receives €1,200 net on October 1 for twelve months until September 30 of the following year. With an even service, €100 falls on each month.

  • October to December: €300 earned revenue
  • January to September: €900 not yet earned
  • pRAP at December 31: €900
Example · Annual subscription paid upfront
€1,200 on October 1: €900 remains in the pRAP at the balance sheet date
  1. October 1Payment for twelve months€1,200 net, €100 per month with an even service
  2. December 31Balance sheet dateOctober to December: €300 earned revenuepRAP €900
  3. September 30 of the following yearTerm endsJanuary to September: the €900 is released as the service is provided
Only the share after the balance sheet date is deferred. If individual course phases differ in value, the allocation needs an objective, traceable basis.

The pRAP is then released as the service is provided. For continuing services of consistent quality, spreading it evenly over time is usually plausible. If individual course phases differ in value, however, the allocation needs an objective, traceable basis.

The €800 limit is a uniform tax option

For tax purposes, § 5(5) sentence 2 EStG (German) allows you to skip a deferral if the receipt in question does not exceed the €800 amount in § 6(2) sentence 1 EStG (German). The option must be exercised uniformly for prepaid expenses and deferred revenue (§ 5(5) sentence 2, second half-sentence EStG). For SaaS and courses, that mainly means two things:

  1. The limit cannot be multiplied by splitting an invoice into internal lines. An annual contract for €2,400 with three lines is still one receipt above €800.
  2. With many low-priced annual subscriptions, the option can save a lot of work, but then it also applies to your own prepaid expenses, such as insurance or annual licenses.

The exact wording of the option, since when it applies and why the HGB has to be assessed separately are explained in the section on the €800 limit in the basics article. Settle the approach for each financial year with your tax advisor and document it.

What should be documented for reliable automation

For software to handle the case reproducibly, it needs more than product names:

  • the business's method of profit determination
  • the date and net amount of each receipt
  • the contractual start and end of the service
  • the type of service still owed
  • the objective basis for spreading the amount over time or by value
  • the €800 option, chosen uniformly for prepaid expenses and deferred revenue
  • your tax advisor's approval and reasoning in borderline cases

Rechnungskit links this information to the product and the invoice, calculates the share after the balance sheet date and passes the documented booking logic into the DATEV export (DATEV is the accounting software most German tax advisors use). The deferral policy applies per financial year, covers the uniform option for prepaid expenses and deferred revenue, and is locked when the export is finalized. Lifetime access is not excluded across the board: without an objective service period it stays a case for review; with a documented continuing obligation to perform, your tax advisor can confirm a reliable period. The tax treatment has to match the actual contract.

FAQ

No. Deferred revenue concerns profit determination by balance sheet comparison (Betriebsvermögensvergleich). Under cash-basis accounting (Einnahmen-Überschuss-Rechnung, EÜR), the cash principle generally applies (§ 11 EStG, German Income Tax Act, German); your tax advisor (Steuerberater) should check special rules and individual cases.
Read more
Guide E-invoicing for B2C in Germany: does the mandate apply to online shops? Guide E-invoicing in Germany: the mandate explained for founders Guide Invoicing in a foreign currency in Germany: which exchange rate applies? (ECB, DATEV, OSS) Guide GoBD explained: principles, retention and what they mean for your invoices Guide Small-amount invoices in Germany (§ 33 UStDV): when the buyer's address can be left out Guide E-invoicing for small businesses in Germany (Kleinunternehmer): duties, exemptions, thresholds 2026 Guide The German cancellation button (§ 312k BGB): who needs it and how it works Guide The date of supply on German invoices: shipping date or payment date? Guide Leitweg-ID: what it is, how it is structured and how it gets onto the invoice Guide The OSS scheme explained: the €10,000 threshold, registration and an example Guide Proforma invoices in Germany: what they are for and why they are not invoices Guide Deferred revenue in German accounting (pRAP): definition, bookings and an example Guide Changing the billing address on a German invoice afterward: is it possible? (without a cancellation) Guide Correcting an invoice in Germany: which route for which error? Guide Server-side tracking for Meta: Conversions API with a lean consent bar Guide Shopify gift cards in Germany: gift card, discount code and store credit for VAT Guide Shopify invoices in Germany: what Shopify does, what is missing, what applies from 2027 Guide Shopware invoices: what Shopware 6 does on its own and what is missing Guide Stripe DATEV export: getting Stripe payments into DATEV as a booking batch Guide Booking Stripe fees in Germany: clearing account, reverse charge and Stripe Technology Europe Ltd Guide Stripe Invoicing in Germany: creating invoices, pricing and e-invoicing Guide Stripe invoices with payment terms as e-invoices: bank transfer to the Stripe IBAN Guide Stripe invoices in Germany: what Stripe Invoicing and Billing do, what is missing, and what applies from 2027 Guide Shipping costs and VAT in Germany: 7%, 19% or tax-exempt? Guide The German withdrawal button (§ 356a BGB): mandatory since June 19, 2026 Guide WooCommerce DATEV export: options, file format and account mapping Guide WooCommerce invoices in Germany: plugins, mandatory details, e-invoicing Guide XRechnung vs ZUGFeRD: the XRechnung format explained Guide Payment terms on invoices in Germany: rules, due date calculation and wording Guide ZUGFeRD explained

Rechnungskit is not a tax advisory or law firm. This article explains general principles and does not replace advice from a tax advisor (Steuerberater, § 5 StBerG) or a lawyer (§ 3 RDG). Rechnungskit is built for businesses based in Germany and prepares documents, tax rates and bookings automatically. How your specific case is treated remains your decision, ideally together with your tax advisor or a lawyer.

Every invoice automatically as a valid e-invoice.

Connect your payment provider and we take care of format, validation and archive. Start for free in test mode.

Try it now
de en