Version: 2.0 | Status: Ready for Review
Last Updated: 2026-01-15 | Previous Version: 1.0 (2026-01-09)
1. Overview
1.1 Purpose
Enable rental companies to track, document, and manage traffic violations and fines incurred during vehicle rentals, ensuring complete revenue recovery and accurate financial accountability.
1.2 Problem Statement
Rental companies lose significant revenue and face operational challenges with traffic violation management:
- Revenue leakage: Manual tracking in spreadsheets results in 10-20% of fines going uncollected
- Attribution gaps: Inability to link fines to specific drivers during overlapping rental periods
- Accounting errors: Order expenses don’t reflect fine amounts, causing financial reconciliation issues
- Dispute vulnerability: Lack of photo documentation makes contesting invalid fine claims difficult
- Audit risk: Missing paper trail for fine notifications exposes companies to compliance issues
1.3 Business Value
| Value Claim | Measurable Outcome | Baseline | Target | Timeframe |
|---|
| Revenue Recovery | Percentage of fines successfully charged to customers | 80-85% (manual tracking) | 98%+ collection rate | 6 months |
| Accountability | Time to attribute fine to responsible driver | 2-4 hours manual lookup | <5 minutes | 3 months |
| Financial Accuracy | Order expense reconciliation errors | 5-8 discrepancies/month | Zero discrepancies | 3 months |
| Dispute Resolution | Successful dispute defense rate | 60% (limited documentation) | 90%+ with photo evidence | 6 months |
| Administrative Efficiency | Hours spent on fine management per month | 15-20 hours | 3-5 hours | 6 months |
1.4 Target Users
| Role | Primary Use | Business Impact |
|---|
| Admin | Full fine management, financial oversight, cross-company reporting | Revenue assurance, compliance |
| Operator | Day-to-day fine recording, status updates, documentation | Operational efficiency |
| Partner | View fines on partner-owned vehicles | Liability tracking, commission accuracy |
| Client/Driver (future) | View assigned fines, submit dispute evidence | Self-service, dispute resolution |
1.5 Scope
In Scope:
- Fine creation, modification, and deletion with comprehensive violation details
- Automatic order expense synchronization
- Photo documentation management
- Payment status tracking
- PDF fine report generation
- Multi-language support
Out of Scope:
- Automated fine import from traffic authorities
- Automated payment processing
- Dispute workflow management
- Government database integration
- Client self-service payment portal
2. Success Metrics
| Metric | Definition | Baseline | Target | Measurement Method |
|---|
| Fine Collection Rate | Fines charged to customers / Total fines received | 80-85% | 98%+ | Monthly fine audit vs. order charges |
| Attribution Time | Time from fine receipt to driver assignment | 2-4 hours | <5 minutes | Time stamp analysis |
| Expense Accuracy | Orders with correct fine amounts in expenses | ~92% | 100% | Automated expense reconciliation |
| Documentation Rate | Fines with complete photo evidence | 40% | 95%+ | Fine record audit |
| Processing Time | Time to fully process a new fine | 30-45 minutes | <10 minutes | Operator time tracking |
| Dispute Success Rate | Disputed fines successfully defended | 60% | 90%+ | Dispute outcome tracking |
| Admin Hours Saved | Monthly hours spent on fine management | 15-20 hours | 3-5 hours | Time study comparison |
3. User Stories
Admin Stories
| Priority | Story | Acceptance Criteria |
|---|
| P0 | As an admin, I can create and manage fines for any order so that violations discovered after rental completion are properly documented | Fine created with all required fields; order expenses updated automatically |
| P0 | As an admin, I can view all fines across all companies for financial reconciliation | Cross-company fine listing with filtering; total amounts visible |
| P1 | As an admin, I can delete erroneous fines with appropriate audit logging | Deletion logged with reason; expenses reversed |
Operator Stories
| Priority | Story | Acceptance Criteria |
|---|
| P0 | As an operator, I can create a fine with violation details and assign to responsible driver | Fine saved; driver linked; order expenses increase by fine amount |
| P0 | As an operator, I can upload violation notice photos for documentation | Multiple photos attached; viewable in fine detail |
| P0 | As an operator, I can update payment status when customer settles | Status changes to paid; timestamp recorded |
| P1 | As an operator, I can view all fines during checkout to include in final charges | Fine list visible; total amount displayed |
| P1 | As an operator, I can search fines by number, code, or driver | Results returned in <2 seconds; accurate matches |
| P2 | As an operator, I can generate PDF fine reports for customer notification | PDF includes all details and photos |
Partner Stories
| Priority | Story | Acceptance Criteria |
|---|
| P1 | As a partner, I can view fines on my vehicles to track violation patterns | Fines filtered by partner vehicles; amounts visible |
4. Functional Requirements
4.1 Fine Management
| ID | Requirement | Business Outcome |
|---|
| FR-01 | Fines must capture: order, driver, amount, dates, fine number, authority, city, violation code, description | Complete violation documentation for accountability |
| FR-02 | Creating a fine automatically increases order expenses by the fine amount | Accurate financial tracking without manual updates |
| FR-03 | Modifying fine amount recalculates order expenses (removes old, adds new) | Expense accuracy maintained through changes |
| FR-04 | Payment status tracked as paid/unpaid with timestamp | Clear visibility into collection status |
| FR-05 | Fine creation generates unique identifier and records tenant, timestamps | Audit trail and multi-tenant isolation |
4.2 Documentation
| ID | Requirement | Business Outcome |
|---|
| FR-06 | Multiple photos can be uploaded per fine (JPG, PNG, PDF) | Evidence preservation for dispute defense |
| FR-07 | Photos stored with metadata (filename, URL, type) | Organized retrieval and display |
| FR-08 | PDF fine reports generated with violation details and photos | Customer communication and record keeping |
4.3 Order Integration
| ID | Requirement | Business Outcome |
|---|
| FR-09 | All fines displayed in order detail view with total amount | Operators see complete charges at checkout |
| FR-10 | Fine creation pre-populates order context when initiated from order | Faster data entry, fewer errors |
| FR-11 | Orders with unpaid fines cannot be closed/archived | Prevents revenue leakage |
4.4 Search & Reporting
| ID | Requirement | Business Outcome |
|---|
| FR-12 | Search by fine number, violation code, driver, date range, payment status | Quick lookup for customer inquiries |
| FR-13 | Filter results show fine count and total amount | Financial overview at a glance |
| FR-14 | Driver fine history viewable across all orders | Pattern identification, risk assessment |
4.5 Data Integrity
| ID | Requirement | Business Outcome |
|---|
| FR-15 | Fine creation and expense update occur atomically | No partial operations causing discrepancies |
| FR-16 | All operations scoped to tenant | Data isolation between rental companies |
| FR-17 | Driver assignment validated against order | Prevents attribution errors |
5. Acceptance Criteria
AC-01: Fine Creation with Expense Update
Given an operator viewing an order
When they create a fine for €150 assigned to a driver
Then fine is saved with all details
And order expenses increase by €150
And fine appears in order’s fine list
AC-02: Payment Status Update
Given an unpaid fine exists
When operator marks as paid
Then status updates to paid
And timestamp recorded
And order expenses unchanged (already included)
AC-03: Amount Modification
Given a €100 fine on an order with €500 expenses
When operator changes amount to €150
Then order expenses become €550
And all reports reflect updated total
AC-04: Photo Documentation
Given a fine exists
When operator uploads 3 violation photos
Then all photos stored and viewable
And included in PDF report generation
AC-05: Multi-Tenant Isolation
Given Company A has fines
When Company B user attempts access
Then access denied
And no Company A data visible
Given database contains 10,000+ fines
When operator searches by fine number
Then results return in <2 seconds
And accurate matches displayed
6. Business Rules
| Rule | Description | Rationale |
|---|
| BR-01 | Every fine must be linked to one order (immutable) | Prevents expense calculation errors |
| BR-02 | Every fine must be assigned to a driver | Establishes accountability |
| BR-03 | Creating fine increases order expenses atomically | Financial accuracy |
| BR-04 | Deleting fine decreases order expenses atomically | Financial accuracy |
| BR-05 | Payment status change does not affect expenses | Amount already captured |
| BR-06 | All operations filtered by tenant | Data isolation |
| BR-07 | Infraction date = violation occurrence; Notification date = company receipt | Clear timeline for compliance |
| BR-08 | Photo limit: 10 per fine | Storage management |
| BR-09 | Default language inherited from order | Consistent customer communication |
7. Dependencies
Upstream Dependencies
| System | Dependency | Impact if Unavailable |
|---|
| Order System | Order existence validation, expense field | Cannot create fines |
| Client Management | Driver records | Cannot attribute fines |
| Multi-Tenant | Tenant isolation | Security risk |
| File Storage | Photo uploads | Documentation incomplete |
Downstream Dependencies
| System | Dependency | Impact |
|---|
| Payment System | Fine amounts in order totals | Affects payment collection |
| Analytics | Fine data for reporting | Reporting gaps |
| Communications (future) | Fine notification emails | Manual customer contact required |
8. Non-Functional Requirements
| Category | Requirement | Target |
|---|
| Performance | Fine search response time | <2 seconds |
| Performance | Fine creation with expense update | <3 seconds |
| Availability | System uptime | 99.5% |
| Scalability | Concurrent fine operations | 50+ users |
| Security | Tenant data isolation | 100% enforced |
| Data Integrity | Atomic transactions | Zero partial operations |
9. Glossary
| Term | Definition |
|---|
| Fine | Monetary penalty from traffic authorities for vehicle violations |
| Infraction Date | Date/time when violation occurred |
| Notification Date | Date when rental company received the fine notice |
| Fine Number | Unique identifier from issuing authority |
| Payment Status | Whether fine has been collected from customer (Paid/Unpaid) |
| Order Expenses | Total additional charges on an order including fines, damages, fuel |
Document History
| Version | Date | Changes | Author |
|---|
| 2.0 | 2026-01-15 | Business-focused conversion: measurable outcomes, success metrics table, consolidated requirements, prioritized user stories | PRD Conversion |
| 1.0 | 2026-01-09 | Initial technical PRD | Codebase Analysis |
Stakeholder Approval
| Role | Name | Date | Status |
|---|
| Product Owner | | | Pending |
| Engineering Lead | | | Pending |
| Operations Manager | | | Pending |
| Finance | | | Pending |