Change History
Change History is an optional product. Get in touch with your Mambu Customer Success Manager to switch it on for your tenant. No change to your contract is needed.
Change History gives you the complete lifecycle of every customer, account and product record, so you can show what a record looked like at any instant and how it got there.
The Gold data products in the Insights Data Catalog always show each record as of the last pipeline refresh. Change History keeps every change made to the records of a Gold data product. Each time a record changes in your Mambu core banking engine, one new row is written holding the full record as it stood after that change. Rows are never updated or deleted, so the table is a complete, append only history of every record from the moment the product was enabled.
Each row is built by replaying the change data capture feed at the exact moment of that change, so related data is resolved as it was at that moment too. A loan row from last March carries the product settings the loan had last March, not the ones it has today. This is what a credit decision review, a dispute, or a model trained on account behaviour needs.
Coverage
Inside the data lake, Change History tables are stored under the Audit/Gold/ prefix, one table per Gold product.
| Gold product | Change History table | Databricks table |
|---|---|---|
| Activity Log | Audit/Gold/activity | Audit.activity |
| Branch Directory | Audit/Gold/branch | Audit.branch |
| Client Groups | Audit/Gold/group | Audit.group |
| Client Master | Audit/Gold/client | Audit.client |
| Credit Arrangements | Audit/Gold/credit_arrangement | Audit.credit_arrangement |
| Deposit Accounts | Audit/Gold/deposit_account | Audit.deposit_account |
| Deposit Products | Audit/Gold/deposit_product | Audit.deposit_product |
| General Ledger Accounts | Audit/Gold/gl_account | Audit.gl_account |
| Loan Accounts | Audit/Gold/loan_account | Audit.loan_account |
| Loan Products | Audit/Gold/loan_product | Audit.loan_product |
| System Users | Audit/Gold/user | Audit.user |
Change History covers the 11 products above. Transaction products do not need it: their rows never change, so the Gold product already holds every transaction. For a copy of a product as it stood at the close of a day, refer to Snapshots.
Columns
A Change History table has the same fields as the Gold product it tracks, plus the following columns.
| Column | Type | Description |
|---|---|---|
_processed_at | timestamp | When the row was written. |
_data_version | whole number | Version of the source data the row was built from. Higher means later. |
_job_id | text | Identifier of the pipeline run that wrote the row. |
_build_id | text | Version of the pipeline code that wrote the row. |
The instant of the change is the record's own lastModifiedDate. A record with five changes has five rows, each with a different lastModifiedDate, and the pair encodedKey and lastModifiedDate identifies a row.
Querying Change History
To see a product as it stood at an exact instant, keep the latest row per record at or before that instant.
WITH ranked AS (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY encodedKey ORDER BY lastModifiedDate DESC) AS rn
FROM Audit.loan_account
WHERE CAST(lastModifiedDate AS TIMESTAMP) <= TIMESTAMP '2026-09-30 17:00:00'
)
SELECT * FROM ranked WHERE rn = 1;
To follow one record through every change it went through, order its rows by lastModifiedDate.
SELECT lastModifiedDate, accountState, balances
FROM Audit.loan_account
WHERE encodedKey = '8a8e8f9c7b1d2e3f017b1e4a5c6d0001'
ORDER BY lastModifiedDate;
Refresh, history and retention
- Change History is refreshed on a schedule set for your tenant, from every few hours to once a day. A change appears after the next refresh, and
lastModifiedDatealways carries the true time of the change, not the time it was processed. - When the product is enabled, the first run seeds the table with the current state of every record. Changes made before that moment are not included.
- Rows are kept and are not expired automatically. The tables grow with your change volume and count towards your data lake storage.
Enabling Change History
- Change History is enabled per tenant on request through your Mambu Customer Success Manager.
- It consumes Mambu Insights Credits like any other data product: compute for each run and storage for the rows it keeps. For more information, refer to Pricing and Consumption.
- Once enabled, Change History tables are available in your data lake under the
Audit/Gold/prefix, next to the Gold products, and through the same connections you already use. For more information, refer to Connecting Third Party Tools. - Their catalog entries are listed under Change History. For a copy of a product as it stood at the close of each day, refer to Snapshots.