Case study · Investment reporting automation
From 20+ hours of manual work to a hands‑off monthly pipeline.
How Amula AI rebuilt bilingual investment factsheet production for IST Investmentstiftung, turning a slow, fragmented, manual process across roughly 20 funds into a single governed Power BI pipeline with automated PDF output.
At a glance
20+ hrs → 3–4 hrs
Monthly workload, from 20+ hours per fund manager to a few hours in total
~20 funds
Standardized reporting across the full fund range
DE + FR
Bilingual output, fully automated: around 40 report variants
~2 months
From strategy to a live, production pipeline
One semantic model replacing ~40 separate datasets: a single source of truth.
Near-zero manual steps in monthly PDF generation.
Client & context
A Swiss pension investment foundation with no tolerance for wrong numbers.
IST Investmentstiftung
IST Investmentstiftung is a Swiss investment foundation that manages assets on behalf of pension institutions.
Every month, IST publishes investment factsheets for roughly 20 funds, each in German and French, for an audience of professional and institutional investors. In a regulated pension context, these documents have to be accurate, consistent, on-brand, and on time. There is no tolerance for wrong numbers or missing data.
The challenge
A critical monthly deliverable running on manual labor and tribal knowledge.
The existing process was manual, fragmented, and high-risk:
Heavy manual effort
Producing and checking the factsheets consumed 20+ hours per fund manager every month: repetitive assembly, formatting, and review work that scaled linearly with every new fund.
The bilingual multiplier
Every factsheet existed in German and French, effectively doubling the production and review surface.
Fragmentation and drift
Reporting logic lived across many separate files, so formatting and calculation rules drifted apart over time, creating a maintenance and consistency liability.
Compliance details that break silently
Swiss number formatting, strict corporate typography (the mandated Tahoma font), and locale handling in charts and measures: small details that, when wrong, quietly undermine credibility.
Silent failure as the core risk
The dangerous errors in financial reporting are the ones that don't throw an error: a mis-scaled value, a pre-formatted text field treated as a number, a partial data row that quietly blanks a performance figure. The process had no systematic defense against these.
Manual, brittle PDF output
Final delivery depended on manual export steps that were slow and easy to get wrong.
The approach
Reporting rebuilt as governed infrastructure.
Amula AI treated reporting as infrastructure: a governed pipeline, designed once, that runs every month with minimal human intervention. Five pillars:
- 01
A governed data foundation
Volatile, multi-source workbooks were turned into reliable, Power-BI-ready inputs. A purpose-built Snapshot Tool (a Python desktop app) converts live-formula Excel workbooks into static, value-only versions, so the reporting layer always reads stable data. Scaling, formatting, and display rules were encoded once in centralized Power Query mapping tables, eliminating the per-file guesswork that caused silent errors.
- 02
One semantic model, many thin reports
Instead of ~40 separate datasets, Amula built a single shared Power BI semantic model feeding lightweight per-fund reports via live connection. Per-fund scoping is handled with report-level filters; German and French ship as separate, correctly localized reports. This kills normalization drift and makes adding a fund a configuration task, not a rebuild.
- 03
Swiss-compliant presentation, by design
The pipeline enforces Swiss formatting, correct locale handling in DAX measures (de-CH / fr-CH), and full Tahoma font compliance in the rendered output, so every factsheet is consistent and on-brand without manual fixing.
- 04
Hands-off PDF production
Monthly output is automated end-to-end: datasets refresh through the Power BI REST API using secure service-principal authentication, and final PDFs are generated by driving Power BI's native export on Microsoft's own rendering servers, where the corporate font is natively present. The whole run is config-driven: report lists, behavior, and secrets live in configuration, not in code.
- 05
Engineering for trust
The build ran in numbered phases with hard validation gates and a separate QA layer: the builder never signs off its own work. Every deliverable explicitly flags silent-failure risks instead of letting them slip through.
Architecture
One governed pipeline, end to end.
Source workbooks
key data, performance, structure, categories
Snapshot Tool
live → static, value-only
SharePoint
governed file store
Shared Power BI
semantic model · Power Query mapping · scaling + formatting · Swiss-locale DAX
~40 thin reports
DE / FR per fund, report-level filters
Power BI Service
scheduled, governed
REST API refresh
service principal / MSAL auth
Automated PDF export
native render, Tahoma-compliant
Bilingual monthly factsheets
DE + FR, on schedule
Results & impact
A step-change, not an incremental gain.
Headline outcomes
- Monthly reporting effort cut from 20+ hours per fund manager to 3–4 hours in total.
- Roughly 20 funds standardized under one consistent reporting system.
- Bilingual (DE/FR) output automated, removing the duplicate manual workload.
- Delivered in roughly two months, strategy through live implementation.
What it means
- One source of truth
- A single semantic model replaced ~40 fragmented datasets, ending normalization drift.
- Scales by configuration
- Adding a fund or report is a configuration change, not a rebuild.
- Defense against silent failure
- The failure mode that matters most in financial reporting is flagged explicitly, not assumed away.
- Adopted by the client's team
- IST's own team now operate the data-preparation tooling directly.
- A durable partnership
- The work established Amula AI as an ongoing strategic implementation partner, not a one-off vendor.
Why it holds up
The engineering principles behind the build.
Architecture before tooling
A shared model plus thin reports eliminates drift across dozens of files.
Silent failure is the primary risk
Mis-scaled values, text-vs-numeric mismatches, and partial rows are flagged explicitly, not assumed away.
Data normalization belongs at the source
Raw values plus format rules (not pre-formatted strings) keep the model clean and auditable.
Config-driven, not hardcoded
Secrets, behavior, and report lists live in configuration.
Phased delivery with QA gates
The builder never signs off its own work.
Tech stack
Built on the Microsoft stack, automated with Python.
BI & modeling
Automation (Python)
Microsoft / Azure
Tooling
Running critical reports by hand?
Amula AI turns manual, high-stakes reporting into governed, automated infrastructure. Let's map what that looks like for your numbers.
