Contract schedules processing overview

Many Sage Intacct customers who decide to implement Contracts want to build up their past contract balances in the system for reporting purposes, specifically to provide the financial disclosures required by ASC 606. The Process Contract Schedules function automates the build-up of these balances by posting the applicable billing, revenue, and expense schedule entries for historical and in-flight contracts to the Contracts subledger. You can then report on the subledger data, analyze it, review it, and when satisfied with the data, make the beginning contract balance entries in the GL.

A Contracts implementation process consists of many steps performed both outside of and within Sage Intacct. This topic describes the specific parts of a Contracts implementation that relate to contract schedules processing.

How contract schedules processing works

In multi-entity environments, implementers will process contract schedules at the entity level. See Before processing contract schedules for details about what to do before executing this process. The following image is a simplified example of how you might process contract schedules using the Full retrospective approach.

Shows an example of running process contract schedules on billing, revenue, and expense schedules using 01/31 as the process as of date.

The Contracts implementer works with the Sage Intacct customer to determine a Go live date, which is the date the customer intends to start using the Contracts application for live transactions. The implementer defines the Go live date in the Process Contract Schedules configuration. After working with the customer to populate all related contract import files, the implementer imports the contract data into Sage Intacct. During the import process, the system flags billing, revenue, and expense schedule entries that have scheduled posting dates occurring before the Go live date as "Historical".

The implementer sets up all related contract data and runs the Process Contract Schedules function as of the applicable dates. If the customer is using the Modified retrospective approach, the implementer sets up the data and runs the process as of the Go-live date minus one. If the customer is using the Full retrospective approach, the implementer sets up the data and runs the process for each applicable reporting period, starting with the earliest period.

The system processes the contract schedules offline. When the system completes a process run, it sends a notification email to the applicable user. The email shows the number of schedules successfully processed. It also lists the error conditions if a contract wasn’t processed successfully. If applicable, you can use a custom Contracts report to help troubleshoot failures.

If a contract is processed successfully, the system moves the historical billing and revenue Unbilled amounts to the Paid accounts and historical expense Accrual amounts to the Recognized account via subledger transactions that use the scheduled posting dates. For the billing amounts, the system generates an invoice for each contract for each scheduled billing period using a system-created transaction definition. You can't convert, edit, or apply payment to these invoices—you can only use them for reporting and for reference. However, if necessary, you can delete these types of invoices to roll back subledger data.

After the implementer completes processing all contract schedules, the implementer uses Contracts subledger reports to verify data and works with the customer to make the beginning contract balance entries in the GL. Then the implementer locks contract schedules processing. The lock prevents any schedule entries from being flagged as "Historical". It also allows live Contracts transactions to be created. For example, if you try to generate an invoice scheduled on or after the Go live date when contract schedules processing is unlocked, you’ll get an error message. When it's locked, you can generate the invoice.

 

ACP