Invoicing Process Work Flow

In the CIS system, there are five major services running in the background to complete the Invoice Process Workflow.

Import Engine

This works with external tools to import consumption and TDSP charges from the Utility in the form of EDI files and then store the raw data into market database. The data is then imported to billing database for the Invoice Engine to pick up.

EDI sends electronic invoices for TDSP charges to Suppliers using EDI transaction 810. EDI also sends meter read information to the Suppliers through EDI data transfer. For more information see, Consumption Processing.

The EDI transaction details can be viewed in the Utility Accounts (ESI/LDC) tab on Customer Summary screen. Detailed information can be obtained by selecting the View Raw Market Transaction link.

Customer EDI Transaction

The image below shows a Customer EDI transaction example per month which are inbound 867_03 and 810 for this Customer.



EDI 867_03 Meter Read Transaction

The image below is an EDI 867_03 Meter Read Transaction which shows a detailed information including Service Period, Meter Start and End Reads and Quantity.



Invoice Engine

It is a process running in the background to process the 867s and 810s and create invoices. New Invoice Creation Request is stored in the BillingAdmin.InvoiceQueue table.

CIS creates Invoice Batch for small groups of Customers. The Invoice Engine processes the Invoice Batch to generate invoices in bulk.

Most of the Invoice Batch(s) are created automatically by the CIS system. To set a BG to auto-invoicing, see Bill Group Management.

Incase of any invoice errors the CIS Ops team, after processing such errors as per billing rules, create manual invoices. Suppliers can also log into the CSR site and create manual inovices as per need.

Invoice Batch can be created in one of the following ways:

  • By Customer
  • By Bill Group
  • By 867 Transaction Date
  • By Consumption Date To
  • By Production Cycle

To create Invoice Batch for Batch Invoicing, do the following:

  1. On the CSR site, go to Administration > General > Client Invoice Administration.
  2. On the left pane of the page, you can see a list of BG (Bill Groups), Total Customers and Billable Customers. Check Lock Selected Batches for the BG you need to create batch and click Lock Selected Batches.
  3. The selected BGs will appear on the right pane and will be in Pending Validation status. After some time the BG status turns to Validating and then to In Review.


  4. Click on In review link. Here you can see the pre invoice validations, if any. See Pre-invoice Validation.


  5. Handle the pre-invoice validations as per business rules and click Invoice to create batches.
  6. From the left pane click on Batches from the Quick Links section. You see the batch created. It is identified by a number in the Batch column.


  7. The freshly created Batch has status Pending. The status changes to Processing after few seconds, and then to Completed or Error Occurred.
    Note: Status is Completed when all the accounts in the batch are successfully invoiced.

    Status is Error Occurred when there are post invoice errors for one or more accounts which failed to invoice. See Post-invoice errors.

The Invoice Engine searches the consumption table looking for new meter data that has not been processed. These are identified easily as it has no invoice ID assigned. Once found, a new invoice is created in the invoice table with invoice details information stored in the InvoiceDetail table. A new invoice ID is allocated and assigned to the invoice as well as the new consumption data.

To view recently generated invoice for an account, go to AR / Billing Tab on CSR screen. The most recently billed invoice is at the top of the list. For details see, AR/Billing Tab.
Note: Suppliers can create single invoice directly from CSR in the following way:
  1. On the Customer summary screen, go to Activity > Invoice.
  2. Enter the Begin Date Range and End Date Range and click Generate Invoice.
  3. Invoice is generated successfully or invoicing error is thrown if any of the invoicing parameters is not satisfied.

Print Engine

This runs in the background to print invoices using different templates. New Invoice Print Request is stored in the BillingAdmin.PrintQueue table.

By using Crystal Reports, Active Reports, or Word2PDFs (iPDF) software, the invoice data is used to create an actual invoice. Individual PDF for each invoice/letter in the batch is created. The invoice is saved as a PDF file and made ready either to be delivered directly to Customers by email, or batched and sent to CIS Print Vendor by Export Engine for it to be printed and delivered to Customers.

Note: All the individual PDFs are zipped together and uploaded to respective folder types (Welcome, Disconnect, Invoice).

In addition, Print Engine generates the outbound 810 requests in the Market database and the global service picks up and delivers it to the Market.

Below is an example of a PDF version of invoice:



Note: For some Suppliers, the invoice has QR code placed in the bottom of page 1 on the right hand side of the customer address. It has the following information:
  • Customer Name
  • Customer account number
  • Utility Account Number
  • "Invoice"
  • Invoice Date

Below is an example of invoice with QR code:



Export Engine

This exports the data to Customers in csv or xml formats or exports data to third party using EDI transactions.

Here is a general overview of the invoice release and print process with the third party print vendor:

  1. CIS Ops team sends a confirmation email to the Supplier Ops team requesting to review the invoices within the current day’s invoice date.
  2. Upon receiving the request, the Supplier Ops team reviews the invoices and provides feedback to the CIS Ops team.
  3. Invoice Correction, if any, is implemented by the CIS Ops team.
  4. Once the invoices are ready for release, CIS releases the invoices to the third party print vendor. To release invoice, follow below steps:
    1. Go to Administration Menu > General > Correspondence Administration.
    2. Click Process Today's Invoice on Manual invoice processing page.


    3. Check the desired records and click Lock on Available for review tab.


    4. Go to Locked:Review for Approval tab. Check the desired records and click Approve.


    5. Go to Approved:Ready for Release tab. Check the desired records and click Release Batch. This releases the selected invoices. Any time during the process you can click Cancel to cancel releasing.


      Note: Alternate functionality to release invoice - Go to Administration Menu > Operations > Batch Print Administration NEW. Select Release radio buttons in the displayed records and click on click Process Print Batch.


  5. Invoices are transmitted to third party print vendor in batches with up to 50 invoice per batch. Batches are also checked with the following criteria:
    • The Bill group is correct.
    • The Customer Type is correct.
    • Duplicate checkers ensure that invoices are never sent twice in the same batch.
    • Invoices are never sent twice in different batches.
  6. Validators exist to ensure that there is no corruption in both Zip and PDF files.
  7. The batches then receive a “Release Time” indicating when they were released.
  8. Once downloaded, the batches receive a “Downloaded Time” to confirm receipt by the third party print vendor.
  9. A subsequent file is sent to the third party print vendor that contains all batches transmitted for the day as well as the number of invoices contained in each batch.
  10. Once done printing, the third party print vendor sends back a confirmation file to CIS. CIS imports the confirmation file with the date in the file as the “Mail Date". The File contains the following information:
    • Batch Name
    • Number of pages in the batch
    • Count of distinct invoices in the batch
    • Mail Time

To View the print status report:

  1. Go to Administration Menu > Operations > Batch Print Monitoring.
  2. Set the Date From and Date To fields. Select Print Status from drop down and click List. This will display the desired print status report.


Event Engine

This creates and handles system events. The following tasks are conducted by the System Maintenance Engine:

  • Enroll Customers
  • Apply Aging
  • Apply Late Fees
  • Maintenance Queue
  • QA Check
  • Generate Events
  • MCPE Back Casting
  • Log Service