All applications583

Find your application

583 applications

Open full catalog

Browse applications by category or open the full catalog.

  1. Field Service Management
  2. Data model
Reference

The tables behind Field Service Management

Field Service Management ships with 35 tables, grouped here by the feature that uses them. Every record your team works with lives in one of them, and you can add fields and tables in Proto.

Tables
35
Features
6, plus shared settings
Change it
Add fields and tables in Proto

How the model is organised

People and capacity

Users, Technicians, technician skills, Crews, crew members, Schedules, schedule slots, schedule exceptions, technician availability days. Map real principals and participating technicians to usable working time.

Customers and agreements

Customers, service locations, service categories, service contracts, service contract items, credit policies. Keep customer locations, service obligations and versioned credit terms connected.

Visits and mobile work

Service calls, service call activities, service call labor, service call notes, service call photos, Routes, route stops, mobile sync queue. Retain accepted appointments, field evidence and original synchronization identities.

Parts and inventory

Parts, truck stock, warehouse stock, service call parts, stock movements, parts replenishments. Trace each draw, replenishment and compensating return to the exact stock source.

Commercial evidence

Estimates, Signatures, Invoices, invoice lines, Payments, Surveys. Connect exact customer-authorized scope to invoices, confirmed collection and actual feedback.

Every table, by feature

Dispatch and scheduling

9 tablesAbout this feature
  • Technicians

    The field-tech master. Every dispatched-and-on-site human is one row. Joined to the HRIS Employee record by EmployeeRef for payroll and benefits, but lifecycle here is operational: Active means schedulable, on leave drops out of the schedule-optimization pool, Inactive is gone.

    Linked to Users
  • Technician skills

    Per-Tech skills and certifications with expiry. The schedule-optimization workflow filters the eligible-Tech pool by matching ServiceCategories.RequiredSkills against active (not expired) entries here.

    Linked to Technicians
  • Crews

    Multi-tech crew for jobs that need more than one body — install days, rooftop unit swaps, big plumbing repipes. A Crew has a Lead (senior Tech) who owns the on-site call.

    Linked to Technicians
  • Crew members

    The roster of techs in a crew. A Tech can be in more than one crew (they can run their own calls solo most days and roll with the install crew on Fridays).

    Linked to Crews, Technicians
  • Service calls

    One on-site visit with a committed assignment, customer window and completion receipt. Created → Scheduled → Dispatched → en route → on site → Completed is the successful path. Cancelled and Rescheduled are controlled exception branches before completion, not transitions after a completed signed visit.

    Linked to Customers, Service locations, Service categories, Service contracts (set when Source=ServiceContract)
  • Schedules

    Daily / weekly schedule view header. One per Day per Technician (or per Crew). The Dispatcher’s working canvas.

    Linked to Technicians (null if Crew schedule), Crews (null if individual schedule)
  • Schedule slots

    Per-Technician time-slot configuration — when each tech is schedulable, in what windows, and how many calls per window. Drives schedule-optimization eligibility and route capacity.

    Linked to Technicians
  • Schedule exceptions

    Accepted technician unavailability for leave, training and nonworking time. Operations Manager records or cancels these operational intervals; an HR connector may import them only with a scoped service identity and source receipt. This is a scheduling mirror, not HR leave approval.

    Linked to Technicians, Users
  • Technician availability days

    Immutable available-time basis for each technician and local calendar day, including zero-call and zero-capacity days. The server freezes one row after day close from the accepted scheduling basis; later slot, leave or employment changes cannot rewrite the historical denominator.

    Linked to Technicians, Users

Routes and mobile work

7 tablesAbout this feature
  • Routes

    Per-Tech daily route header. Generated by route-planning nightly; revised throughout the day on cancellations and reschedules.

    Linked to Technicians
  • Route stops

    The ordered stops on a day’s route. One per service call in the day’s plan, plus optional warehouse-stop entries for parts pickup.

    Linked to Routes, Service calls (set when StopType=ServiceCall)
  • Service calls

    One on-site visit with a committed assignment, customer window and completion receipt. Created → Scheduled → Dispatched → en route → on site → Completed is the successful path. Cancelled and Rescheduled are controlled exception branches before completion, not transitions after a completed signed visit.

    Linked to Customers, Service locations, Service categories, Service contracts (set when Source=ServiceContract)
  • Service call labor

    Labor entries — one per Tech per session on the call. The check-in / check-out workflow opens and closes a row automatically; manual entries are allowed for crew helpers.

    Linked to Service calls, Technicians, Estimates
  • Service call notes

    Free-form notes — Tech observations, dispatcher dispatch instructions, manager call-out. Visibility flag controls customer-receipt visibility.

    Linked to Service calls, Users
  • Service call photos

    Before / during / after photos — the dispute-killer. Required by service category configuration on most repair categories.

    Linked to Service calls, Technicians
  • Mobile sync queue

    Pending mobile commands captured while disconnected. Notes, labor, photos and signature captures wait for authenticated server validation and revision checks. Payments remain unconfirmed requests, and server completion is not claimed until all required checks succeed.

    Linked to Technicians, Service calls

Parts and truck stock

6 tablesAbout this feature
  • Parts

    The parts-and-materials catalog carries current approved warehouse cost and customer price. Changes retain an audit record; historical service call parts and billing revisions preserve the exact accepted price snapshot.

  • Truck stock

    Per-Technician parts inventory on the truck. The most-frequently written table in the app — every service call parts row triggers a decrement here.

    Linked to Technicians, Parts
  • Warehouse stock

    Central warehouse parts inventory. The source for replenishment runs out to truck. Read-only mirror if a separate scm-inventory app owns the master; local table here for FSM-only deployments.

    Linked to Parts
  • Service call parts

    Posted parts consumed on an assigned call, with immutable cost/price snapshots and an atomic stock movements posting. A draft mobile event is not a posted consumption record. Linked reversals compensate stock and trigger billing reconciliation.

    Linked to Service calls, Parts, Truck stock (the row this drew from), Estimates
  • Stock movements

    Immutable inventory postings for receipts, truck consumption, replenishment and compensating reversals. Balance projections and a posted movement commit atomically in local mode. Reversed originals remain in the signed ledger sum; the linked compensating row supplies the opposite effect.

    Linked to Parts, Warehouse stock, Truck stock, Service call parts
  • Parts replenishments

    Inventory requests prepared by the Inventory Clerk and independently approved by Operations Manager. Warehouse-to-truck moves progress through Approved, Picked and Loaded; procurement requests remain Sent until acknowledged. Posted stock is corrected by linked compensating movements.

    Linked to Parts, Technicians (set on WarehouseToTruck), Users

Estimates and signatures

6 tablesAbout this feature
  • Estimates

    Pre-work quote. Required when a Tech finds work beyond the original call’s scope. Customer signs Estimate before any extra labor / parts hits the call.

    Linked to Service calls, Customers, Signatures (with SignedDocumentType=EstimateApproval), Users
  • Signatures

    Immutable customer signature receipts bound to an exact displayed document, scope revision and authorized signer. Estimate approval and completion acknowledgment have separate purposes and cannot substitute for each other.

    Linked to Service calls, Estimates, Users
  • Service calls

    One on-site visit with a committed assignment, customer window and completion receipt. Created → Scheduled → Dispatched → en route → on site → Completed is the successful path. Cancelled and Rescheduled are controlled exception branches before completion, not transitions after a completed signed visit.

    Linked to Customers, Service locations, Service categories, Service contracts (set when Source=ServiceContract)
  • Service call parts

    Posted parts consumed on an assigned call, with immutable cost/price snapshots and an atomic stock movements posting. A draft mobile event is not a posted consumption record. Linked reversals compensate stock and trigger billing reconciliation.

    Linked to Service calls, Parts, Truck stock (the row this drew from), Estimates
  • Service call labor

    Labor entries — one per Tech per session on the call. The check-in / check-out workflow opens and closes a row automatically; manual entries are allowed for crew helpers.

    Linked to Service calls, Technicians, Estimates
  • Service categories

    The service taxonomy the dispatcher and the customer pick from. Each category snaps a default Duration (used for slot sizing) and required skills (used for tech-eligibility filtering).

Billing and payments

9 tablesAbout this feature
  • Invoices

    The invoice generated from a completed service call. Header here; detail in invoice lines. Posted outbound to fin-invoicing-ar, which is the system of record for AR.

    Linked to Service calls, Customers
  • Invoice lines

    One row per service call parts line and one per service call labor session, plus optional adjustment lines (discounts, trip fees).

    Linked to Invoices, Service call parts (when LineType=Parts), Service call labor (when LineType=Labor)
  • Payments

    On-site payment record. Calls into fin-payments for processor auth/capture, but the operational record (which Tech took it, which call, when) lives here.

    Linked to Service calls, Invoices, Customers, Technicians
  • Service calls

    One on-site visit with a committed assignment, customer window and completion receipt. Created → Scheduled → Dispatched → en route → on site → Completed is the successful path. Cancelled and Rescheduled are controlled exception branches before completion, not transitions after a completed signed visit.

    Linked to Customers, Service locations, Service categories, Service contracts (set when Source=ServiceContract)
  • Service call parts

    Posted parts consumed on an assigned call, with immutable cost/price snapshots and an atomic stock movements posting. A draft mobile event is not a posted consumption record. Linked reversals compensate stock and trigger billing reconciliation.

    Linked to Service calls, Parts, Truck stock (the row this drew from), Estimates
  • Service call labor

    Labor entries — one per Tech per session on the call. The check-in / check-out workflow opens and closes a row automatically; manual entries are allowed for crew helpers.

    Linked to Service calls, Technicians, Estimates
  • Signatures

    Immutable customer signature receipts bound to an exact displayed document, scope revision and authorized signer. Estimate approval and completion acknowledgment have separate purposes and cannot substitute for each other.

    Linked to Service calls, Estimates, Users
  • Credit policies

    Versioned permission to finish a service visit with an unpaid balance. Admin publishes an exact category/customer policy revision; an independent Operations Manager still approves each call-specific exception. Published terms are immutable, and retiring a policy stops new decisions and prevents consumption of unused approvals; it preserves receipts already used for completed work. This records payment terms rather than a payment or cleared receivable.

    Linked to Service categories, Customers, Users
  • Service call activities

    Immutable audit of every status transition and assignment change on a service call. The disputed-call ledger.

    Linked to Service calls, Users

Service contracts and follow-up

5 tablesAbout this feature
  • Service contracts

    Recurring service contracts — an HVAC tune-up twice a year, a restaurant-chain quarterly hood-system service. Drives the generate-the-next-call workflow on the cadence.

    Linked to Customers
  • Service contract items

    The included services per contract. The cadence engine reads these to generate the right service call with the right service category on the right date.

    Linked to Service contracts, Service categories, Service locations
  • Service calls

    One on-site visit with a committed assignment, customer window and completion receipt. Created → Scheduled → Dispatched → en route → on site → Completed is the successful path. Cancelled and Rescheduled are controlled exception branches before completion, not transitions after a completed signed visit.

    Linked to Customers, Service locations, Service categories, Service contracts (set when Source=ServiceContract)
  • Surveys

    Post-call CSAT trigger. Lightweight mirror of the survey trip; the survey infrastructure itself lives in support-csat-nps.

    Linked to Service calls, Customers
  • Service locations

    The physical site the Tech is going to. A Customer can have many sites — a property manager has dozens. The dispatch-and-route engine uses the lat/long here to sequence the day.

    Linked to Customers

Shared and settings

2 tables
  • Customers

    The account a service is rendered to. May be a residential homeowner or a B2B account (a property manager, a restaurant chain). One Customer has one or many service locations.

  • Users

    Local mapping of authenticated principals; identity login is owned by ERP.AI. Each mapped user has one local role; immutable actions retain their real actor.

Keys and references

Use unique source, occurrence, device and connector command identities. Customer/location/call ownership must agree across references. Preserve exact signed revisions and immutable posted movements; never use a display name as an authorization key.

Migration order

  1. Map Users, Technicians, skills, crews and service categories.
  2. Load customer locations, access controls, contracts and item recurrence.
  3. Configure working slots, dated unavailability, parts and the single inventory ownership mode.
  4. Load validated open calls, accepted assignments and opening stock evidence.
  5. Configure estimate/signature and versioned credit policy, payment requests, AR mapping and survey connection.
  6. Reconcile test visits, denied actions, mobile conflicts, stock reversals and billing acknowledgements before release.

Set up Field Service Management your way.

Start free, then use Proto to change fields, steps and approvals before your team goes live.

How to get started

A personal agent for your business

Get started with Proto

Your app is selected. Download Proto, then open it with this context.

Selected appField Service Management

Choose your computer’s platform.

Download Proto

Install Proto, then return to this panel.

Already installed? Open Proto

Free to use. Your own model provider may charge for usage.