---
title: "User Manual: Vehicle Fine Record Management"
space: "Csf_tz_enhancements"
url: "https://support.aakvatech.com/vehicle_fine_record"
updated: "2026-07-22"
---

## 1. **Overview**  
This module enables automated retrieval, recording, and management of traffic fines for vehicles using data from the Tanzania Police Force's TMS system.

---

## 2. **Key Features**  
- Auto-fetch of fines using number plate or reference.
- Scheduled fine checks every 2 hours.
- Enqueues background tasks for efficient processing.
- Automatic fine status updates (e.g., marking as PAID).
- Centralized log for all fine records.

---

## 3. **Pre-Requisites**  
- Frappe/ERPNext environment.
- Internet access to https://tms.tpf.go.tz.
- Vehicle records with valid `number_plate`.
- User with “System Manager” role for full access.

---

## 4. **Step-by-Step Usage**  
### A. Manual Fine Check:
1. Go to **Vehicle Fine Record**.
2. Click **New**, input `reference` or `vehicle`.
3. Save to auto-validate and fetch details.

### B. Automated Fine Check:
- Runs every 2 hours (scheduled).
- Background tasks fetch and update fines.
- View logs via **Vehicle Fine Record** list.

---

## 5. **Script Customizations**  
- **Hook (Scheduler)**:  
  `"0 */2 * * *"` → Runs every 2 hours.
- **Main Function**:  
  `check_fine_all_vehicles(batch_size=20)`
- **Fetch Logic**:  
  Uses CSRF token from TMS portal and POSTs vehicle/reference for fine data.
- **Error Logging**:  
  Handled via `frappe.log_error()` and `print_out()`.

---

## 6. **Troubleshooting (Common Errors and Resolutions)**  
| Error                                 | Cause                               | Resolution                            |
|--------------------------------------|-------------------------------------|--------------------------------------|
| “Please provide a valid number plate”| Invalid plate input                 | Ensure input has 7+ characters.      |
| “CSRF token not found”               | TMS page structure changed          | Update token parsing logic.          |
| “Timeout”                            | Network issue / TMS downtime        | Retry later or increase timeout.     |
| Fine not updating                    | Reference mismatch                  | Verify `reference` or `number_plate`.|

---

## 7. **User Roles and Permissions**  
| Role            | Permissions                                                             |
|-----------------|-------------------------------------------------------------------------|
| System Manager  | Full access: Create, Read, Write, Delete, Submit, Export, Share, Email. |

---

## 8. **Key Notes**  
- Fines are automatically updated and created based on TMS data.
- System sleeps between batches to avoid TMS server overload (optional).
- Only vehicles with valid plates are processed.
- Ensure proper network connectivity for seamless operation.
