Portal Transforma ERP
Enrollment, sales and management reports for the Transforma Educação holding in one place
Internal portal that brings together reports that used to be spread across spreadsheets, BI and ActiveSoft: enrollments, material sales, finance and people management, with access by department and by unit.
The problem
The holding's enrollment and sales reports were spread across Google Sheets, the BI tool, ActiveSoft and the publisher's systems. Comparing cycles, units and targets meant combining data from several sources by hand.
The product
- Sales dashboard with reports for the summary, enrollment targets, comparisons of enrollment, re-enrollment and new students, enrollments by class, revenue and material uptake.
- Finance with an income statement by unit, EBITDA and cost-to-revenue KPIs.
- Areas for enrollment, customer service, people management (performance reviews and employee records), academics and legal.
- Access by department and by unit: each person sees only the areas they have permission for and the data of their own units.
- Excel export for every report.
Architecture and integrations
The sales dashboard is built with React 19 and TypeScript, using TanStack and shadcn/ui, and consumes a TypeScript API on Express 5, organized into controllers, services and repositories.
- Google Sheets as the main source: exports from ActiveSoft, ActiveCampaign and other systems arrive in spreadsheets, which the API reads with a Redis cache that only expires when the sheet changes.
- Ensina Mais publisher API: material orders feed uptake and material revenue, and the enrollment date comes from Nexus, the publisher's back-office, with the spreadsheet as a fallback if it fails.
- The finance MySQL database for the income statement and KPIs.
- Support tickets opened in Yungas straight from the portal.
Problems it solves
Reports
Scattered reports
Problem
Enrollments and sales were split across spreadsheets, BI and ActiveSoft.
How the system solves it
One portal brings every source together, with the same filters in each report.
Access and operations
Each area with its own view
Problem
Directors, managers and teams need different views of the same data.
How the system solves it
Access by department and by unit, set by role and permission.