Fintech · Accounts receivable

Columnar analytics for enterprise receivables

The client is the accounts-receivable automation product from our cash-application and check-OCR cases. It had started taking on enterprise customers with tens of entities and millions of invoices each.

Finance teams expect ageing, DSO and collections views to be current, and every one of those queries scans a customer's entire invoice and payment history. On the row-store that ran the product, enterprise tenants waited on every report, and reporting competed with the application itself.

We gave analytics its own columnar store. A change-data pipeline feeds it from the transactional database, so reports are built on demand, in seconds, instead of in a nightly batch.

The other decision that mattered was the data model. We rebuilt it for scans, as wide pre-joined tables keyed by tenant, entity and period, with tenant isolation.

Enterprise tenants now get reports on live data in seconds, where they used to wait tens of minutes or schedule a night batch. The application database no longer carries the reporting load, and a new enterprise customer no longer means another night of batches.

More case studies