--- title: Recognize revenue with Stripe subtitle: Learn how to use Stripe for your revenue recognition. route: /revenue-recognition/get-started --- # Recognize revenue with Stripe Learn how to use Stripe for your revenue recognition. You can import your transaction data, set up rules to automate your revenue recognition, generate and customize revenue reports, and test your transaction model before going live. All Stripe Revenue Recognition features are available from the [Dashboard](https://dashboard.stripe.com/revenue-recognition). Stripe offers a 30-day free trial for Revenue Recognition if you want to preview it. When you [sign up](https://dashboard.stripe.com), use a *sandbox* to explore all the features for free. If you’re a Connect platform with destination charges, and want to use Stripe Revenue Recognition, [create a ticket](https://support.stripe.com/contact/email?topic=financial_reports) on our support page to join our destination charges beta. ## Set up Revenue Recognition Revenue Recognition is already automated for some business use cases but requires additional setup for others. Below is a list of some common billing models. Click them to learn more: ### Simple subscriptions If you have subscriptions through Stripe Billing (like monthly, quarterly, and so on), no further setup is required. Stripe Revenue Recognition automatically recognizes this revenue for you. Stripe recognizes the transaction amount by the service period for each [invoice line item](https://docs.stripe.com/api/invoices/line_item.md). By default, we recognize the revenue by the millisecond. If you want to recognize your subscription revenue by the month, instead of by the millisecond, please [create a ticket](https://support.stripe.com/contact/email?topic=financial_reports) on our support page to join our beta. As an example, say you have a customer who started an annual subscription on September 1 for the price of 365 USD. If you want to recognize the amount monthly, your report at the end of December would show this: | Account | Sep 2021 | Oct 2021 | Nov 2021 | Dec 2021 | | --------------- | -------- | -------- | -------- | -------- | | Revenue | +30.00 | +31.00 | +30.00 | +31.00 | | DeferredRevenue | +335.00 | -31.00 | -30.00 | -31.00 | ### Metered billing subscriptions If you have metered billing subscriptions (usage-based pricing) through Stripe Billing, no further setup is required. Stripe Revenue Recognition automatically recognizes this revenue for you. As an example, say you have a customer on a metered billing plan where it costs 1 USD per API call and the next invoice is on September 10. They make ten API calls in July so, at the end of the month, the journal entries look something like: | Month | Debit | Credit | Amount | Description | | ----- | ---------- | ------- | ------ | ---------------- | | Jul | UnbilledAR | Revenue | 10.00 | Revenue in July. | They make six API calls in August: | Month | Debit | Credit | Amount | Description | | ----- | ---------- | ------- | ------ | ------------------ | | Jul | UnbilledAR | Revenue | 10.00 | Revenue in July. | | Aug | UnbilledAR | Revenue | 6.00 | Revenue in August. | They make three API calls in September. They make one before September 10 and two after. At the end of the month, the journal entries look something like: | Month | Debit | Credit | Amount | Description | | ----- | ---------- | ---------- | ------ | --------------------------------------------------------------------- | | Jul | UnbilledAR | Revenue | 10.00 | Revenue from usage in July. | | Aug | UnbilledAR | Revenue | 6.00 | Revenue from usage in August. | | Sep | Revenue | UnbilledAR | 16.00 | The reversal of revenue from July and August for September’s invoice. | | Sep | UnbilledAR | Revenue | 2.00 | Revenue from usage after September 10. | | Sep | Revenue | UnbilledAR | 1.00 | Billed usage in September. | | Sep | AR | Revenue | 17.00 | Invoice on September 10 for 17 API calls. | ### Third-party recurring billing You can set up [rules](https://docs.stripe.com/revenue-recognition/rules.md) to automatically recognize your recurring revenue even if you don’t use Stripe Billing (but still use Stripe as a payment gateway). As an example, say you receive two types of recurring payments from your customers: a 10 USD payment and a 120 USD payment. You need to recognize the 10 USD payment over one month, and the 120 USD payment over one year, so you [create these Revenue Recognition rules](https://dashboard.stripe.com/revenue-recognition/rules/create): | Name | Apply to | Treatment | | ------------------------------------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | | `Recognize 10.00 USD over 1 month` | **Other payments** * **Amount is equal to** `10.00` **USD** | **Amortize over custom service period** * **Amortize starting** `0` **Days from paid time over** `1` **Months** | | `Recognize 120.00 USD over 12 months` | **Other payments** * **Amount is equal to** `120.00` **USD** | **Amortize over custom service period** * **Amortize starting** `0` **Days from paid time over** `1` **Years** | ### Product bundles Use more than one invoice item to structure a product bundle so you can recognize the revenue from more than one product. Each invoice item represents a different product with its own amount and service period. You can create invoice items with these APIs: * [Invoice Items](https://docs.stripe.com/api/invoiceitems.md)—Create an invoice item with a specific service period and amount. When you create an invoice, Stripe automatically includes the invoice items in the invoice for you. * [Subscription Schedules](https://docs.stripe.com/api/subscription_schedules.md)—Create a schedule for a subscription. You can add one-time invoice items to a subscription schedule that would show up in an invoice. This can be useful for one-time fees on a recurring service. If you want to recognize revenue differently for any invoice item, [import the recognition dates](https://docs.stripe.com/revenue-recognition/data-import.md) that Stripe should use. As an example, say you offer a 9 USD monthly service with a one-time setup fee of 50 USD. The invoices would look something like: | Date | Invoice | | -------- | ---------------------------------------------------- | | Jan 2021 | 9.00 monthly service fee 50.00 one-time setup fee | | Feb 2021 | 9.00 monthly service fee | | Mar 2021 | 9.00 monthly service fee | The revenue schedule would look something like: | Month | Revenue | | -------- | ------- | | Jan 2021 | 59.00 | | Feb 2021 | 9.00 | | Mar 2021 | 9.00 | ## Generate reports and charts By default, the Dashboard displays all [Revenue Recognition reports and charts](https://docs.stripe.com/revenue-recognition/reports.md#dashboard) by accounting periods (which is defined as the start and end dates of a given month). It takes up to 24 hours for reports to generate and become available for download. If you’d like to recognize revenue based on custom accounting periods such as the 4-5-4 retail calendar, please [create a ticket](https://support.stripe.com/contact/email?topic=financial_reports) on our support page to join our beta. Below is a short summary of the reports and charts you can view, download, or both. | Reports and charts | Description | | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Revenue overview** | High-level bar graphs that show your revenue activity (that is, your net recognized revenue and your ending balance per month) over time. | | **Monthly summary** | Details of the accounting activities for the last month or a specified previous month. See [Monthly summary](https://docs.stripe.com/revenue-recognition/reports/monthly-summary.md) for more information. | | **Revenue waterfall** | Displays expected recognizable revenue over time. This is also referred to as a revenue schedule chart. See [Revenue waterfall](https://docs.stripe.com/revenue-recognition/reports/waterfall.md) for more information. | | **Income statement** | Details of the revenue and contra revenue by month. | | **Balance sheet** | Details of the balance sheet account by month. | | **Debits and credits** | Details of the monthly debit-credit journal entries for accounts with activity. | | **Accounts receivable aging** | Details of the monthly and MTD outstanding invoice amounts that affect the accounts receivable ledger account. | | **Corrections** | Details of the monthly debit-credit correction journal entries for accounts. | | **Trial balance** | Shows the account balances for each general ledger account during each accounting period. See [Trial balance](https://docs.stripe.com/revenue-recognition/reports/trial-balance.md) for more information. | Sometimes you’ll see mismatches between your accounting reports after you import the data and set up Stripe. ## Test your transaction model Use a sandbox in the Dashboard to generate test revenue reports based on your transactions. Before going live, you can test the transaction model without your test transactions. Create rules to exclude transactions from specific customers, products, invoices, or payments. For example, you can exclude all revenues produced by a test customer, named `test@example.com`. [Create a rule](https://dashboard.stripe.com/revenue-recognition/rules/create) that applies to this customer and choose **Exclude revenue 100%** as the revenue treatment. ## Other considerations You might need to handle other considerations like [tax revenue](#third-party-tax), [passthrough fees](#passthrough-fees), [amortization granularity](https://docs.stripe.com/revenue-recognition/revenue-settings.md#amortization-granularity), and [catch-up revenue](https://docs.stripe.com/revenue-recognition/revenue-settings.md#catch-up-revenue). You can further set up Revenue Recognition so Stripe can handle it for you. ### Recognize tax revenue from third-party solutions You can set up rules for Revenue Recognition to automatically calculate your tax revenue if you’re not using Stripe Tax. First, set the tax amount to the [tax](https://docs.stripe.com/billing/taxes/tax-rates.md) parameter of an invoice or an invoice line item. Then, set up a rule to recognize the amount as tax. You can track the revenue from tax in the reports under **Tax liability**. As an example, say you’re using Avalara AvaTax to calculate sales tax for your products. You want to treat the invoice line item for `AvaTax` as tax so you create this rule: | Name | Apply to | Treatment | | ----------------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------------ | | `Recognize tax revenue from AvaTax` | **Invoices** * **Line item description contains all of the following:** `AvaTax` | **Treat as tax** * **Allocation** `100%` | ### Calculate passthrough fees You can set up [rules](https://docs.stripe.com/revenue-recognition/rules.md) so Stripe can automatically calculate the passthrough fees and, separately, your revenue on [invoice line items](https://docs.stripe.com/api/invoices/line_item.md) or a portion of an invoice line item. For example, say you have an invoice line item `Service A` that costs 100 USD. You want to recognize 10 USD as passthrough fees and recognize 90 USD as revenue, so you [create this rule](https://dashboard.stripe.com/revenue-recognition/rules/create): | **Name** | **Apply to** | **Treatment** | | ------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `Service A includes passthrough fees` | **Invoices** * **Line item description contains all of the following:** `Service A` | **Defer upon event & amortize over line item service period** * **Allocation** `90%` * **Defer from finalized time and amortize over line item service period** **Treatment as passthrough fees** * **Allocation** `10%` | ### Adjust Revenue Recognition controls While Stripe Revenue Recognition is designed to work out-of-the-box for many business types, we understand that each business might have unique needs. We offer advanced configurations on your revenue recognition reporting through our [Controls](https://docs.stripe.com/revenue-recognition/revenue-settings.md) page, where you can easily adjust for settings like revenue amortization granularity and catch-up revenue treatment. ## See Also * [Subscriptions and Tax](https://docs.stripe.com/billing/taxes.md)