Invoice Close Process
Introduction
The current page describes (technically) the elements which are part of the process of closing running invoices.
Invoice Batch Engine - controls the closing of invoices and makes invoices ready for export to third party, PDF generation etc.
Invoice Export Engine - processes requests for exporting invoices, and also prepares invoices for publishing.
Invoice Close/Invoice Management Tab - handles marking of invoices as being published.
The state of invoice batches is described below, where the number in parenthesis indicates the internal state identifier (statusId for InvoiceBatch).
Process
Process Description
State | Who | Description |
---|---|---|
Pending Close | If a batch is requested to be closed immediately the state change is done immediately, otherwise the process is handled by the Invoice Batch Engine | |
Closing | Invoice schedules are closed as long as they end before 'now' (i.e. the execution time). | |
Closed | It is possible per billing cycle to define a hookpoint key that will allow calling a hookpoint. If this hookpoint does not exist or does not return FAILURE, any non-closed invoice within a closed invoice schedule is moved to the next invoice schedule. Invoices may not be closed because they fail to fulfill the minimum usage requirements. | |
Aggregating | The actual aggregation of invoice detail lines is handled by an external process, located in the database. Hence this process only checks that all invoices are aggregated before processing continues. This is done by counting the non-aggregated invoices by an SQL located in the resource file " | |
Ready for sending | If there are no invoices in the batch, the batch goes into error. | |
Ordered | A workflow is invoked which processes the export queue and changes the state of the corresponding invoice batch. | |
Ready for publish | The export of invoices does not indicate that they are ready for publishing. This is controlled in the Invoice Close GUI which allows the batch to be marked as 'Published'. |