Files
Revenue-Analytics/README.md
T
2026-07-12 17:54:22 +03:00

4.0 KiB

Revenue Analytics

Desktop application for reconciling contract revenue against the general ledger, analysing month-over-month (MRR) movements, and tracking Professional Services backlog using Sage Intacct exports.

The application reduces manual reconciliation work by importing Sage Intacct reports into a local SQLite database and providing interactive views for investigating revenue movements, categorising revenue changes, and analysing backlog.

Designed for Revenue Operations, Billing, Revenue Accounting, and Finance teams using Sage Intacct.


Features

  • Import Contracts and General Ledger CSV exports from Sage Intacct.
  • Build a local SQLite database—no server required.
  • Reconcile contract revenue against general ledger activity.
  • Automatically categorise recurring revenue movements.
  • Assign uncategorised transactions to contracts.
  • Persist user-defined contract mappings and movement categories for future imports.
  • Drill down from summary figures to the underlying transactions.
  • Analyse Professional Services backlog by comparing contract values with billed revenue.

Screenshots

Contracts View

Displays contract revenue in a pivot table grouped by customer, contract, and revenue source (Projects, Monthly Revenue, Resell).

image ---

Ledger View

Displays all General Ledger transactions, including manual journal entries and Order Entry invoices that are not linked to contracts.

image ---

MRR Summary

Summarises Month-over-Month recurring revenue movements by category.

Users can immediately identify:

  • New Business

  • Expansion

  • Contraction

  • Churn

  • Pricing changes

  • Other revenue movements

    image

Automatic Transaction Categorisation

Revenue movements are categorised automatically based on imported data. When automatic categorisation is not possible, users can assign categories manually. These mappings are stored locally and reused during future imports, reducing manual effort over time.

image

Result: image

Revenue Movement Drill-down

Double-clicking a Month-over-Month movement displays the customers and contracts responsible for that change.

image

Double-clicking a customer difference in the MRR Summary view displays the individual ledger entries contributing to that movement.

image

Professional Services Backlog

Calculates remaining project backlog by subtracting billed revenue from the total contract value.

Provides an up-to-date view of remaining Professional Services revenue still to be recognised.

image

Technology

  • Python
  • PySide6 (Qt)
  • pandas
  • numpy
  • SQLite

Try it out

Download from the releases page, extract, and run main.py. Note that you may get a warning from Windows Defender to trust the executable. To use with your own data, create reports for contracts revenue schedules, contracts billing schedules, and general ledger data (do not forget the custom fields where necessary) and replace the placeholder data.