MoySklad
Odoo
amoCRM
Tizimlashtirish
Marketing
AI agentlar
BUline
MoySklad
Odoo
amoCRM
Систематизация
Маркетинг
Маркетинг: обзор
Стратегия и контент
Стратегия и планКонтент и SMM
Рекламные каналы
Google AdsYandex DirectРеклама в TelegramInstagram и FacebookМаркетплейсы
Органический рост
SEO
Измерение и аналитика
Аналитика и KPI
AI-агенты
BUline
MoySklad
Odoo
amoCRM
Systematization
Marketing
AI agents
BUline
Home/Odoo/Services (project and time tracking)
Odooimplemented by BUline
Odoo · Industries · Services

Services — one chain from the hour to the invoice and to profit

Project, task, hours, invoice and service request are linked in one database. Then sold hours, spent hours and money received all point to one figure. Areas such as field service and Uzbek payroll may require extra work — we say so openly.

Project and taskTimesheetsInvoicing by hoursService and SLAField serviceProject profit
Problems

Typical obstacles in service businesses

The service is sold, but the product is not visible: work is measured in hours and people. If records are kept in Excel and correspondence, profit becomes known on the last day.

Hours and invoicing

  • Hours are logged from memory at the end of the week
  • The client asks “which hours, and who worked them?”, and the answer is scattered across spreadsheets
  • The invoice goes out late, after the work is finished

Project and profit

  • Sold volume is not compared with hours spent
  • On a fixed-price contract the company pays for the extra hours itself and notices late
  • Who is busy and who is free — the manager does not know

Service and deadlines

  • Requests arrive scattered across phone, Telegram and email
  • Who is responsible and when the deadline expires is recorded nowhere
  • The schedule of customer visits and spare parts records are kept in a separate notebook
In Odoo

Which app solves which problem

The core set for a service company. Helpdesk, Planning, Appointments and Subscriptions are part of Enterprise (not in the open-source code repository). Which apps are needed is determined during the diagnostic.

Project

Task, stage, dependency, template and roles. The project dashboard shows planned and logged hours.

Timesheets

Hours are logged on a task with a timer, a timesheet or from the task itself. The manager sees the entries and approves them.

Sales

A service product: the invoicing policy (hours, milestone, fixed amount). When the order is confirmed, a project and a task are opened.

Accounting

Analytic accounting ties hours and costs to the project. If a budget is entered, the project is compared against it.

Helpdesk

A request becomes a ticket card and is assigned to a team. The SLA deadline is counted in working hours.

Scheduling (Planning)

People, equipment and time in one schedule. In Odoo 20, visits to the customer's address also appear here as shifts.

Repairs

Device repair at a service center: a repair order is opened from the ticket.

Subscriptions

Recurring invoices, renewals and upsell for ongoing services (monthly support, monitoring).

Appointments

The client books a consultation or appointment by resource and capacity.

Process

From request to profit calculation

Each stage leaves its own record, so sales, the project team and the accountant look at the same figure.

01Request or inquiry

A request arrives by email, a website form, chat or a manager. The customer record is opened and the request goes to the team.

02Quotation and contract type

A service product is sold with an invoicing policy: by time logged, by milestone or for a fixed amount. The policy is chosen together with the contract.

03Project and tasks

If it is set up this way in the product, the project and task open automatically when the order is confirmed. A template and roles speed up repeating work.

04Scheduling

In Planning, people and time are assigned. Time off and public holidays are taken into account, and workload is visible in the schedule.

05Execution and hours

The employee logs hours with a timer while working. Billable and internal work is kept in separate projects.

06Approval and invoicing

The manager approves the hours. The hours appear in the order's “Delivered” column, and the invoice is created from it.

07Electronic document and payment

The invoice is issued in the electronic invoicing system, and payment is matched against the bank record.

08Profit and reports

Project revenue and costs are compared. Odoo 20 has new reports for budget, actual and forecast margin.

Hypothetical example

A hundred hours sold, a hundred and forty spent

The example is hypothetical. A consulting company sold a client 100 hours of service. By the end of the project, 140 hours had been worked. Whose account the extra 40 hours go to depends on the contract type. That is why the invoicing policy of the service product in Odoo is decided before the contract is drawn up.

  • By time logged: the extra 40 hours are also billed to the client, because the invoice is generated from the hours spent
  • For a fixed amount: the client pays the agreed sum, the company absorbs the extra 40 hours, and profit falls accordingly
  • By milestone: the invoice is issued as each milestone is completed. Reaching a milestone does not create the invoice by itself; you create it separately
  • Logging hours is needed in all three cases, but its meaning differs: in the first it goes to the client, in the others it is needed only to understand profit
  • If the analytic distribution column on the invoice is left empty, later hour and material calculations will be wrong
  • Covered in detail in the articles on invoicing policies and time tracking
—
—
—
Service center and field service

From a request to a visit at the customer's address

Service work starts with a request. In Helpdesk each request is a separate card, that is, a ticket: it can arrive by email, Live Chat, WhatsApp or a website form. The ticket gets a priority (0 to 3 stars), and the SLA rule counts the deadline in working hours. From the ticket, a repair order, a return or a customer visit is opened.

In Odoo 19, a visit was a task in the separate Field Service app. The Odoo 20 release notes say this app has been discontinued and its capabilities moved into Planning: a visit is scheduled as a shift. The technician taps “Check in”, adds photos and products, fills in the worksheet and taps “Complete”. The customer signs the report. If the warranty flag is set, the amount of materials and services added from the shift is reduced to zero.

  • An SLA rule belongs to a single team. It starts only after the priority has been changed on the ticket, and an empty priority field does not mean “all tickets”, only those with zero stars
  • A Mapbox connection is required to draw the full daily route. A visit with no address entered does not appear on the map
  • When moving from Odoo 19 to 20, worksheet templates are built from property fields instead of Studio fields; old templates may need to be rebuilt
  • Recording the technician's location is optional and is switched on in settings
  • Helpdesk and SLA, field service from 19 to 20
—
—
—
Industry packages

Are there ready-made packages for service businesses?

Odoo publishes industry packages for service sectors on its website and in its open repository (odoo/industry). It is not a separate app: it is a set of pre-configured apps, fields and templates.

Which packages are available

  • Accounting Firm, Marketing Agency, IT Hardware & Support, HVAC Services, Cleaning Services, Handyman Services, Electricians, Architecture Firm, Law Firm
  • All of them are authored by Odoo S.A. under the OEEL-1 license, which means Enterprise is required
  • In the Odoo 19 release notes, packages such as Accounting Firm and Cleaning Service are listed as new

What's inside

  • The packages rely on standard apps such as Project, Timesheets, Planning, Sales and Subscriptions. For example, the Accounting Firm package is tied to Accounting, CRM, Documents, Project, Sign and Studio
  • Some packages rely on Studio. If you have custom code, the package and the customizations need to be checked together
  • The documentation does not describe each package as a separate app: the scope is checked during the diagnostic

What we do

  • We install the package on a test database and compare it with your process
  • If the package is excessive, we assemble only the required apps with standard configuration
  • The package edition and the hosting restriction are confirmed in writing during the diagnostic
Honest scope

What Odoo includes as standard and what we add

Most of the chain from project to hours to invoice is available in ready-made apps. Field service, electronic invoicing and Uzbek payroll are a separate matter. The information is based on the Odoo 19 and 20 documentation and release notes; if your version differs, we check it during the diagnostic.

GoalIn standard OdooExtra work (BUline)
Project, task, stageAvailable: Project. Dependency, template, roles, milestoneAdapting project templates and task stages to your process
Logging and approving hoursAvailable: Timesheets. Timer, timesheet, approval, four-level accessSeparating billable and internal hours, the approval procedure
Invoicing by hoursAvailable: service product, “Based on Timesheets”. Project, Accounting and analytic accounting are requiredProduct structure by contract type
Milestone and fixed amountAvailable: milestone (the invoice is created separately), advance paymentThe person who approves the milestone and the control rule
Project profitOdoo 20: the old profitability report has been removed, and there are new reports for budget, actual and forecast margin. Their columns were not found in the public documentationChecking on a test database and, if needed, a custom report
SLA and service queueAvailable: Helpdesk (Enterprise). SLA is counted in working hoursRule table, stages, rating email
Field serviceOdoo 19: the Field Service app. Odoo 20: inside Planning. Mapbox for routingWorksheet templates, technician inventory, invoicing policy
Industry packageAvailable: Accounting Firm, IT Hardware & Support and others (Odoo S.A., Enterprise)Checking the scope: whether a package is needed or standard configuration is enough
Electronic invoicingNo: not mentioned in Odoo's official Uzbekistan localization (Fiscal Localization → “uz Uzbekistan”)Connection to the operator's system is estimated
From hours to payrollUzbekistan is not in the list of payroll packages in the Odoo documentationEstimated separately: how time entries are passed into the monthly payroll calculation
Uzbekistan requirements

Local requirements for service businesses

The items below have been checked against official sources. Those that apply to your line of business, we list in writing at the diagnostic.

Invoice and code

  • A legal entity, sole proprietor or self-employed person selling a service must issue an invoice to the buyer. As a general rule, it is issued electronically in the electronic invoicing system (Article 47 of the Tax Code)
  • The system rests on Resolution No. 522: the seller sends the document with an electronic signature, and the buyer confirms or rejects it
  • The invoice and the online receipt show the IKPU (MXIK) code from the national catalog for each service (Resolution No. 263)
  • Optional 6% VAT regime (PF-100, 26 May 2026; from 1 June 2026 to 1 January 2030): for trade, catering and service businesses. 6% applies to all turnover, profit tax is 0%, VAT paid on purchases cannot be credited, and the decree sets no turnover threshold for entry. An accountant confirms whether it applies; this regime is not mentioned in the Odoo localization documentation
  • Electronic invoice and Odoo, how MXIK works

Customer rights and cash register

  • The Law “On Protection of Consumer Rights” (No. 221-I) also applies to services provided to a citizen
  • Under Article 19, a defect is reported when the work is accepted or during the warranty period, and where there is no warranty, within 6 months. The time limit for remedying it is 20 days from the day of the demand, unless the contract sets a shorter one. If the deadline is missed, a penalty of 1 percent of the cost of the work accrues for each day
  • During the warranty, the period for free repair of a product is 20 days for the seller and 10 days for the manufacturer (Article 15). The SLA rule in Helpdesk can be set to match this period
  • A legal entity, sole proprietor and family entrepreneur who accept payments from individuals use an online or virtual cash register (Resolution No. 943)
  • Online and virtual cash register

Data and employees

  • Customer and employee data is personal data. Where the database is kept: the law and Odoo hosting location
  • Recording a technician's location during field service is employee personal data. Before it is switched on, the internal procedure and informing the employee are agreed with a lawyer
  • Time recording and payment for overtime are governed by the Labor Code; the current version is checked on lex.uz
  • Odoo stores time entries but does not provide Uzbek payroll: status of payroll localization
Integrations

Services connected to the service system

Each connection is assessed and built separately. We do not promise that a “ready-made connector exists.”

Electronic documents and bank

  • Electronic invoice operator (for example, Didox) and its API
  • Importing bank statements and reconciliation
  • Accepting payments through Click and Payme is estimated separately

Request channels

  • Email and the website form are set up in Helpdesk. The mail address works out of the box in Online and Odoo.sh; on your own server an external mail server is required
  • Creating a ticket from a WhatsApp chat is described in the documentation
  • Telegram and telephony: estimated separately for each channel

Map and data

  • Mapbox: for routing and travel time
  • Migrating customer and project data from the old system (Excel, 1C, amoCRM)
  • Odoo 20 has an assistant that suggests hours based on computer activity (the ActivityWatch program): the data stays on the employee's device, and the team is told in advance
For managers

What the manager sees

Reports are not copied into a separate spreadsheet; they are generated from the documents in the same database.

Project

  • Volume sold, delivered and invoiced
  • Planned and logged hours
  • Odoo 20: budget, actual and forecast margin reports

People

  • Billable hours as a share of the monthly target (percent)
  • Workload, time off and holidays
  • Unapproved timesheet entries

Service

  • Working hours until the first reply, until assignment and until closure
  • SLA breaches by week or month
  • Customer ratings: satisfied, average, dissatisfied
The BUline Method

How we implement it in a service company

The stages follow the general BUline Method. The timeline is agreed in writing after the diagnostic. Implementation process →

01Diagnostic1–2 weeks

We study service types, contract forms, time-logging habits, the service queue and the invoicing flow. Result: a business requirements document (BRD).

02Architecture1–3 weeks

We approve the structure of service products, analytic accounting, roles, SLA rules and the route of the electronic document.

03Sprints8–16 weeks

First, one service line goes the full way from project to invoice, then come the service desk, field service and integrations.

04Training

The manager, specialist, dispatcher and accountant are trained by role. An instruction guide and video lessons are provided.

05Post-launch support30 days + ongoing

Enhanced support, then adding new service lines and reports.

Preparation

What to gather before we start

This list speeds up the diagnostic. We can start even if not everything is ready.

Services and contracts

  • List of services and contract types: hourly, milestone-based, fixed amount
  • Samples of current contracts
  • Billable and internal work types

People

  • Staff, roles and working hours
  • Where and when hours are logged now
  • Time-off and public holiday rules

Service

  • Request channels and teams
  • Deadlines promised to customers as they stand now
  • Spare parts and equipment warehouse
Mistakes

Common mistakes and how to avoid them

MistakeConsequenceHow we prevent it
Logging billable and internal work in one projectThe customer's invoice fills up with internal hoursSeparate them into different projects
A project with no analytic accounting attachedRevenue and costs do not reach the project, so profit is shown incompletelyCheck analytic accounting on every billable project
Not entering the hourly cost in the employee cardThe hourly cost is not calculated and profit looks overstatedFill in the employee cards before launch
Writing an SLA rule without setting a priorityA priority-based rule does not fireSet the priority as soon as the ticket arrives
Expecting figures from the old profit dashboard in Odoo 20The figures appear elsewhereBefore the move, record the old figures and compare them in the new reports
Running field service the Odoo 19 way (as a task)Odoo 20 has no separate app, so the worksheet templates are rebuiltRun one visit from start to finish in a test database
FAQ

Frequently asked questions

Can hourly and fixed-amount contracts be run in one database?

Yes. The invoicing rule is chosen on the service product: recorded time, milestone or fixed amount. Timesheet entries are needed in any case: in the first option they go to the customer, in the others they show profit. Mixed schemes (for example, an advance and a milestone) are checked in a test database.

Does Odoo have a service desk and how does SLA work?

Yes, the Helpdesk app (Enterprise). A request becomes a ticket and is distributed among teams. An SLA rule is set by team, priority, tag and customer, and the deadline is counted in working hours only. The rule kicks in after the priority is changed in the ticket.

Does Odoo have field service (Field Service)?

In Odoo 19 there was a separate app. The Odoo 20 release notes say it was discontinued and its features moved into Planning: a visit is scheduled as a shift. A full route for the day requires Mapbox. The old worksheet templates may need to be rebuilt.

Does Odoo calculate monthly payroll from employee hours?

Uzbekistan is not on the list of payroll packages in Odoo's documentation, and the Uzbekistan section of the Odoo 20 release notes does not mention payroll either. The open-source code shows traces of preparation, but it is not confirmed as a ready-made package. The Apps Store has third-party modules; we have not verified the accuracy of their calculations. Payroll is assessed separately at the diagnostic.

Can an electronic invoice be sent from Odoo?

Odoo's official Uzbekistan localization (Fiscal Localization → “uz Uzbekistan”) does not mention a connection to electronic invoicing. The invoice is prepared in Odoo, and the electronic document is issued in the operator's system. The connection depends on what the operator supports and is assessed separately.

Odoo Online, Odoo.sh or your own server?

Standard apps run on Odoo Online. If a custom module or an Apps Store module is needed, Odoo.sh or your own server is chosen. The hosting requirements of an industry package are checked at the diagnostic. Hosting types →

How much does the service cost and how long does it take?

The Odoo licence depends on the number of users and apps (terms at odoo.com). The scope of BUline's work depends on the number of users, service lines, customization, integrations, data volume and training. The exact cost and timeline are given in a written proposal after the free diagnostic.

Free diagnostic

Let’s decide together which Odoo apps to start with

During the diagnostic, we review your processes and tell you where standard Odoo is enough and where configuration is needed — with an app list, edition and phases.

Free diagnostic