Limited time: 90% off your first 6 months on Bookkeeping plans Claim offer
Revenue Recognition

Revenue Recognition: Automate Deferred Revenue Tracking and Journal Entries

Advanced 8 min read 2 views

The Revenue Recognition module helps you track deferred revenue, automate recognition schedules, generate journal entries, and report on your contracts over time. Whether you bill annually for a subscription or recognize revenue as milestones are met, this tool turns complex schedules into automated double-entry postings.

This guide walks through every screen, button, and field in the order you see them on screen.


Getting Here

  1. Open the main sidebar and select a Bookkeeping Client.
  2. In the client sidebar, expand the Revenue Recognition section.

Two menu items appear:

Menu Item What You See
Dashboard The main schedules list with statistics, filters, and schedule management.
Settings Configuration for GL accounts, automation, and notifications.

Click Dashboard to begin.


Understanding the Dashboard

The Dashboard is your starting point. It shows every revenue recognition schedule for the client, plus summary statistics and quick actions.

Top Metrics

Six cards sit across the top of the page. They give you a snapshot of your deferred revenue position:

Metric What It Shows
Total Schedules How many revenue recognition schedules exist for this client.
Active How many schedules are currently active and recognizing revenue.
Deferred Revenue Total amount of revenue still sitting in deferred (liability), shown in orange.
Recognized Total revenue already moved from deferred to the income statement, shown in green.
Due Entries Number of recognition entries that are due for processing now.
Pending Approval Number of entries waiting for approval before they can be processed.

Header Buttons

Above the metrics, two buttons sit at the top-right:

  • Process Due Entries — Runs recognition for all entries whose recognition date has arrived. Click this to bulk-process everything that is currently due.
  • Create Schedule — Opens the form to set up a new revenue recognition schedule.

Filters

Below the metrics, a filter bar lets you narrow down the schedules list:

Filter Options
Status All Statuses, Active, Pending, Completed, Paused.
Customer All Customers, or pick a specific customer from the dropdown.

Select a filter and the table updates immediately.

The Schedules Table

Below the filters, a table lists every schedule. Each row shows:

Column What You See
Reference / Description The reference number (e.g., CONTRACT-2024-001) and the description line.
Customer The customer linked to this schedule, or a dash if none.
Amount Three lines: Total (the full contract value), Recognized (in green), and Remaining (in orange).
Progress A horizontal progress bar plus the percentage complete.
Period The start and end dates of the recognition period.
Status A coloured badge: Active, Completed, Paused, Draft, or Cancelled.
Actions Three icons: eye (View), pencil (Edit), and trash (Delete).

Click the eye icon to open the schedule detail page. Click the pencil icon to edit the schedule. Click the trash icon to delete it — a browser confirmation prompt appears before deletion.

If no schedules exist yet, an empty state appears with a message and a Create Your First Schedule button.


Creating a Revenue Recognition Schedule

  1. Click the Create Schedule button at the top-right.
  2. A dialog opens with all the fields you need.

Schedule Form Fields

Fill in the form from top to bottom:

Field What To Enter Required
Customer Pick a customer from the dropdown, or leave as None. No
Reference Number A unique identifier, e.g., CONTRACT-2024-001 or SUB-2025-Q1. No
Description A short name for the schedule, e.g., "Annual software subscription" or "Website redesign project." Yes
Total Amount The full contract value in dollars. Enter as a number, e.g., 12000.00. Yes
Business Model Pick the type of revenue: Subscription Service, Project-Based, Software License, E-commerce, Prepaid Billing, Consulting Services, or Other. No
Recognition Method How the revenue is spread over time. See the methods table below. Yes
Recognition Frequency How often entries are created: Monthly, Quarterly, Annually, or Custom. Yes
Start Date The first day revenue recognition begins. Yes
End Date The last day of the recognition period. Yes
Deferred Revenue Account (Override) Choose a specific GL account for deferred revenue, or leave as Use Default to use the settings-default account. No
Revenue Account (Override) Choose a specific GL account for recognized revenue, or leave as Use Default to use the settings-default account. No
Notes Any internal notes about this schedule. No

Recognition Methods

Method How It Works Best For
Straight-Line Splits the total amount equally across every period. Annual subscriptions, prepaid retainers.
Pro-rata Allocates revenue based on the actual number of days in each period. Contracts that span partial months or uneven periods.
Milestone-Based Recognizes revenue when specific milestones are reached. Project-based work, construction, consulting.
Usage-Based Recognizes revenue based on actual consumption or usage data. Metered services, pay-per-use models.
On Delivery Recognizes the full amount upon delivery or completion. Product sales, one-time deliverables.
  1. Click Create Schedule at the bottom of the dialog.

The schedule appears in the table. The system automatically generates recognition entries — one for each period in the schedule — and marks them as pending or scheduled.

✓ Tip: Set up your Settings first (next section) so every new schedule inherits your preferred defaults for method, frequency, and GL accounts.


Editing a Schedule

  1. In the schedules table, click the pencil icon on the row you want to change.
  2. The same form opens with all fields pre-filled.
  3. Make your changes.
  4. Click Update Schedule.

⚠ Warning: Changing the Total Amount, Start Date, End Date, Recognition Method, or Recognition Frequency after entries have been generated may require re-generating the entries. Existing processed entries are not automatically reversed.


Viewing a Schedule in Detail

Click the eye icon on any schedule row to open its full detail page.

Overview Cards

Four cards across the top summarize the schedule's financial position:

Card What It Shows
Total Amount The full contract value.
Recognized Revenue already posted to the income statement, in green.
Remaining Revenue still sitting in deferred, in orange.
Progress A progress bar and percentage showing how much of the contract has been recognized.

Schedule Details Card

A grid shows the schedule's configuration at a glance:

Field What You See
Customer The linked customer name.
Recognition Method The method in plain English (e.g., "straight line").
Frequency Monthly, Quarterly, Annually, or Custom.
Period The start and end dates.
Deferred Revenue Account The GL account number and name, or "Using default."
Revenue Account The GL account number and name, or "Using default."

Recognition Entries Table

This is where you manage individual recognition periods. Each row represents one period in the schedule:

Column What You See
Period The period number (e.g., Period 1) with its start and end dates.
Recognition Date The date the revenue is scheduled to be recognized.
Amount The dollar amount for this period.
Percentage What percentage of the total contract this period represents.
Status A badge: Pending (grey, clock icon), Scheduled (blue, calendar icon), Recognized (green, check icon), Reversed (red, alert icon), or Skipped (outline, alert icon).
Actions One or two buttons depending on the entry state.

Entry Actions

  • Process — Appears on entries with status Pending or Scheduled. Click it to create the journal entry that moves the period's amount from Deferred Revenue (liability) to Revenue (income).
  • Approve — Appears when the settings require approval and the entry has not yet been approved. Click it to mark the entry as approved before processing.

Process entries one at a time from this page, or use the Process Due Entries button on the Dashboard to process all due entries at once.

Entry Status Flow

flowchart LR
    Pending -->|Schedule created| Scheduled
    Scheduled -->|Date arrived| Pending2[Pending]
    Pending2 -->|"Approve (if required)"| Ready
    Ready -->|Process| Recognized
    Recognized -->|Reverse| Reversed
    Pending2 -->|Skip| Skipped

✓ Tip: If you have Auto-Create Journal Entries enabled in Settings, the Process step happens automatically when you click Process — no manual journal entry is needed.


Configuring Revenue Recognition Settings

Click Settings in the Revenue Recognition sidebar menu to open the configuration page.

Configuration Status Banner

If neither the Deferred Revenue Account nor the Revenue Account has been set, a yellow warning banner appears at the top:

⚠ Settings Not Configured: Please configure both Deferred Revenue Account and Revenue Account to enable automated revenue recognition.

Once both accounts are selected, the banner disappears.

General Ledger Accounts

Two dropdowns let you pick the default GL accounts:

Setting What To Pick Purpose
Deferred Revenue Account A liability account (typically mapping code 23xx). Holds revenue before it is earned.
Revenue Account A revenue account (typically mapping code 4xxx). Receives revenue as it is recognized.

The dropdowns show only active accounts from the chart of accounts that match the appropriate type (liability accounts for deferred, revenue accounts for recognized). Each option shows the account number and name.

You can leave either as None — but schedules cannot be processed without them. You can also override these accounts on individual schedules.

Recognition Defaults

These settings are applied as pre-selected values when you create a new schedule. You can always change them per schedule.

Setting Options Default
Default Recognition Method Straight-Line, Pro-rata, Milestone-Based, Usage-Based, On Delivery. Straight-Line
Default Recognition Frequency Monthly, Quarterly, Annually, Custom. Monthly

Automation Settings

Control how and when entries are created and processed:

Setting What It Does Default
Auto-Create Journal Entries When on, processing a recognition entry automatically creates the journal entry (debit deferred revenue, credit revenue). When off, you must create the journal entry manually. On
Require Approval When on, entries must be approved by a user before they can be processed. An Approve button appears on each entry. Off
Auto-Process Day of Month The day (1–28) when the system automatically processes all due entries. For example, setting this to 1 processes everything due on the first of each month. 1

Notification Settings

Setting What It Does Default
Notify on Schedule Creation Sends a notification when a new schedule is created. Off
Notify on Completion Sends a notification when a schedule reaches 100% recognized. Off

Saving Settings

Click the Save Settings button at the top-right of the page. A toast message confirms the save.


Processing Due Entries

You can process recognition entries two ways:

Bulk Processing (from the Dashboard)

  1. On the Dashboard, click the Process Due Entries button.
  2. The system finds all entries whose recognition date is today or earlier and whose status is Pending or Scheduled.
  3. For each entry, if Auto-Create Journal Entries is on, a journal entry is created automatically debiting the deferred revenue account and crediting the revenue account.
  4. A toast message shows how many entries were processed.

Individual Processing (from the Detail Page)

  1. Open a schedule's detail page.
  2. Find the entry you want to process.
  3. If Require Approval is on and the entry is not yet approved, click the Approve button first.
  4. Click the Process button.
  5. A toast confirms the entry was processed.

The Revenue Recognition Report

The report gives you a consolidated view of all schedules across a date range. To open it:

  1. From the client sidebar, go to Reports.
  2. Click Revenue Recognition Report.

Report Filters

At the top of the report page, a filter card lets you control the data:

Filter What It Does
Start Date Only include schedules active on or after this date. Defaults to January 1 of the current year.
End Date Only include schedules active on or before this date. Defaults to today.
Status Filter by schedule status: All Statuses, Active, Completed, or Cancelled.

Click Apply Filters to refresh the report with your chosen range.

A Refresh button at the top-right reloads the data at any time.

Summary Cards

Four cards summarize the filtered data:

Card What It Shows
Total Contract Value The sum of all schedule total amounts.
Total Recognized Total revenue already recognized, in green.
Deferred Revenue Total remaining deferred revenue, in orange.
Active Schedules Number of active schedules, plus a count of completed ones.

Recognition Schedules Table

A full-width table lists every schedule matching your filters:

Column What You See
Contract / Ref The contract number or reference number, with the description below.
Customer The customer company name or display name.
Method The recognition method in plain English.
Total Amount The full contract value.
Recognized Amount already recognized, in green.
Deferred Amount remaining, in orange.
% Complete A mini progress bar plus the completion percentage.
Status A coloured badge: Active (blue), Completed (grey), or Cancelled (red).

A footer row shows totals for Total Amount, Recognized, and Deferred across all schedules.

Recognition by Period (Waterfall)

If there is recognition data in the selected date range, a second table appears showing recognized amounts grouped by month:

Column What You See
Period The month and year (e.g., "Jan 2026").
Recognized Total revenue recognized in that month, in green.

A footer row shows the grand total across all periods.

If no schedules match the filters, an empty state appears with a No Schedules Found message and suggestion text.


Schedule Statuses Reference

Status Meaning
Draft The schedule has been created but is not yet active. Entries are not generated.
Active Recognition is in progress. Entries are generated and due dates are tracked.
Paused Recognition is temporarily halted. No new entries will be processed until resumed.
Completed 100% of the total amount has been recognized.
Cancelled The schedule has been terminated. No further recognition will occur.

Entry Statuses Reference

Status Meaning
Pending The entry is ready to be processed but has not yet been actioned.
Scheduled The entry has a future recognition date and is not yet due.
Recognized The entry has been processed and a journal entry has been posted.
Reversed A previously recognized entry has been reversed. The amount is back in deferred.
Skipped The entry was intentionally skipped (e.g., a zero-amount period).

Frequently Asked Questions

What is the difference between Straight-Line and Pro-rata?

Straight-Line divides the total amount equally by the number of periods. For example, a $12,000 annual contract recognized monthly gives $1,000 per month. Pro-rata allocates based on the actual number of days in each period, so months with 31 days get slightly more than months with 28 days.

Do I need to configure settings before creating schedules?

No, but it saves time. If you configure the default accounts, method, and frequency in Settings, every new schedule form will be pre-filled with your preferences. You can still override them per schedule.

What happens when I click Process Due Entries?

The system finds all entries whose recognition date is on or before today and whose status is Pending or Scheduled. For each one, if Auto-Create Journal Entries is on, it posts a journal entry: debit Deferred Revenue (liability) and credit Revenue (income). Processed entries move to Recognized status.

Can I override the GL accounts on a single schedule?

Yes. When creating or editing a schedule, use the Deferred Revenue Account (Override) and Revenue Account (Override) dropdowns. Leave them as "Use Default" to inherit the Settings values, or pick a specific account for that schedule.

What happens if I delete a schedule with processed entries?

The schedule is soft-deleted. Any journal entries that were already posted are not automatically reversed — you would need to reverse them manually through the journal entry system.

How do I pause a schedule?

Edit the schedule and change its status. Note that the current UI manages status through the edit dialog. Paused schedules stop generating new due entries until resumed.

Can I have multiple schedules for the same customer?

Yes. You can create as many schedules as you need for a single customer — for example, separate schedules for different contracts, products, or service lines.

How do I handle a contract that spans partial periods?

Use the Pro-rata recognition method. It calculates each period's amount based on the actual number of days, so partial first or last periods are handled correctly.

Was this article helpful?

You might also like

Get help

Questions & Answers

Ask a question about this article and our team will reply.

0 answered
No questions yet. Be the first to ask about this topic.

Ask a question

Questions are reviewed before they're answered and published.

Never published. We'll only use it if we need to follow up.