How beveren-software-inc/field_service_management works
Beveren FSM is an ERPNext field-service application. Its main lifecycle runs from customer request through optional quotation, service order, appointment and on-site work to invoicing; scheduling, technician dispatch, parts tracking, and reporting support that lifecycle. The React schedule SPA reads service-order tracking data through the Frappe API, while ERPNext forms and documents support operational workflows. The README documents several capabilities whose implementation is not sampled, so those are represented at their existing enclosing directories; wiring is shown only where source or documentation supports it.
Main entry points: service_order.py Service Order · service_appointment/service_appointment.py Service Appointment · service_request.py Service Request · api/service_appointment.py Appointment API
Components 20
Service Operations
- Service Request
beveren_fsm/field_service_management/doctype/service_request/service_request.py - Request API
beveren_fsm/field_service_management/api/service_request.py - Service Quotation
beveren_fsm/field_service_management/doctype/service_quotation/service_quotation.py - Service Order
beveren_fsm/field_service_management/doctype/service_order/service_order.py - Service Reports
beveren_fsm/field_service_management/doctype/service_report
Scheduling Dispatch
- Service Appointment
beveren_fsm/field_service_management/doctype/service_appointment/service_appointment.py - Appointment API
beveren_fsm/field_service_management/api/service_appointment.py - Service Area
beveren_fsm/field_service_management/doctype/service_area/service_area.py - Geocoding API
beveren_fsm/field_service_management/api/geocoding.py - Technician Records
beveren_fsm/field_service_management/doctype/service_technician
Parts Tracking
- Parts Movement
beveren_fsm/field_service_management/doctype/product_movement/product_movement.py - Repair Workflow
beveren_fsm/field_service_management/doctype/repair_order
Web Interface
- Dispatch Schedule
schedule/src/pages/schedule/schedule.tsx - Schedule Views
schedule/src/components/schedule - Order Tracking
schedule/src/components/service-request/service-requests-view.tsx - Tracking Fetch
schedule/src/hooks/use-service-requests.ts
ERPNext Integration
- ERPNext Sales
- Sales Invoice
Other components
- Service Operator
- Field Technician
Connections 22
- Service Operator → Service Request: logs request
- Service Request → Service Quotation: creates optional quote
- Service Request → Service Order: converts to order
- Service Quotation → Service Order: maps to order
- Service Order → Service Appointment: creates appointments
- Service Operator → Dispatch Schedule: assigns and dispatches
- Dispatch Schedule → Schedule Views: selects views
- Dispatch Schedule → Appointment API: requests appointments
- Field Technician → Service Appointment: updates work
- Appointment API → Service Order: reads linked order
- Appointment API → Service Area: reads location
- Service Area → Geocoding API: searches places
- Service Appointment → Technician Records: assigns technicians
- Service Appointment → Parts Movement: records movements
- Service Order → Parts Movement: tracks parts
- Order Tracking → Tracking Fetch: fetches tracking
- Tracking Fetch → Request API: requests orders
- Request API → Service Order: reads related orders
- Service Order → Sales Invoice: generates invoice
- Sales Invoice → ERPNext Sales: creates sales document
- Service Order → Repair Workflow: supports repairs
- Service Order → Service Reports: reports service work