mobile, Android, Laravel, Vue.js, Blade, Java, vue, govtech
YTAX: A Tax-Ticketing System for Markets and Municipalities
## Outcome
Built and shipped YTAX, a tax-ticketing system for municipal and market-tax collection, used by field collectors and controllers across regions, towns, and places.
## Context
YTAX is live at yelenafrique.org. Over roughly four years, I led the web and mobile implementation from data model to field experience, working with YTAX stakeholders who supplied the collection-domain requirements, using Laravel, Vue.js, Blade, and Java for Android.
## Problem
Collectors needed to register places and issue tickets in the field, while controllers needed dependable visibility into activity and reference data across the collection system.
## Constraints
Tax-ticket records must be trustworthy and auditable. Field work cannot depend on a desk-bound workflow, and public financial, adoption, and operational metrics are not available.
## Decisions and trade-offs
The domain uses a strict role model: controllers manage reference data, while collectors register places and issue tickets. Tickets are immutable once created and printed; records are soft-deleted rather than removed. This append-only approach favors auditability over post-issuance editing.
## Implementation
I built a Laravel back end with Vue and Blade web interfaces and a Java Android app for field collectors, guided by the operating needs of YTAX's collection stakeholders. The Android app issues tickets against the same API as the web dashboard, allowing controllers to see field activity without a separate reconciliation path.
## Results
YTAX was shipped and is live at yelenafrique.org. The system provides its collection stakeholders with one shared record of municipal and market-tax ticket activity, with immutable issued tickets and a complete audit trail by design.
## Takeaways
For collection systems, protecting the integrity of an issued record is more valuable than making it convenient to edit; role boundaries and a shared API keep field activity accountable.