How do I reconcile Stripe subscription revenue against the GL?
Stripe's own Revenue Recognition product generates the journal entries — debiting Accounts Receivable and crediting Deferred Revenue at finalization, then debiting Deferred Revenue and crediting Revenue as each period is recognized. Reconciling against the GL means comparing Stripe's debits-and-credits export against what actually posted, not re-deriving the entries by hand.
Part of the finance integrations guide.
| Entry at invoice finalization | Debit Accounts Receivable, credit Deferred Revenue |
|---|---|
| Entry as revenue is recognized | Debit Deferred Revenue, credit Revenue, amortized over the line item's period |
| Where to pull them | The debits-and-credits report, exportable to CSV from the Revenue Recognition Reports tab |
| Common drift point | A negative line item from a mid-term plan change not reflected in the GL the same way Stripe recognizes it |
Where the journal entries actually come from
Every billing activity in Stripe generates a documented set of journal entries. Finalizing an invoice debits Accounts Receivable and credits Deferred Revenue; as each invoice line item's period elapses, Stripe debits Deferred Revenue and credits Revenue for the recognized portion. Paying an invoice separately debits Cash and credits Accounts Receivable. These aren't estimates Loopfour derives — they're the same entries Stripe's own Revenue Recognition product uses internally, built on a double-entry ledger with a documented chart of accounts.
Pulling the comparison
Stripe's Reports tab exports a debits-and-credits report for a given period, which can be filtered by event type for a description of each recorded entry. Reconciling against the GL means pulling that export and comparing it, account by account, against what actually posted for the same period — not recomputing recognized revenue from first principles, which duplicates work Stripe has already done and introduces its own chance of error.
What usually causes a mismatch
The most common gap isn't Stripe's math — it's a transaction type the GL sync doesn't handle the same way Stripe's ledger does. A negative line item from a mid-term subscription change is the clearest example: Stripe's own entries handle it correctly (crediting Unbilled Accounts Receivable, adjusting Revenue), but a downstream sync built to expect only positive amounts can drop or misapply it, which shows up as a GL balance that doesn't match Stripe's own debits-and-credits export for the same period.
Next step
Map the finance workflow with the most exposure and prove the automation path.
Bring the invoice, contract, payment reconciliation, or customer finance workflow you have to defend at audit. Loopfour can map the trigger, controls, integrations, and approval loop.
Field mapping
Stripe's journal-entry accounts mapped to typical GL accounts
| Stripe Revenue Recognition account | Type | Typical GL counterpart to check |
|---|---|---|
| Accounts receivable | Asset (debit) | AR subledger balance for Stripe-billed customers |
| Deferred revenue | Liability (credit) | Deferred/unearned revenue liability account |
| Unbilled accounts receivable | Asset (debit) | Accrued/unbilled revenue — most relevant during a mid-term plan change |
| Revenue | Revenue (credit) | Recognized subscription revenue |
Frequently Asked Questions
Sources
Related
Topic
Revenue Recognition
Revenue recognition determines when — not just how much — revenue hits the books. Under ASC 606 (US GAAP) and its international counterpart IFRS 15, revenue is recorded as a company satisfies its perf…
Read moreDiagnostic
Why doesn't deferred revenue match the general ledger?
Deferred revenue usually drifts from the general ledger when the billing system's revenue schedule isn't synced to GL journal entries, or when manual entries post outside that schedule. Reconcile the deferred revenue roll-forward against the GL trial balance at the contract-line level, not the invoice level, to find exactly where the two diverge each month.
Read moreTopic
Integrations
Every finance automation vendor publishes an integrations page: a grid of logos, a claim of "seamless" connectivity, and not much else. That page answers a marketing question — does this vendor touch…
Read moreHow-to
How do I map Stripe subscription schedules to deferred revenue?
Stripe subscription schedules break a subscription into sequential phases — each with its own price, quantity, and duration — which is what Loopfour's createSubscriptionSchedule action uses to represent a planned upgrade, downgrade, or trial. Stripe's own Revenue Recognition product then treats each invoice line item as a separate performance obligation and amortizes it over that phase's period.
Read more