CRMconnect Azuvio · Docs

Workflow: Equipment Service — From Request to Invoice

Modules involved: Assets · Tickets · Tasks · Timesheets · Warehouse · Expenses · Invoices · Contracts · Appointly · Knowledge Base
Who uses it: Service Dispatcher, Technician, Service Manager, Finance, Client (portal)
Typical duration: Hours – days (single intervention); weeks (complex service / parts order)

Overview

The equipment service workflow covers the full cycle of a technical intervention: from the client reporting a malfunction to issuing the invoice with labor, parts, and travel expenses. It is used by companies that sell and service equipment (IT, medical, HVAC, industrial, home appliances, telecommunications). CRMConnect centralizes requests through the helpdesk (Tickets), schedules interventions (Appointly or Tasks), tracks parts consumption from stock (Warehouse — Goods Issue), logs technician hours (Timesheets), and generates the final invoice with all cost components.

Key difference from standard service: The equipment record in Assets serves as the central pivot of the workflow — warranty verification, history of previous interventions, and the SLA contract are all anchored to the equipment record, not just the client record.


Flow diagram

[CLIENT REPORTS MALFUNCTION]
  │  channel: email (auto pipe) / client portal / phone / WhatsApp
  │  → Ticket created automatically (email pipe) or manually (dispatcher)
  │  → Ticket status: Open
  │
  ↓
[EQUIPMENT IDENTIFICATION AND CONTRACT CHECK]
  │  Ticket → linked to Asset (faulty equipment)
  │  Asset → fields: serial, model, manufacturer, purchase date,
  │           warranty expiry, installation location
  │  SLA Contract → checked: type, response terms, resolution terms
  │
  ├── Under warranty → free intervention
  │     │  Ticket marked "Warranty" (tag or custom field)
  │
  ├── Active maintenance contract → reduced rate or included in subscription
  │     │  Ticket marked "SLA — [Contract type]"
  │
  └── No warranty, no contract → standard rate
        │  Client notified of estimated cost before intervention
  │
  ↓
[SCHEDULE INTERVENTION]
  │
  ├── Appointly: schedule with date + time, assigned technician,
  │     client location, estimated duration
  │     → automatic notification to client + technician
  │
  └── Task: created on Ticket or directly, assigned to technician,
        with due date = planned intervention date
  │
  ↓
[INTERVENTION — COST COMPONENTS]
  │
  ├── [LABOR]
  │     │  Timesheet: start / stop time or manual duration
  │     │  linked to Ticket + Task
  │     │  Staff = technician, Billable = Yes
  │     │  Note: describes work performed (appears on invoice)
  │
  ├── [PARTS CONSUMED]
  │     │  Warehouse → Goods Issue (Stock outflow)
  │     │  parts from stock automatically decremented
  │     │  linked to Ticket or Client
  │     │  document: Consumption note / Internal delivery note
  │
  └── [TRAVEL / CONSUMABLES EXPENSES]
        │  Expense: amount, category (travel, consumables),
        │  attached to Ticket or Client, Billable = Yes
  │
  ↓
[DIAGNOSIS AND RESOLUTION]
  │
  ├── Resolved at first intervention → continue to Documentation
  │
  ├── Parts required → Ticket status: "Awaiting Parts"
  │     │  Parts purchase order (Purchase → RFQ → PO)
  │     │  Task: "Track parts delivery" with deadline
  │     │  Upon parts receipt → reschedule intervention (Appointly/Task)
  │
  └── Escalation required → Ticket transferred to level 2 / manufacturer
        │  Internal task: "Escalation to manufacturer — [Case number]"
  │
  ↓
[DOCUMENT RESOLUTION]
  │  Ticket → status: Resolved
  │  Final ticket reply: solution applied, parts replaced,
  │  client recommendations (e.g., equipment replacement, periodic service)
  │  If frequent issue → article created in Knowledge Base
  │  Asset → "Intervention history" field updated (custom field or note)
  │
  ↓
[CLIENT APPROVAL (optional)]
  │  Client confirms resolution via portal or email
  │  Ticket → status: Closed
  │  Satisfaction rating (if feedback module is active)
  │
  ↓
[INVOICING]
  │  Invoice created:
  │  ├── Labor line: hours × rate/h
  │  ├── Parts lines: each part consumed (from Goods Issue)
  │  └── Travel line: amount from Expense
  │  eFactura if B2B client with VAT number
  │
[SERVICE COMPLETE ✓ · CLIENT SATISFIED ✓]

Step by step

1. Reporting the malfunction — Creating a Ticket

Where: /admin/ticketsAdd Ticket (manual) or automatically via email pipe

Input channels and what happens:

Channel Mechanism Dispatcher action
Client email Email pipe → ticket created automatically with email subject and body Verify data, fill in missing fields
Client portal Client fills in the form from the CRMConnect portal Ticket appears directly in queue
Phone Dispatcher creates ticket manually Fill in all fields; send email confirmation to client
WhatsApp Manual or via integration Ticket created manually; copy description from WhatsApp

Key service ticket fields:

Field Value / Notes
Subject Short and descriptive: "Printer Malfunction — SN: X123"
Client Link to client record
Priority Low / Medium / High / Urgent (based on SLA and impact)
Department / Category "Hardware Service", "Software Service", "Preventive Maintenance"
Assigned to Dispatcher or directly assigned technician
Custom field: Equipment serial number Unique equipment identifier
Custom field: Equipment model Auto-populated if linked to Asset
Custom field: Warranty type "Commercial Warranty" / "SLA Contract" / "No coverage"
Custom field: Intervention location Client address where equipment is installed

Ticket statuses:

Status Description Set by
Open New, unassigned Automatic at creation
In Progress Assigned to technician, in progress Dispatcher / Technician
Awaiting Parts Waiting for spare parts Dispatcher
Escalated Transferred to higher level / manufacturer Dispatcher
Resolved Intervention performed, solution applied Technician
Closed Confirmed by client or closed after 48h without response Automatic / Dispatcher

2. Equipment identification — Assets module

Where: /admin/assets — equipment record

What must be pre-configured on each sold equipment item:

Asset field Description
Name / Title Equipment type (e.g., "HP M428 Laser Printer")
Serial number Manufacturer's unique identifier
Client The client where it is installed
Location Client's address or department
Purchase date When it was bought (from our company)
Warranty expiry Date until which it is under warranty
Purchase value Sale price (for calculating service vs. replacement value)
Status Active / Faulty / Returned / Written off
Custom field: Periodic service Date of next scheduled service
Custom field: SLA Contract Maintenance contract ID

Ticket → Asset link:

From the ticket, the "Asset" field links the request to the specific equipment. All previous interventions on that equipment are visible in the ticket history filtered by asset. This allows the technician to see:

  • Which parts were previously replaced
  • How many interventions the equipment has had recently
  • Whether the equipment is a "repeater" (recurring issues → replacement recommendation)

3. Warranty and SLA contract verification

Warranty check:

Situation Decision Action in CRM
Active warranty (expiry date > today) Free intervention "Warranty" tag on ticket; 0 rate on invoice
Warranty expired < 30 days Case-by-case review (goodwill) Manager decision; "Post-warranty" tag
Warranty expired Standard rate Client informed before intervention

SLA contract check:

A maintenance contract may include:

Typical SLA term Description
Response time E.g., 4h from report (on business days)
Resolution time E.g., 24h or 48h (depending on priority)
Included interventions E.g., 2 interventions/month included in subscription
Included parts E.g., consumables included / parts excluded
Geographic coverage E.g., counties X, Y, Z only

Practical tip: Configure SLA contracts as "Contracts" in the CRM with an expiry date. Set up an automatic task or reminder 60 days before expiry to contact the client with a renewal offer.


4. Scheduling the intervention

Option A — Appointly (structured scheduling):

Where: /admin/appointly

Field Value
Service "Service intervention" / "Preventive maintenance"
Staff (technician) Technician available in the client's area
Client Link to client record
Date and time Chosen slot (also visible to client in portal)
Estimated duration E.g., 2h
Note Problem description from ticket

Appointly advantages: the client can choose from available slots themselves (self-scheduling), automatic confirmation notifications and reminders.

Option B — Task with due date:

Field Value
Task title "Service intervention — [Client] — [Equipment]"
Assigned to Allocated technician
Due date Date and time of intervention
Priority Per SLA (Urgent / High / Normal)
Linked to Service ticket
Note Client address, contact phone number, problem description

Practical tip: If you have a large team of technicians, use Resource Workload (/admin/resource_workload) to check availability before allocation. Avoid over-allocating technicians on the same day.


5. Intervention — Logging labor (Timesheets)

Where: Timesheets tab in Ticket or Task, or /admin/staff/timesheets

Technician workflow during intervention:

Timer variant (recommended for on-site work):

  1. Technician opens the intervention task on phone/laptop
  2. Starts the timer ▶ — start timestamp recorded
  3. Performs the intervention
  4. Upon completion: stops the timer ■ — timesheet created automatically with exact duration
  5. Adds a descriptive note (what was done, what was replaced)

Manual variant (if no CRM access in the field):

  1. Technician records hours in the field
  2. Back at the office, fills in manually: date, start time, stop time, task, note
  3. Dispatcher or manager reviews and approves

Service timesheet fields:

Field Notes
Staff The technician who worked
Ticket / Task The intervention it refers to
Date Day of intervention
Hours Actual duration (calculated automatically if timer)
Billable Yes — labor is invoiced (exception: warranty / included SLA)
Note Describes the work: e.g. "Motherboard replacement, system check, testing"

Labor rates:

Rate type Configuration
Standard rate Set on Staff or on service type
Emergency rate (outside business hours) Configurable % increase
SLA included rate 0 RON (if contract includes labor)

6. Parts consumed — Warehouse (Goods Issue)

Where: /admin/warehouseGoods Issue (Stock outflow)

Parts consumption process:

  1. Technician identifies required parts (from diagnosis)
  2. If parts are in stock → Goods Issue is created
  3. Goods Issue: select items, quantities, linked to client/ticket
  4. Stock decreases automatically upon Goods Issue approval
  5. Consumed parts are visible on the outflow document

Goods Issue fields:

Field Value
Items Parts selected from stock (with code and description)
Quantity Number of units consumed
Source warehouse Spare parts stock
Client The client where the intervention takes place
Reference Service ticket number
Date Day of consumption

What happens if the part is not in stock:

  1. Insufficient stock identified (current_stock < required_quantity)
  2. Dispatcher or technician creates a Purchase Request or directly an RFQ (Request for Quotation)
  3. Supplier contacted → Quote → Purchase Order → Parts receipt
  4. Upon receipt → stock updated
  5. Ticket updated to "Awaiting Parts" during the procurement period
  6. Upon parts receipt → reschedule intervention

Practical tip: Maintain a minimum stock for frequently used spare parts (consumables, filters, batteries, memory cards, etc.). Configure the minimum level in Warehouse — when stock falls below minimum, an alert appears for replenishment.


7. Travel and consumables expenses

Where: /admin/expenses or directly from ticket

Types of expenses during intervention:

Expense type Details
Travel (km) Km driven × rate/km; or lump sum
Accommodation If intervention is in another city
Per diem If technician is traveling for more than 8h
Consumables Materials not tracked as stock (lubricants, cables, connectors)
Parking / highway fees Ancillary travel costs

Expense fields:

Field Notes
Amount Expense value
Category Selected from configured list
Date Day of expense
Description E.g., "Travel to Cluj-Napoca — intervention at [Client]"
Attachment Fiscal receipt, invoice, ticket
Billable Yes (if contract does not include free travel)
Linked to Client / Ticket For grouping on service invoice

8. Documenting the resolution and Knowledge Base

Where: Replies tab in Ticket + /admin/knowledge_base

Upon resolving the intervention:

  1. Add final reply to ticket (visible to client in portal):
    • What was diagnosed
    • What was repaired / replaced
    • Post-intervention recommendations
  2. Change ticket status → Resolved
  3. If the problem has also occurred on other similar equipment → create article in Knowledge Base

Knowledge Base article — recommended structure:

Field Example
Title "HP M428 — Error E3 — Paper pickup roller replacement"
Category "Hardware Service — Printers"
Symptom Description of error message or behavior
Cause Faulty component or incorrect setting
Solution Resolution steps (with images if possible)
Required parts List of parts to replace with code
Average resolution time E.g., 45 minutes

Practical tip: A well-maintained Knowledge Base reduces resolution time for repetitive interventions and allows junior technicians to resolve frequent issues without escalation.


9. Invoicing the service

Where: /admin/invoicesAdd Invoice

Service invoice structure:

Line 1: Technician labor — Intervention [date]
          2.5h × 120 RON/h = 300 RON

Line 2: Part: HP LaserJet M428 Motherboard (P/N: RM2-6447)
          1 unit × 450 RON = 450 RON

Line 3: Part: Paper pickup roller kit
          1 unit × 85 RON = 85 RON

Line 4: Travel — Cluj-Napoca
          1 × 80 RON = 80 RON
─────────────────────────────────────────────────────
                            Subtotal: 915 RON
                            VAT 19%:  173.85 RON
                            TOTAL:  1,088.85 RON

Special invoicing situations:

Situation Treatment on invoice
Equipment under warranty 0 RON invoice or no invoice; internal invoice for cost tracking
SLA — labor included Labor line with 0 RON; parts invoiced separately
SLA — all-inclusive No invoice per intervention; monthly subscription invoiced
Unsuccessful intervention (irreparable equipment) Diagnosis + travel invoiced; parts returned to stock

eFactura for B2B clients:

  • Mandatory for all B2B invoices issued from 2024
  • Automatically transmitted to ANAF if integration is configured
  • Client receives invoice through SPV and by email

What is created automatically

Event Created automatically
Client email received on pipe address Ticket created with email subject and body; client identified by email
Appointly booking confirmed Email notification to client + technician; event in calendar
Timer started on service task Active Timesheet record, linked to task and ticket
Timer stopped Timesheet with exact duration, task and client filled in automatically
Goods Issue approved Item stock decreases automatically from warehouse
Ticket marked Resolved Email notification to client with documented solution
Invoice sent (eFactura active) XML automatically transmitted to ANAF via SPV

Points where the workflow can block

Problem Probable cause Solution
Client cannot be identified when creating ticket Sender's email not in database Add alternative email in client record; or create new contact
Equipment does not appear in Assets Not registered at time of sale Create Asset record retroactively from client record using data from sales invoice
SLA not linked to ticket Contract not associated with client or asset Verify that the SLA contract ID is filled in the custom field on the Asset
Technician forgets to stop the timer Distractions at end of intervention Internal rule: dispatcher checks active timers daily; or use manual entry
Goods Issue does not reduce stock Goods Issue is in Draft status (not approved) Approve the outflow document; check approval workflow in Warehouse Settings
Parts not in stock at intervention Lack of minimum stock system Configure minimum stock per item; create weekly replenishment report
Invoice does not include all lines Expenses or timesheets not marked Billable Check the Billable checkbox on each component before generating the invoice
Client disputes parts cost Sale price differs from what was communicated by phone Send service quote (Sales Order) for approval before ordering parts

Relevant reports

  • Tickets per technician — how many interventions each technician had, average resolution time
  • Service timesheets — billable labor hours per period, per client, per equipment
  • Assets with frequent interventions — equipment with most tickets → replacement candidates
  • Spare parts stock — Warehouse → items below minimum stock, movements in the last month
  • SLA contracts expiry — Contracts filtered by expiry date in the next 60 days
  • Service revenue — Invoices filtered by "Service" category → monthly trend
  • Knowledge Base usage — most accessed articles → documented frequent issues

Modules involved — detailed documentation

← Back to Workflows

Tip

Register all equipment as assets linked to the client record — when a service ticket is opened on that equipment, the technician sees full asset history (previous service events, parts replaced, warranty status) without asking the client.

Note

Planned maintenance records (calendar-based) and Work Orders (ad-hoc repairs) are distinct in the system. Maintenance records track scheduled service intervals; work orders track unplanned repairs. Both contribute to total cost-per-asset reports.