Secure Shareholder Voting

A Voting PortalTrusted by Shareholders

INDEX FUND asked us to rebuild proxy voting so their investors could vote online without friction. We engineered a secure workflow that syncs Ultimus holdings, scrapes Broadridge ballots, and lets shareholders vote from any device—while compliance teams see real-time tallies.

45K
Shareholder records
1,200+
Ballots synced
99.95%
Ultimus API uptime
< 5s
Vote latency
Live ballot queue
Proposal 1
Election of Director
Proposal 2
Advisory Vote
Proposal 3
Ratify Auditors

"They turned a compliance fire drill into a delightful shareholder experience."

Next Idea Tech gave us a voting portal our investors actually trust. They handled Ultimus, Broadridge, the UX, everything.

Ryan P.
Ryan P.
COO, INDEX FUND
Platform Impact

Proxy Ops Without the Drama

After integrating Ultimus and building a modern voting experience, Index Fund finally had audit-ready data and happy investors.

12K
Shareholders onboarded
Direct & beneficial owners
90%
Faster vote processing
Broadridge + Ultimus sync
100%
Compliance events logged
RBAC + audit trails
24/7
Ultimus API ingestion
No manual exports
Past Votes
Auto-organized
SLA <5m
Notification loop
The Challenge

Investors Wanted Confidence. The Tools Said Otherwise.

Index Fund's proxy portal started as a rushed MVP. Scripts broke whenever Broadridge rotated passwords and Ultimus data showed up hours late. Shareholders couldn't log back in, proposals were messy, and compliance had no visibility.

We catalogued every support ticket and Upwork request—from adding sound effects to reorganizing ballots—to understand exactly how investors wanted to vote.

Manual data pulls

Shareholder lists lived in Ultimus exports and Broadridge screens. Nothing reconciled automatically.

No secure login

Beneficial holders couldn't re-enter. OTP popups confused everyone and votes got duplicated.

Proposal chaos

Expired ballots lingered, ordering was random, and investors couldn't see past votes.

Zero transparency

Index staff had no dashboard to see tallies or troubleshoot accounts in real time.

Workflow Snapshot

Ultimus ➝ Broadridge ➝ Shareholder UI

syncUltimus()LD: 2 min
ingestBroadridge()retry: 5
publishBallots()RBAC: investor, admin
Alerts + sounds
Live tally
Admin tools
What We Delivered

A Voting Flow Investors Actually Finish

Our LATAM squad of frontend, backend, and product folks turned scattered requests into a cohesive experience. Shareholders get clarity; the Index team gets a trustworthy system.

Built a secure data bridge between Ultimus APIs, Broadridge ballots, and our Postgres store
Redesigned the React dashboard so shareholders see active ballots, past votes, and quick actions
Implemented login flows for direct + beneficial holders with password + OTP fallback
Added proposal ordering, filtering, and management recommendations with clear defaults
Delivered a management console with live tallying, audit trails, and CSV exports
Shipped UX tweaks (sounds, button states, notifications) to increase vote confidence
Key features

Built for Proxy Ops & Investors

Every enhancement came straight from INDEX FUND's Trello board. We just turned the wish list into shippable UX.

Guided voting

Quick vote buttons, management recommendations, and confirmation sounds give investors confidence.

Past votes panel

Ballots move below the fold after you vote, keeping active proposals front and center.

Deadline ordering

Proposals auto-sort by due date with filters for fund, company, or ballot type.

Ultimus sync

Holdings refresh nightly via Ultimus API plus a "sync now" button for admins.

Broadridge scraper

Automated login + captcha solving pulls the latest ballots without manual work.

Dual login

Direct and beneficial holders share the same screen with password + OTP paths.

Management console

Staff see live tallies, audit logs, and CSV exports in one secure dashboard.

Service monitors

Alerts fire when votes fail, sound files are missing, or APIs throttle.

Tech Stack

Compliance-Friendly By Design

We leaned on typed React, NestJS services, and hardened infrastructure so every ballot is traceable and every integration is observable.

• Ultimus + Broadridge connectors run on schedule with health checks.

• GitHub Actions gate deployments with lint, tests, and accessibility scans.

• Audit logs stream to compliance dashboards for easy reviews.

1

Frontend

React + TypeScript
Voting dashboard + admin console
Vite
Fast builds and hot reloads
Tailwind + shadcn/ui
Accessible components
React Query
Realtime ballot data
2

APIs & Integrations

Node/Nest API
Ultimus + Broadridge bridge
PostgreSQL
Shareholder + vote store
Redis
Job queue + caching
Ultimus + Broadridge
Fund data + ballots
3

Security & Auth

Passport.js
Direct + beneficial login
OTP service
SMS/email verification
RBAC
Investor, admin, compliance roles
Audit logs
Every action tracked
4

Ops

GitHub Actions
CI/CD & linting
Sentry
Error + performance monitoring
Playwright
Cross-browser voting tests
Helm scripts
Repeatable deployments
Timeline

8 Weeks from Audit to Launch

Week 1
Discovery

Interviewed investor relations + ops, mapped Ultimus/Broadridge flows, and audited logins.

Week 2
UX + architecture

Whiteboarded dashboard layout, past-vote logic, and integrations with Ultimus API + scraper.

Week 3-6
Build

Implemented API bridge, React dashboard, and management console. Added sound + ordering tweaks.

Week 7
Compliance

RBAC, audit logs, login revisions, and load tests to ensure Broadridge scripts never block voting.

Week 8
Launch

Trained staff, rolled out to shareholders, and shipped backlog items via ongoing retainer.

Secure voting builds in 4-6 weeks

Need a Shareholder Portal Your Legal Team Loves?

We assemble LATAM UX + engineering pods that integrate fund admins, custodians, and fintech rails so you stay focused on investors.