Deliver a contract or contract lines
This topic describes how to use 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" or "Daily rate" and with contracts that have Term type = "Termed".
About event-based recognition
Some businesses regularly sell products or services where the revenue cannot 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 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.
Deliver contract lines in a single contract
You can set one or more contract lines to "Delivered" from the contract.
| Subscription |
Contracts |
|---|---|
| Regional availability |
|
| User type |
Business |
| Permissions |
Contract: List, Edit |
| Dependencies |
Only supported for use when both of the following are true:
|
| Configuration | Event-based recognition must be true in the Contracts section of the Configure Revenue Management page. |
- Open a contract in Edit mode.
- Select More actions > Deliver contract lines.
The Deliver contract dialog box appears. This dialog box only displays contract lines where the Delivery status = "Undelivered".
- Use the calendar tool to select the applicable Delivery date.
- Select the contract lines you want to set to "Delivered" status.
- Select Deliver.
The dialog box closes and the message, "The selected contract lines have been delivered successfully" appears at the top of the Contract page.
Deliver a single contract line
You can set an individual contract line to "Delivered" from the contract line.
For kit contract lines, use the Deliver contract line function on the kit component contract lines.
| Subscription |
Contracts |
|---|---|
| Regional availability |
|
| User type |
Business |
| Permissions |
Contract: List, Edit |
| Dependencies |
Only supported for use when both of the following are true:
|
| Configuration | Event-based recognition must be true in the Contracts section of the Configure Revenue Management page. |
- Open a contract in Edit mode and open the desired contract line in Edit mode.
- Select More actions > Deliver contract line.
The Deliver contract line dialog box appears.
The Deliver contract line menu option only displays if the contract line's Delivery status = "Undelivered" and the associated recognition method is either "Straight line" or "Daily rate". - Use the calendar tool to select the applicable Delivery date.
- Select Deliver.
The message, "The contract line has been delivered successfully" appears at the top of the page.
Deliver contract lines in bulk on the Manage Schedules page
You can use the Manage Schedules page to deliver multiple contract lines across multiple contracts.
| Subscription |
Contracts |
|---|---|
| Regional availability |
|
| Regional availability |
|
| User type |
Business |
| Permissions |
Contracts
|
| Dependencies |
Only supported for use when both of the following are true:
|
| Configuration | Event-based recognition must be true in the Contracts section of the Configure Revenue Management page. |
- Go to Contracts > All > Manage schedules.
-
In the Action dropdown, select Deliver.
-
In the As of date field, select a date on or before which includes the contract lines you want to deliver.
-
Select filters and user-defined dimensions (if any) to narrow the focus of the contract lines you want to deliver.
-
Select Preview.
The schedules section displays only the lines that meet the filter criteria and are Undelivered.
-
In the Delivery date field, select a date.
-
Select the contract lines that you want to deliver by doing one of the following:
-
Select the checkbox to the far left of each row.
-
Select the dropdown next to the checkbox in the column header and choose Select all on this page to select all rows currently visible.
-
If there are multiple pages of results, select the dropdown next to the checkbox in the column header and choose Select all to select all rows across all pages.
-
-
Select Deliver.
Intacct creates a bulk action run record and completes the process offline.
Revenue schedule adjustments and posting behavior
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.
View delivery details
You can access the audit trail on the contract line to view delivery details. Learn more about the audit trail.
Troubleshoot Deliver contract lines
| Problem | Possible solution |
|---|---|
| I don't see the Delivery status, Delivery date, or Revenue recognition deferral status fields on my contract lines. | In order to use the Delivery feature, your Contracts environment must be set up for event-based revenue recognition. Verify that your Contracts environment was set up correctly. |
|
I can't see the Deliver contract line menu option. |
Verify that the contract line's Delivery status = "Undelivered" and the associated recognition method is either "Straight line" or "Daily rate". |
|
When I access the Deliver contract dialog box from the contract, it is empty. |
Verify that the contract has at least one contract line with Delivery status = "Undelivered" and the associated recognition method is either "Straight line" or "Daily rate". |
| I set a contract line to "Delivered" by mistake. How do I set it back to "Undelivered"? |
There is currently no reset for the Delivery status. In this scenario, you can do one of the following:
|
| I created a contract line with an item that has a default Delivery status of "Undelivered", but when I saved the contract line the system set its Delivery status to "Delivered". | Event-driven recognition is currently limited to revenue templates where the Recognition method = "Straight line" or "Daily rate". If you chose a revenue template with a different Recognition method, the system automatically sets the contract line's Delivery status to "Delivered". In this scenario, delete the contract line, add a new contract line, and select a revenue template that has Recognition method = "Straight line" or "Daily rate". |
| I set a contract line to "Delivered", but the Schedule status on the revenue schedule is set to "Pending delivery of all items". |
The Revenue recognition deferral status for the selected item is set to "Defer revenue until all items are delivered". When all contract lines in the contract have Delivery status = "Delivered", the system will set the contract line's revenue schedule to "In progress". While you can change the default deferral status when you add a contract line, you can't change it after the contract line is saved. If you need to start the revenue schedule, you can do one of the following:
|
| I canceled an "Undelivered" contract line and the entire revenue amount is open in the revenue schedule. |
While the system will allow you to cancel the contract line and then execute the Deliver contract line function at a later time, the system will leave the entire revenue amount open on the revenue schedule. Uncancel the contract line and then do one of the following: If you don't want to recognize any revenue or generate invoices for the "Undelivered" contract line, you can either delete it or cancel it and use the contract line start date as the cancellation date. If you do want to recognize some revenue and generate an invoice for the "Undelivered" contract line, the best practice is to do the following:
|
| I can't select a contract line in the Deliver Contract dialog box. A contract line appears, but it is grayed-out. | You need Edit permissions for Contracts in order to deliver a contract line. Ask your Intacct administrator for the applicable Contracts permissions. |
|
The Delivery status = "Undelivered", but the revenue schedule status = "On hold". Deliver revenue schedule was not successful. Resume the revenue schedule from hold and then try delivering it again. |
You can place an undelivered contract line on hold. This changes its revenue schedule status from "Pending delivery" or "Pending delivery of all items" to "On hold". You can't deliver an undelivered contract line while it is "On hold". To deliver the contract line:
|
| This contract line is participating in the <scheme name> MEA allocation effective <effective date>, which is preventing the contract line from being delivered on a date earlier than <effective date>. To resolve this situation, do one of the following: Clear the <scheme name effective date> MEA allocation, then deliver the contract line, and then create a new MEA allocation effective <effective date>, OR use a delivery date that is after <effective date>. |
If the contract line is participating in an MEA allocation, you can't deliver the contract line on a date that is earlier than the MEA allocation effective date. In this scenario, do one of the following:
|