Set up event-based revenue recognition - Contracts

This topic describes how to set up event-based recognition in your Contracts environment. At this time, event-based recognition is limited for use with revenue templates where the Recognition method = "Straight line" and "Daily rate".

About event-based recognition

Some businesses regularly sell products or services where the revenue can’t begin to be recognized until an event occurs. For example, a software company might receive payment in advance for implementation services, but they do not consider the revenue as earned until the software go-live date. Sage Intacct lets you automatically prevent revenue schedules from starting for contract lines until you specifically indicate that the recognition event has occurred. This is accomplished via the contract line's Delivery status, which defaults from the selected item. You can also choose to defer the revenue schedules for one or more contract lines in a contract until all contract lines are delivered.

If the contract line's Delivery status = "Undelivered," the associated contract line's revenue schedule is set to "Pending delivery". When a user executes the Deliver contract or Deliver contract line function, the contract line's Delivery status is set to "Delivered".

  • If the contract line's Revenue recognition deferral status = "Defer revenue until item is delivered", the Deliver process sets the associated revenue schedules to "In progress" as of the Delivery date.
  • If the contract line's Revenue recognition deferral status = "Defer revenue until all items are delivered", the contract line's revenue schedule remains "Pending delivery" until all contract lines in the contract have Delivery status = "Delivered".

The contract line's revenue template determines how Intacct adjusts the revenue schedule to account for any skipped revenue periods when the delivery date is later than the revenue template start date. The contract line's Posting type determines whether the adjustments are posted automatically or require manual posting.

Set up event-based recognition

Complete the following setup steps to configure your Contracts environment to use event-based recognition.

1. Configure Revenue Management

  1. Go to Company > Admin > Subscriptions.
  2. On the Subscriptions page, select Revenue Management, then select Configure.
  3. On the Configure Revenue Management page in the Contracts section, select the Event-based recognition checkbox..
  4. Select Save.

2. Define Delivery defaults on items

All items are set to Default contract delivery status = "Delivered" and Default contract deferral status = "Defer revenue until item is delivered". This status combination has no effect on revenue schedules. You only need to change these fields for the items for which you do not want their revenue schedules to start until a particular event occurs.

  1. Go to Contracts > All > Items.
  2. Find the item for which you want to define delivery defaults.
  3. Select More actionsEdit at the end of the row.
  4. In the Contract default section of the Item Information page, use the Default contract delivery status dropdown list and select "Undelivered".
  5. If you want to defer the revenue until all contract lines in the contract are delivered, use the Default contract deferral status dropdown list to select "Defer revenue until all items are delivered".
  6. Select Save.

    Repeat for each desired item.

  1. Go to Contracts > All > and select Items.
  2. In the Items list, find the desired item and select Edit next to it.
  3. In the Contract default section of the Item Information page, use the Default contract delivery status dropdown list and select "Undelivered".
  4. If you want to defer the revenue until all contract lines in the contract are delivered, use the Default contract deferral status dropdown list to select "Defer revenue until all items are delivered".
  5. Select Save.
  6. Repeat steps 2 - 5 for each desired item.

3. Define the Revenue adjustment option on revenue templates

At this time, event-based recognition is limited to revenue templates where the Recognition method = "Straight line" or "Daily rate".

The Revenue adjustment option on the revenue template determines how to account for revenue that was previously scheduled prior to the Delivery date. The Revenue adjustment options are as follows:

Option Description
Catch-up: one time

Sets the Scheduled posting date to the Delivery date for all revenue that was scheduled prior to the Delivery date.

For example, say the revenue schedule started on 01/01/2023 and ends 12/31/2023. You set the line to "Delivered" with a Delivery date of 04/01/2023. Intacct schedules the Jan, Feb, and Mar periods to post on 04/01/2023 in three separate entries. This "catches up" the schedule all at once.

Catch-up: distributed

Recalculates the revenue schedule term using the Delivery date as the start date and spreads the total revenue amount across the shortened schedule so that any skipped periods due to late delivery are eventually caught up. The calculation used is:

Total revenue amount divided by the number of days from the Delivery date to the revenue template End date = schedule daily rate

If there are partial periods, prorate partial periods using the schedule daily rate and subtract from total revenue amount = remaining schedule amount

Remaining revenue amount divided by total number of remaining whole periods in schedule = new monthly revenue amount

For example, say you have a contract line for 12,000 that started on January 01, 2023 and ends on December 31, 2023. You deliver the contract line on April 16, 2023. The calculation for the revenue is:

12,000.00 / 260 days = 46.15384615384615

15 days x 46.15384615384615 = 692.31 (revenue amount for April)

12,000.00 - 692.31 = 11,307.69

11,307.69 / 8 whole periods = 1,413.46 (monthly amount for May-December)

Walk forward

Regenerates the revenue schedule as of the Delivery date and pushes the end date out to the date that is equal to the number of days from the original revenue template Start date to the Delivery date. The system prorates any partial periods. The whole period amount remains equal to the originally scheduled whole period amount.

For example, say the revenue schedule started on 01/01/2023 and ends 12/31/2023. You set the line to "Delivered" on 04/16/2023. The schedule's new internal start date is 04/16/2023 and its internal end date is now 04/15/2024, so it now has 13 periods instead of 12. The system prorates the two partial periods and schedules them for 04/30/2023 and 04/30/2024, respectively.

The posting behavior of any adjustments depends on the revenue schedule's Posting type:

  • Manual: the user must manually post adjustments. The system won’t automatically post revenue skipped due to delayed delivery, even if the Delivery date has passed.
  • Automatic: for "Catch up: one time" and "Catch up: distributed", the system will automatically post skipped revenue when you execute the Deliver function. For "Walk forward", the system scheduler will post any revenue scheduled in the past the next time it runs.
  1. Go to Contracts > Setup > Templates > Revenue.
  2. Find the template for which you want to define the revenue adjustment option.
  3. Select More actionsEdit at the end of the row.
  4. Ensure that the Recognition method = "Straight line".
  5. Select the desired Revenue adjustment option.
  6. Optionally, edit the template's Description to indicate which Revenue adjustment option the template uses.
  7. Select Save.

    Repeat steps 2 - 5 for each desired revenue template.

  1. Go to Contracts > Setup > Templates > Revenue.
  2. Select Edit next to the applicable revenue template.
  3. Ensure that the Recognition method = "Straight line".
  4. Select the desired Revenue adjustment option.
  5. Optionally, edit the template's Description to indicate which Revenue adjustment option the template uses.
  6. Select Save.
  7. Repeat steps 2 - 5 for each desired revenue template.