Version: 2.0 | Status: Business Review | Date: 2026-01-15
1. Overview
1.1 Purpose
Office/Branch Management enables rental companies to operate across multiple physical locations, allowing customers to select convenient pickup/dropoff points while ensuring regulatory compliance and efficient fleet distribution across geographic markets.
1.2 Problem Statement
Rental companies expanding to multiple locations face operational challenges that directly impact revenue and customer satisfaction:
- Lost bookings: Customers abandon reservations when they cannot find nearby pickup locations
- Fleet imbalance: Vehicles accumulate at low-demand locations while high-demand offices have shortages
- Compliance risk: Italian operators face fines for non-compliant CARGOS multi-location reporting
- Customer confusion: Inconsistent contact information and operating hours lead to support requests
- Booking friction: Manual location coordination increases order processing time
1.3 Business Value
| Value Area | Measurable Outcome | Target | Measurement |
|---|
| Revenue Growth | Increase bookings from location-based search | +15% conversion rate | Booking funnel analytics |
| Operational Efficiency | Reduce fleet rebalancing trips | -25% inter-office transfers | Vehicle movement logs |
| Customer Experience | Decrease location-related support requests | -40% inquiries | Help desk categorization |
| Compliance | Eliminate CARGOS reporting penalties | Zero fines | Regulatory compliance audits |
| Processing Speed | Reduce order processing time | -30% average time | Workflow time tracking |
1.4 Target Users
| User | Business Context | Primary Need |
|---|
| Admins | Business owners managing expansion | Configure offices to maximize geographic coverage |
| Operators | Front-line staff serving customers | Access accurate location information quickly |
| Customers | Renters selecting pickup points | Find convenient, clearly-described locations |
| Partners | Marketplace integrators | Access available offices for booking placement |
2. Success Metrics
| Metric | Definition | Baseline | Target | Measurement Method | Timeframe |
|---|
| Booking Conversion | Orders completed ÷ Location searches | Current analytics | +15% | Widget booking funnel | 6 months |
| Location Support Tickets | Tickets mentioning office/location issues | 30-day average | -40% | Help desk categorization | 3 months |
| Fleet Balance Index | Vehicles at optimal location ÷ Total vehicles | Current distribution | +20 pp | Daily inventory snapshots | 6 months |
| CARGOS Compliance Rate | Successful submissions ÷ Required submissions | 100% baseline | 100% maintained | CARGOS response logs | Ongoing |
| Office Data Accuracy | Offices with complete, verified data | Audit current state | 95%+ | Quarterly data audit | 3 months |
| Order Processing Time | Time from booking start to confirmation | Time study baseline | -30% | Workflow analytics | 6 months |
3. User Stories
Admin (P0 - Critical)
- US-001: As an Admin, I want to create offices with address, contact info, and working hours so customers can find and contact each location
- US-002: As an Admin, I want to assign vehicles to specific offices so fleet distribution is tracked and searchable
- US-003: As an Admin, I want to designate one office as “official” so contracts display the correct legal address
- US-004: As an Admin, I want to configure CARGOS data per office (Italy) so each location submits compliant reports
Admin (P1 - Important)
- US-005: As an Admin, I want to set working hours with multiple daily intervals so customers know exact availability
- US-006: As an Admin, I want to upload office logos so each location has consistent branding
- US-007: As an Admin, I want to edit and delete offices so the system reflects current operations
Operator (P1 - Important)
- US-008: As an Operator, I want to view all offices with contact details and vehicle counts so I can assist customers accurately
- US-009: As an Operator, I want to see working hours for each office so I can provide correct availability information
Customer (P0 - Critical)
- US-010: As a Customer, I want to select a pickup location from available offices so I can get my rental conveniently
- US-011: As a Customer, I want to see only vehicles available at my chosen location so search results are relevant
Integration (P0 - Critical)
- US-012: As a booking widget, I need to filter vehicles by assigned offices so location-based booking works correctly
- US-013: As the CARGOS system, I need office agency data to generate compliant Italian police reports
4. Functional Requirements
4.1 Office Management
| ID | Requirement | Business Rationale |
|---|
| FR-001 | Create offices with name, address, contact details, and optional logo | Enable geographic expansion and customer communication |
| FR-002 | Edit all office information except system identifiers | Keep location data accurate as operations change |
| FR-003 | Delete offices with automatic cleanup of vehicle and integration references | Maintain data integrity when locations close |
| FR-004 | Prevent deletion of the only/main office | Ensure tenants always have at least one operational location |
| FR-005 | Designate exactly one office as “official” per company | Provide consistent legal address for contracts |
| FR-006 | Automatically unmark previous official office when new one is designated | Enforce single official office rule |
4.2 Working Hours
| ID | Requirement | Business Rationale |
|---|
| FR-007 | Configure working/non-working status for each day of the week | Customers need accurate availability information |
| FR-008 | Support multiple time intervals per day (e.g., morning and afternoon shifts) | Accommodate lunch breaks and split shifts |
| FR-009 | Display current open/closed status based on office hours | Help customers plan pickup timing |
4.3 Vehicle-Office Assignment
| ID | Requirement | Business Rationale |
|---|
| FR-010 | Assign vehicles to one or multiple offices | Enable fleet tracking by location |
| FR-011 | Filter vehicle search results by assigned office in booking widgets | Ensure customers see only relevant inventory |
| FR-012 | Display vehicle count per office | Help admins understand fleet distribution |
| FR-013 | Remove office references from vehicles when office is deleted | Maintain data integrity |
4.4 Address & Location
| ID | Requirement | Business Rationale |
|---|
| FR-014 | Capture structured address with autocomplete assistance | Reduce data entry errors and improve accuracy |
| FR-015 | Store GPS coordinates for each office | Enable distance calculations and mapping |
| FR-016 | Generate human-readable formatted address for display | Ensure consistent address presentation |
4.5 CARGOS Integration (Italy)
| ID | Requirement | Business Rationale |
|---|
| FR-017 | Store CARGOS agency fields per office for Italian tenants | Meet Italian police reporting requirements |
| FR-018 | Validate CARGOS data completeness when integration is enabled | Prevent submission failures |
| FR-019 | Display CARGOS configuration only when integration is active | Reduce UI complexity for non-Italian users |
4.6 Multi-Tenant Isolation
| ID | Requirement | Business Rationale |
|---|
| FR-020 | Restrict office access to the owning tenant only | Protect business data between companies |
| FR-021 | Validate tenant context on all office operations | Prevent unauthorized cross-tenant access |
5. Acceptance Criteria
AC-001: Office Creation
Given an Admin is authenticated
When they create an office with name, address, and contact details
Then the office appears in the office list and is available for vehicle assignment
Success Measure: Office creation completes within 3 seconds
AC-002: Official Office Designation
Given Office A is the official office
When Admin designates Office B as official
Then Office A is automatically unmarked and Office B becomes the only official office
Success Measure: Single official office maintained at all times
AC-003: Office Deletion with Cleanup
Given an office is assigned to multiple vehicles
When Admin deletes the office
Then the office reference is removed from all affected vehicles and the office is deleted
Success Measure: No orphaned office references remain
AC-004: Working Hours Display
Given an office has working hours configured
When a customer views the office in the booking widget
Then they see the current open/closed status and full schedule
Success Measure: Working hours displayed correctly in user’s timezone
AC-005: Location-Based Vehicle Search
Given vehicles are assigned to specific offices
When a customer searches for vehicles at a particular office
Then only vehicles assigned to that office appear in results
Success Measure: Zero irrelevant vehicles shown in location-filtered searches
AC-006: CARGOS Compliance (Italy)
Given an Italian tenant with CARGOS enabled
When Admin configures office with required agency fields
Then the office data is available for contract submissions to Italian police
Success Measure: 100% CARGOS submission acceptance rate
AC-007: Main Office Protection
Given a tenant has only one office
When Admin attempts to delete it
Then the system prevents deletion with a clear explanation
Success Measure: Zero accidental main office deletions
6. Business Rules
| ID | Rule | Business Rationale |
|---|
| BR-001 | Only one office per tenant can be “official” | Contracts require a single legal address |
| BR-002 | The first/only office cannot be deleted | Tenants must have at least one location |
| BR-003 | All offices are strictly tenant-isolated | Protect competitive business data |
| BR-004 | Vehicles can be assigned to zero, one, or multiple offices | Support flexible fleet deployment |
| BR-005 | Working hours configuration is optional | Not all businesses need detailed schedules |
| BR-006 | CARGOS fields required only when integration is enabled | Reduce burden for non-Italian operators |
| BR-007 | Valid address is mandatory for office creation | Location-based features require addresses |
| BR-008 | Office deletion cascades reference cleanup, not entity deletion | Maintain vehicle and integration data integrity |
7. Dependencies
Upstream Dependencies
| System | Dependency | Impact if Unavailable |
|---|
| Authentication | Tenant context from JWT | Cannot scope offices to correct company |
| Company Management | Existing tenant/company record | Cannot create offices |
| Google Maps API | Address autocomplete and geocoding | Manual address entry required |
Downstream Dependencies
| System | Dependency | Impact if Unavailable |
|---|
| Vehicle Management | Office references in vehicle records | Cannot filter by location |
| Booking Widget | Office list for location selection | Cannot offer location-based search |
| CARGOS Integration | Office agency data for reports | Italian compliance failures |
| Contracts | Official office for legal address | Missing address on documents |
8. Non-Functional Requirements
| Metric | Target | Measurement |
|---|
| Office list load time | <500ms for 100 offices | API response monitoring |
| Office creation time | <3 seconds including image upload | End-to-end transaction timing |
| Office deletion with cleanup | <5 seconds for 1000 affected vehicles | Transaction completion logging |
Security
- All operations require authenticated user with valid tenant
- Office data isolated by tenant at database level
- CARGOS credentials encrypted at rest
Usability
- Address autocomplete activates after 3 characters
- Working hours configurable via visual calendar interface
- Error messages displayed in user’s preferred language
Localization
- Supports 11 languages: EN, LT, RU, PL, IT, ES, FR, DE, CS, NL, PT, ZH
- Working hours display adapts to locale time format
- Address formatting respects country conventions
9. Error Scenarios
| Scenario | User Message | Resolution |
|---|
| Delete main office attempt | ”Cannot delete the main office. Create another office first.” | Guide user to create replacement |
| Duplicate office name | ”An office with this name already exists.” | Prompt for unique name |
| Incomplete CARGOS data | ”CARGOS requires all agency fields. Please complete the form.” | Highlight missing fields |
| Invalid address | ”Please provide a valid complete address.” | Show address requirements |
10. Future Considerations
The following capabilities are identified for future evaluation based on customer demand and business value:
- Office-level analytics (bookings, revenue, utilization per location)
- Holiday and closure calendar management
- Geographic delivery zones per office
- Staff assignment to offices
- Cross-tenant office sharing for marketplace expansion
- Distance-based pricing calculations
- Office categorization (airport, downtown, franchise)
11. Glossary
| Term | Definition |
|---|
| Office | A physical location for vehicle pickup, dropoff, or service |
| Official Office | The primary office shown on contracts and legal documents |
| Working Hours | Operational hours when an office serves customers |
| CARGOS | Italian police system for rental contract reporting |
| AGENZIA | Italian term for agency/office in CARGOS reporting |
| Tenant | A rental company operating on the platform |
| Interval | A time range (from-to) within working hours |
12. Revision History
| Version | Date | Author | Changes |
|---|
| 1.0 | 2026-01-09 | System | Initial PRD from codebase analysis |
| 2.0 | 2026-01-15 | Product Team | Converted to business-focused format: added success metrics, consolidated requirements, strengthened acceptance criteria |