Skip to content
Sign in
An image of the Stripe logo
/
Create account
Sign in
Home
Payments
Finance automation
Banking as a service
Developer tools
No-code
All products
Home
Payments
Finance automation
Home
Payments
Finance automation
Banking as a service
Developer tools
Overview
Billing
Tax
Reporting
    Overview
    Basic financial reports
    Advanced revenue reporting
    Revenue recognition
      Get started
      How revenue recognition works
      Multi-currency
      Connect platforms
      Revenue contracts
      Frequently asked questions
      Reports and features
      Overrides
      Audit your numbers
      Examples
      Revenue recognition rules
        Create a rule
        Examples
      Accounting period control
      Revenue controls
      Map to your chart of accounts
      Import data to Stripe
      Export data from Stripe
    Reconciliation
Data
Startup incorporation
HomeFinance automationReportingRevenue recognition

Revenue Recognition rules

Learn about Revenue Recognition rules.

Configure Revenue Recognition rules to define revenue treatments specific to your business.

Stripe Revenue Recognition allows you to configure custom rules to handle revenue treatments specific to your business needs. For example, you can configure a rule to:

  • Categorize an invoice line item as a tax or fee
  • Book a transaction amount or invoice line item as a passthrough fee
  • Exclude transactions from specific customers or test invoices
  • Amortize revenue over a specified time period relative to payment or invoice finalization date
  • Recognize revenue after a specific time period to model a future fulfillment schedule
  • Allocate multiple revenue treatments to a single transaction amount

Default rules

Stripe Revenue Recognition provides a set of default rules to model the methodology for handling common Stripe resources.

  • For invoice line items with service periods, the line item amount amortizes evenly over its service period. If a period isn’t set on an invoice line item, the amount is recognized entirely when the invoice finalizes.
  • Other payments not made through an invoice are recognized immediately upon payment if no service period or fulfillment information exists, or by the imported service period or fulfillment data.
Default rules

Custom rules

Custom rules override Stripe’s default revenue treatment behaviors where applicable and you can add or modify them on the Stripe Dashboard.

You can apply rules to:

  • Products
  • Customers
  • Invoice line items
  • Other payments (that is, payments that aren’t associated with invoices)

See how to create a rule and define revenue treatments. You can also explore sample rules on tax treatment, pass-through fees, exclusion, and custom time periods.

Rule ordering and hierarchy

Each transaction can only have one rule applied to it when processing revenue reports. In situations where a single transaction fits the “Apply-to” criteria for multiple rules, rule hierarchy determines which rule to apply to the transaction. The higher a rule is ranked on the list, the higher the priority it’s assigned.

You can rearrange the order of the rules by clicking Change rule order as shown below:

Rules

After clicking Change rule order, you can reorder the rules to adjust their priorities.

Rule order

Best practices for effectively maintaining your rules

As your business grows, it’s important to make sure you regularly maintain your rules to ensure the accuracy of your revenue reports. The following are some best practices to keep rules correct for your Revenue Recognition reports.

Know when to create a rule

When applied correctly, Stripe’s default rules and revenue treatment methodology for handling subscription events accurately recognize and defer revenue for businesses who require more control over their unique use.

Regularly monitor rules to ensure they’re up-to-date

Billing models, customer types and edge cases can regularly change, and you should evolve your rules accordingly. To make sure that revenue treatments remain predictable, periodically check your rules so they’re up-to-date in terms of hierarchy and effective period.

Check if your accounting period is open or closed when new rules are applied

If the effective period for a new rule overlaps with a closed accounting period, it generates corrections if the rules are retroactively applied to transactions from past (closed) accounting periods. If you want to avoid this, reopen your books by opening your accounting period prior to adding the rule.

See also

  • Create a rule
  • Examples
Was this page helpful?
Need help? Contact Support.
Watch our developer tutorials.
Check out our product changelog.
Questions? Contact Sales.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Default rules
Custom rules
Rule ordering and hierarchy
Best practices for effectively maintaining your rules
See also
Products Used
Revenue Recognition
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g., )
The Stripe Shell is best experienced on desktop.
$