Deferral Life Cycle
Overview
The deferral header table has a single record for any one deferred invoice line item and always has 1 or more deferral detail records associated with it. For deferred products with discounts applied to them, the discounts must also be deferred and so, deferred discounts also become a line item in the invoice. Therefore, they also get their own deferral header and detail records.
Deferral Status
The deferral header has been designated with a Status column and there are 6 well-defined statuses that identify the current state of the deferral. These statuses closely reflect real-world events that can occur on a deferral. This new deferral status identifies the major states the deferral is currently in.
Deferral Detail Types
The deferral detail records have a Type column and there are ten deferral detail types defined that combine with each other and the deferral status on the header record to show all the different events that have occurred on the deferral. Each detail record designates things such as which period it is associated with, the amount for the current detail record, deferred and revenue accounts, price keys, batch period keys, and, in certain cases, links to transaction records.
Actionable Deferral Detail Types
Some deferral detail types are actionable in accounting and those types either define a schedule or are offsetting a schedule. For example, if a 12-month membership is bought and deferred over all twelve months, without any kind of catch-up amounts or special circumstances, then there would be 12 deferral detail records of type ‘Schedule’. There would also be 12 corresponding deferral detail records with a type of ‘Recognize’ that offset each schedule. At this point the deferral would have a header status of ‘Complete’ and the deferral balance would be $0.00. This example makes a lot of assumptions but is a simple example of the general workflow of a deferral once it is created.
There can also be ‘Void’ deferral detail types, which will add void records for all the schedule details, including the recognized schedules. Additionally, there are ‘Cancel’ detail types that offset only the unrecognized schedules. Finally, there are partial cancellations in which the ‘Cancel’ types would offset a portion of schedules but leave remaining quantities for recognition. More detail on partial cancellations can be found later in this document.
Non-Actionable/Event History Deferral Detail Types
The other deferral detail types that are not considered actionable in the accounting system are there to simply record that a specific event occurred. The event occurred on the deferred line item or on a related record, and needs to be recorded so that the date, period, amount, and action take can be saved and pulled up again later for this deferral. These items include values such as the ‘Open’, ‘BatchClosed’, and ‘Closed’ deferral detail types.
All deferral statuses and detail types and are defined in a table for further discussion in this section of the document.
Using the combination of Header Status and Detail Type records, the true state of a deferral can be persisted in the data and conveyed back to NetForum code, user screens, and reports. A minimum set of calculations and database joins are needed to perform the recognition process because the schedules, amounts, and period dates in which to recognize are all calculated before the recognition process begins and are easy to read back from the database.
Table of Deferral Statuses
| Order of Progression | Status | Triggering Event | Batch Status | Notes |
|---|---|---|---|---|
| 1 | Open | Invoice with Deferral created | Open | Deferred Line item is new or being rewritten |
| 2 | Expected | Deferral Term dates become known (Dates Flipped) before batch close | Open | |
| 3 | Pending | Deferral Invoice Batch Closes before Dates are Flipped | Closed | |
| 4 | Available | Deferral is ready for recognition, but no revenue has been recognized yet, dates are flipped, and the Batch is closed | Yes | |
| 5 | Recognizing | Denotes that deferral has gone past the Available state and has recognized any amount of revenue but not all revenue. | Yes |
|
| 6 | Complete | All scheduled recognitions were recognized, canceled, or voided and the deferral has a balance of $0.00. | Closed | Note: Partial cancelations would not complete the deferral unless it is a partial cancel on top of another and it is cancelling the final invoice detail quantity and the deferral balance is $0. |
Table of Deferral Detail Types
| Deferral Detail Type | Description | Period Key from |
|---|---|---|
| Open |
|
Invoice Batch Period; Except for memberships with Payment -based Flip Date Condition, then it is the Payment Batch Period |
| Expected |
|
Same as Open |
| Pending |
|
Same as Open |
| Schedule |
|
Period within the term dates in which this schedule should recognize revenue |
| BatchClosed |
|
Period to which the batch that closed was tied to |
| Available |
|
Same period as the Open record |
| Recognize |
|
Period Key is the key of the period being recognized when the record is written and the same period key as the schedule for which the recognize record is offsetting. |
| Cancel |
|
Period key is the key of the period that is current when the deferral is cancelled. |
| Void |
|
Period key is the key of the period that is current when the deferral is voided. |
| Closed |
|
Period key is the key of the period that is current when the deferral is completed. |