Pro-Forma AYSI
Fiscal consulting platform that automates the generation of tax forms (VAT, IT, IUE) and monthly reports for taxpayers.
Pure software architecture
Robust backend · No visual UI
Project Overview
Fiscal consulting platform in production. Problem: automating Bolivian tax form generation. Solution: a validated rules engine, 85% test coverage on critical logic. Stack: Spring Boot, Java, MySQL, JWT. Result: 200-VAT, 400-IT, and 500-IUE forms generated automatically from monthly pro-formas.
Core Modules
User Management & Roles
JWT + Spring Security authentication. Differentiated roles: Admin (firm owner) can create/edit/delete workers and taxpayers, and assign taxpayers to workers. Workers only manage pro-formas and reports for their assigned clients.
Taxpayer Module
CRUD for taxpayers with filters by name, ID, NIT, type (Sole Proprietor, Professional, Transporter), and closing month (March, June, September, December). Pagination based on the last digit of the NIT. Stores key fiscal information: NIT, ID number, issued location, city, etc.
Monthly Pro-Formas
Records income, expenses, fuel costs, and fees per taxpayer per month. Validates that only one pro-forma can be created per month per client (quarterly closing windows). Automatically generates the appropriate tax forms based on taxpayer type when the pro-forma is saved.
Automatic Tax Form Generation
Rules engine that, given the taxpayer type, generates: Form 200-VAT (always), Form 400-IT (always), Form 500-IUE (Sole Proprietor), Form 610-VAT (Professional). Automatically calculates taxes, outstanding balances, tax credits, and debts using the official formulas from Bolivian tax regulations.
Consolidated Reports & Digital Signature
Workers can generate accumulated reports from January through any selected month (e.g. January to October). The report includes all forms and pro-formas for the period. It is printed, physically signed by the taxpayer, and the worker uploads the signed PDF to the system as a legal record.
Technical Stack & Testing
Backend built with Spring Boot 3.1, Spring Data JPA, MySQL, and JWT (auth0). Service layer with validations, global exception handling, and DTOs with MapStruct. JUnit + Mockito unit test suite with 85% coverage on tax calculation logic. API documented with SpringDoc OpenAPI (Swagger).