Skip to main content

Puzzle + Stripe Integration: Automated Revenue Recognition

This guide explains how Puzzle’s Stripe integration works and how Stripe data is used to automate revenue recognition in Puzzle.

Written by Michael Herchen

Overview

Puzzle’s Stripe integration pulls key Stripe data and uses it to:

  • Import Stripe balance activity into Puzzle

  • Post a consolidated payment processor sub-ledger to the general ledger

  • Automatically match invoices to payments

  • Generate revenue recognition schedules for subscription invoices

  • Post deferred + recognized revenue entries automatically



What Puzzle Pulls from Stripe

Puzzle imports three types of data from Stripe.


1) Balance-Affecting Transactions

Puzzle pulls all activity that changes your Stripe balance (similar to a bank feed).

This includes:

  • Customer payments (revenue collections)

  • Processor fees

  • Stripe payouts

In Puzzle, you’ll see a transaction for every movement of your Stripe balance.



2) Payment Processor Sub-Ledger (Daily Summary Posting)

If your Stripe account has a high volume of activity, Puzzle can consolidate Stripe activity into a payment processor sub-ledger.

Instead of posting every individual Stripe event to the general ledger, Puzzle posts daily summary entries.

Why this matters:

  • Keeps your GL cleaner

  • Makes review easier for high-volume Stripe accounts



3) Invoices + Subscriptions

Puzzle pulls Stripe invoices (including invoices automatically generated by Stripe for subscriptions).

From Stripe invoices, Puzzle also pulls:

  • Customers

  • Products

  • Payment timing/status

Puzzle also pulls subscriptions, including the subscription period, which Puzzle uses to drive the revenue recognition schedule.



How Invoice-to-Payment Matching Works

Puzzle automatically matches:

  • The Stripe invoice
    to

  • The Stripe payment transaction

This happens when payment is collected inside Stripe.



If Payment Happens Outside Stripe

If the payment is made outside Stripe, you’ll need to manually match:

  • The payment transaction
    to

  • The Stripe invoice in Puzzle

✅ Tip: This is most common when Stripe invoices are paid via ACH/wire outside of Stripe.



How Automated Revenue Recognition Works

Puzzle automates accrual revenue recognition using Policies.

A Policy is a configuration that defines:

  • How revenue recognition is calculated (method)

  • Where entries post in the GL (account mapping)

Puzzle uses Stripe subscription data to pull the recognition period automatically.



Confirming Revenue Recognition (Schedule + Journal Entries)

When you confirm revenue recognition for an invoice line item, Puzzle will:

  1. Generate a revenue recognition schedule for that line

  2. Post a journal entry to defer revenue on the invoice date

  3. Post monthly journal entries to recognize revenue over time, based on the schedule



Required Setup: Configure Revenue Recognition Policies

To automate accrual revenue recognition successfully, you must configure Policies.

Puzzle includes default policies you can use right away.

Policies include two key sections:

1) Recognition Method

Examples include:

  • Over time (spread across the subscription period)

  • Point in time (recognized immediately)

Puzzle’s default is typically Daily 360.

2) GL Account Mapping

Defines which accounts Puzzle posts to, such as:

  • Deferred revenue

  • Subscription revenue

  • Usage revenue



Example: Duplicate a Policy for Usage Revenue

You can duplicate an existing policy to support different revenue types.

For example:

  • Subscription Revenue → mapped to subscription revenue account

  • Usage Revenue → mapped to usage revenue account

Then apply the appropriate policy at the invoice line level.



Revenue Recognition Sub-Ledger + Posting to the GL

Puzzle maintains a revenue recognition sub-ledger and posts entries to the general ledger automatically.

  • Posting happens hourly by default



Need Updates Reflected Immediately?

If you update revenue recognition schedules and want the changes reflected in financials right away:

✅ Click Post all pending

This will post all pending revenue recognition updates to the general ledger.



Common Notes / Gotchas

  • Stripe invoices pulled into Puzzle may be Stripe-generated, not manually created invoices.

  • Payments made outside Stripe require manual invoice-payment matching.

  • Revenue recognition accuracy depends heavily on correct policy setup and correct account mapping.

Did this answer your question?