Skip to content

/

IR portal

Helping listed Indian companies see who really owns their shares

AEGIX, dashboard, shipped

The shipped AEGIX dashboard for a sample company: the module sidebar, the company header and the current share price.The shipped AEGIX dashboard for a sample company: the module sidebar, the company header and the current share price.
The shipped dashboard, live since April 2026.
In 15 secondsIR portal
Problem
Investor relations (IR) teams at listed Indian companies couldn’t see who really owned their shares. Big investors hid behind small funds.
My role
First and lead designer. A 2-day MVP in February 2025, then the core product over 14 months.
Key move
Map each fund to its parent once, so one screen shows every investor’s funds. Plus Ask AiRa, an AI assistant answering only from portal data.
Result
Live as AEGIX since April 2026 with 4 client companies, the first won on my Figma prototype before the build.
Company
KFintech, Hyderabad, product AEGIX
Role
Product Designer, lead on this product
Team
PM, developers, 2 designers who joined later
Timeline
Feb 2025 – Apr 2026
Platform
Web, desktop
Status
Live with 4 client companies
2 daysto an MVP that won approval
14 monthsfrom MVP to live product
10 of 12shipped modules were in the MVP
4client companies live
A Figma-style canvas with five AEGIX frames: the shipped dashboard, selected at 1440 by 900, then Event Graph, an Ask AiRa answer reconstructed from spec, fund mapping, and a call transcript with its AI summary.A Figma-style canvas with five AEGIX frames: the shipped dashboard, selected at 1440 by 900, then Event Graph, an Ask AiRa answer reconstructed from spec, fund mapping, and a call transcript with its AI summary.
From my AEGIX Figma file. The design frames show earlier menus; the shipped app has 12 modules.

Published with KFintech’s permission. Client names and market data are changed. Happy to walk through the real work on a call.

A one-minute tour of the main flows. Narrated by an AI copy of my voice.

Problem

The real owner stayed hidden

Every Friday, an investor relations (IR) team gets a fresh shareholder list. Then it tells the CEO and CFO who bought, who sold and what analysts expect, using scattered tools. But the biggest buyer may show up as small funds that look like strangers.

Each fund stays under 1%, below the line where filings must name the holder. The team saw the price move, not who moved it.

IR heads could tell from experience which funds belonged together. The data couldn’t, so every Friday one investor arrived in pieces.

KFintech saw a paid add-on for the listed companies whose shareholder register it already keeps. Two limits held throughout: share prices arrived 15 minutes late, and demo dates never moved.

Deep dive: how Indian ownership data works

A listed company’s shareholder register is kept by an RTA (registrar and transfer agent); KFintech is one. Shares are held electronically at India’s two depositories, which send the RTA a full holder list called BENPOS (beneficiary position) every Friday.

Foreign institutions invest as foreign portfolio investors (FPIs, often still called FIIs) and register with SEBI, India’s market regulator. In the shareholding pattern a company files with NSE and BSE, India’s two stock exchanges, public holders above 1% are named. Holders below it are not, which is why a stake split across related funds can stay out of view.

A bulk deal is a single-day trade in more than 0.5% of a company’s shares. A block deal is a large trade done in a separate, short trading window. Both let a big seller pass shares to a known buyer.

IR team

Reads ownership every week

Role
Investor relations team at a listed company
Job
Tell the CEO and CFO who bought, who sold and what analysts expect
How often
Weekly, after the Friday shareholder file (BENPOS)
Pain
Fragmented tools and manual work; funds under 1% each hide the real owner

Platform admin

Keeps fund mapping correct

Role
Superadmin who maintains the fund-to-parent mapping
Job
Link each fund to its parent investor by SEBI registration number
How often
Weekly, when new unmapped funds arrive in the Friday file
Pain
About 12,000 foreign institutions to map; a wrong merge misstates ownership
Reconstructed for this case study
Illustrative
A shareholder table where four separate funds, each under 1%, are highlighted as belonging to the same investor.A shareholder table where four separate funds, each under 1%, are highlighted as belonging to the same investor.
Illustrative: four funds, each under 1%, one investor. The table showed them as strangers.

How I worked

Two days to a yes

No product yet, only an hour or two of context.

  1. Feb 202514-screen MVP in two days. Showed stakeholders what we were trying to make; approved.
  2. Feb–Mar 2025Requirements doc, IR-head calls. Our own IR team first; the fund-merge need surfaces.
  3. Mar 2025V2 and V3. About 70 screens, dark to light.
  4. 2025Final design, clickable prototype. The first clients sign on it.
  5. Apr 2026Live. 12 modules, 4 client companies.

With a new client coming, I designed 15 to 20 new screens in one night, logic and all.

Fourteen dark-themed screens from the first MVP, including the dashboard, event graph, shareholding and mail-back.Fourteen dark-themed screens from the first MVP, including the dashboard, event graph, shareholding and mail-back.
V1, built in two days in February 2025. Ten of these modules are in the shipped navigation.

Repeats every Friday

  1. 01

    Friday file arrives

    BENPOS: the full holder list from the depositories

  2. 02

    Parsed

    Each holder row is read from the file

  3. 03

    Unmapped funds flagged

    They wait in Other buckets with a warning

  4. 04

    Admin maps to parent

    One parent per fund, by registration number

  5. 05

    Ownership tabs update

    New, exits, top buyers and sellers, by country

  6. 06

    Weekly report email

    The IR team gets the summary

When it goes wrong

  • Exception, steps 1 and 2

    Upload failed or late

    A reminder email goes out and the file is uploaded again

  • Waiting, step 3

    Unmapped fund

    Stays visible in its warning bucket until someone maps it

  • Undo, step 4

    Wrong merge

    Reversed from the audit log, which records every change

Reconstructed for this case study

Change 01

Every fund gets a parent

Rejected first: merging rows in the holder table. A wrong merge misstates ownership.

The PM chose manual mapping: link about 12,000 foreign institutions registered with SEBI, India’s market regulator, to their parents, with an override. I dropped my first idea, merging rows in the holder table. A wrong merge would misstate ownership and be hard to spot or undo.

Each parent lists its funds by registration number. Unmapped funds wait in a flagged “Other” bucket, in plain sight. One screen shows every fund behind an investor.

Options
Inline merge in the holder table, or a separate mapping screen
I chose
A separate mapping screen with an audit log.
Trade-off
Slow manual setup, but no stake merged on a guess.
An admin moves an unmapped fund under its parent investor, and the change appears in the audit log.An admin moves an unmapped fund under its parent investor, and the change appears in the audit log.
Reconstructed: unmapped funds sit in a warning bucket until an admin assigns them, and every change is logged.

Change 02

One tab per Friday question

Ownership was the hardest module, 24 frames to settle. One table with filters meant the same filtering every Friday, so each weekly question got a tab:

  • Who is new?

  • Who left?

  • Who bought or sold most?

  • Which block deals moved shares?

  • Where are holders based?

The sellers tab is where the team acts. When a big holder wants out, IR finds one buyer for the block (one large trade) before the sale drags the price down.

Options
One table with filters, or one tab per question
I chose
Tabs, with both dates in every header.
Trade-off
More tabs, but no filtering needed.
RejectedOne table with filters
Change type ▾Investor type ▾Country ▾Period ▾Size ▾

Every Friday the team re-applies the same filters to answer each question.

ShippedA tab per weekly question
Fresh entryWho is new?
Complete exitsWho left?
Top buyersWho bought most?
Top sellersWho sold most?
Bulk or block dealsWhich deals moved shares?
Holding by countryWhere are holders based?
Compares two dates:This FridayLast Friday

Each Friday question is one click away, and every table names the two dates it compares.

Rejected: one table and filters. Chosen: a tab for each weekly question.

Reconstructed for this case study
The Top buyers tab with three notes: one click to the full report, one tab per Friday question, and a circle around the header that names both dates it compares.The Top buyers tab with three notes: one click to the full report, one tab per Friday question, and a circle around the header that names both dates it compares.
Each tab answers one question, and the header names both dates it compares.

Change 03

Icons became named jobs

The MVP’s sidebar had 5 icons. Each new module added one, until there were 13, none labelled. I added labels and regrouped them by IR job.

Shareholding Analysis became Ownership. Mail Back became Communication, the meeting log became IRM (investor relationship management), and four modules dropped out.

Options
Icons with tooltips, a label on every item, or regrouped labels
I chose
Regrouped labels, collapsible.
Trade-off
About 230 px of table width while open.
Before and after, same crop: the V3 sidebar with 13 unlabelled icons, and the shipped sidebar with 12 labelled items grouped by IR job.Before and after, same crop: the V3 sidebar with 13 unlabelled icons, and the shipped sidebar with 12 labelled items grouped by IR job.
Before: 13 unlabelled icons. After: 12 items named for what an IR team does.

V1, Feb 2025

5 icons, no labels

  • home
  • document
  • calendar
  • puzzle
  • bookmark

V2 and V3, Mar 2025

13 icons, no labels

  • dashboard
  • calendar
  • newspaper
  • calendar event
  • mail
  • newspaper (V2), numbers (V3)
  • stock
  • user add
  • bar chart
  • folder chart
  • pie chart (V2), smile (V3)
  • scan
  • line chart

Final design

14 labelled items

  • Dashboard
  • Calendar
  • Market Insights
  • Analyst Consensus EstimationRemoved
  • Peer Analysis
  • Shareholding AnalysisRenamed
  • Price Volume Movement
  • Investor Conversion
  • Investor Targeting
  • ComplaintsRemoved
  • Event Graph
  • Ask AiRaRenamed
  • DirectoryRemoved
  • Broker conferenceRemoved

Shipped, Apr 2026

12 labelled items, grouped by IR job

  • Dashboard
  • Calendar
  • Market Insights
  • CommunicationWas Mail Back
  • Peer Analysis
  • Ownership
  • Price Volume Movement
  • Investor Conversion
  • Investor Targeting
  • Event Graph
  • IRMWas the meeting log
  • Ask AiRa
Reconstructed for this case study

Change 04

Events on the price line

IR teams must show leadership how results, dividends and roadshows line up with the price. The Event Graph puts them on the chart, beside a peer’s. Labels worked in the MVP until clustered results collided. The shipped build uses markers with hover details.

Options
A label on every event, or markers with hover details
I chose
Markers.
Trade-off
Details take a hover, not a glance.
The Event Graph in the design file: the share price line with a label on each quarterly result.
The design file labels every event; the shipped build shows markers, with details on hover. Teams add their own events, tagged and optionally private.

Change 05

AI, minus the gimmick

Everyone was adding AI, and the PM and I didn’t want a gimmick. It would also cost money. We went ahead because IR users could ask what’s on their mind instead of scrolling hundreds of rows.

Ask AiRa runs on Gemini 3 Flash and answers only from the portal’s own data. The tech team ruled out the web, so I made the limit visible.

Starter prompts are real IR questions. Each answer names its source module. Out-of-scope questions get a plain no; missing data gets a pointer to the right module.

It can also schedule. It asks for the details, shows a draft card, and saves nothing until the user confirms.

Options
No assistant, or an assistant on portal data that confirms before it acts
We chose
The assistant, on the Premium plan.
Trade-off
No web answers; it says so instead of guessing.
Ask AiRa: the empty state with three starter questions, and an answer listing this week’s top buyers with a link to the Ownership module.
Reconstructed from my spec: real IR questions in, answers that name their source out.
AiRa declines a question about outside market news and points to Market Insights, and shows a draft meeting card waiting for the user to confirm.
Reconstructed from my spec: it says what it can’t do, and asks before it acts.
A user asks AiRa to set up a call, confirms the draft, and the meeting appears in the calendar.A user asks AiRa to set up a call, confirms the draft, and the meeting appears in the calendar.
Reconstructed: from a request in plain words to a confirmed meeting.

What failed

Design both, decide later

The funniest battle was light mode against dark mode. Some stakeholders wanted light, others dark, so we designed both and decided later.

Dark impressed in the first review. In demos, IR users said the dense tables were hard to read. I pushed for light, and it carried.

When I measured it later, the body text passed (9.6:1), but the Buy chip failed AA at 3.58:1. Now I judge a new style on the densest table before the demo dashboard.

Deep dive: measured contrast, V2 dark vs final light

Computed with the WCAG 2 formula from the fills in the Figma file, translucent layers composited in order (page, card, row). Checked a second way by rendering both tables and reading the pixel colours: every pair lands within 0.2 of these values, and no pass or fail changes.

PairV2 darkFinal light
Body text on row9.60:1 (passes); 8.44:1 on alternate rows13.98:1 (passes); 13.35:1 on alternate rows
Column header9.92:15.04:1
“Buy” status chip3.58:1 (fails AA for small text)n/a in this table
Card against page1.27:11.10:1
Zebra row against row1.14:11.05:1
Four versions of the same dashboard moving from a dark glossy style to a flat light style.Four versions of the same dashboard moving from a dark glossy style to a flat light style.
Dark glass to flat light in four versions, from V1 to the shipped build.
The V2 dark table block: brokerages, analysts, ratings and target prices on dark rows.
V2 dark beside the final light table. In dark, the body text passed but the Buy chip failed AA at 3.58:1.

Outcome

Live, and sold on the prototype

AEGIX has been live since April 2026 with four client companies. The first signed on my Figma prototype, before the build.

I also designed four shipped emails, the meeting log, the derivatives block and AGM (annual general meeting) summaries.

Proven

  • Live as AEGIX since April 2026
  • Four client companies
  • The first signed on my Figma prototype, before the build

What I’d measure next

  • Hours on the weekly update
  • The share of holdings still unmapped
  • How often an AiRa answer ends the search
“The Figma design was the base everything else was built on. It helped the company and the team turn an idea into a live product. Amandeep took feedback well and stayed up till 5 am with us before a client meeting.”
Product Manager, AEGIX

Names left out for privacy. Happy to share references.

The dashboard captured from the live product in April 2026, in a browser frame.
Captured from the live build, 23 April 2026.
Four email designs sent by the platform, from a weekly ownership report to a filing alert.Four email designs sent by the platform, from a weekly ownership report to a filing alert.
The product also reaches IR teams by email, daily and weekly.
Opening a finished earnings call from the calendar, then its recording, transcript and AI-written summary.Opening a finished earnings call from the calendar, then its recording, transcript and AI-written summary.
Reconstructed: from a scheduled call to an AI summary of what was said.

Retrospective

Components from day one

I made a basic style guide because I wanted some structure, but no components. Fine while I worked mostly alone. Once two more designers joined, screens multiplied and so did rework. Next time, components come first.

Two habits came out of it: get the business context in one sitting before building anything, and test the edge cases more than the beautiful screens.

The project’s style guide with its colour palette, type scale and spacing values.
The style guide I set up, enough for one designer but not for three.
Next case, Design systemOne Figma and React system for KFintech’s digital products
Let’s work together

Open to new work and collaborations. Email is the quickest way to reach me.

Resume (PDF, opens in a new tab)
hi@amandeepux.com
Based in Hyderabad, India.© 2026 Amandeep Singh. Designed and built in Framer by me.Privacy