Odoo Field Service and Maintenance in Syria: Solar, Generators, Offline

Running solar, inverter or generator service teams in Syria? Here is what Odoo 20 does for site visits, preventive maintenance, workshop repairs and van stock, which parts are free in Community, and how far its offline mode really goes.

Published 2026-10-17 · METCH

Odoo field service and maintenance in Syria: what works with power cuts, and on what budget

Yes. Odoo can run field service and maintenance for a Syrian service business, from the customer's call to the paid invoice: solar and inverter installers in Damascus and its countryside, generator teams in Aleppo, suppliers with a repair workshop. The real constraint is power and mobile coverage, covered honestly below. Which app does which job:

  • Site visits: shifts in Planning with Field Service enabled in Odoo 20, which discontinued the separate Field Service app; on Odoo 19, Field Service tasks.
  • Complaints and response targets: Helpdesk.
  • Workshop repairs: Repairs.
  • Your own generators and vans: Maintenance.
  • Spare parts: Inventory and Purchase.

A sensible path has two phases. Phase 1 runs on the free Community edition: Repairs, Maintenance, Inventory with serial numbers and Purchase cover the workshop and its parts. Phase 2 adds Enterprise for Planning with Field Service and for Helpdesk once visit volume justifies it. Those apps, Subscriptions and the official mobile apps are Enterprise only, though Community can be installed on a phone as a web app (PWA), which Odoo now recommends. The third-party OCA field-service modules (AGPL, self-hosted) exist for Odoo 19, but in October 2026 their Odoo 20 branch had no modules, so check the OCA repository before choosing a version.

Community runs on a server you manage. Kept in the office, that server needs a UPS or solar backup; a rented cloud server avoids this. Either way, keep backups off site. Odoo has no ready Syrian localization package, so invoices follow the chart of accounts and taxes you set up.

From a call to a signed job report: an Odoo 20 solar visit planned around weak signal

A typical call: a household in Rif Dimashq says its inverter shows an error and the batteries no longer last the evening. In Odoo 20:

  • The call becomes a Helpdesk ticket, and the dispatcher plans a shift from it, published and with a Customer set; a new rooftop system's shift can come from its sales order.
  • While in coverage, the technician opens My Planning and the shift so it is available offline.
  • On arrival they Sign In, at street level if the roof has no signal, then fill the Worksheet (PV string voltage, battery voltage, state of charge, inverter error code), add parts used and take photos with the phone camera.
  • Before leaving they find signal, attach the photos, click Complete and have the customer sign through Customer Preview, then Sign Report.
  • Parts flow to the linked sales order and invoice; labour too, if the technician has a Service to Bill or the shift's project is billable with timesheets. Under warranty zeroes what the shift adds.

Setup: turn on Field Service under Planning > Configuration > Settings, then enable Worksheets, Billing (which installs Sales), Products and optionally Geolocation, which records GPS in the chatter at Sign In and Complete. Odoo 20's release notes also list a live map of technicians, so tell your team what is tracked. Worksheet templates (Planning > Configuration > Worksheet Templates) use property fields.

Syrian addresses often name landmarks, not street numbers, so test OpenStreetMap geolocation on real customers before trusting the map; drawn routes also need a Mapbox token.

Generator maintenance and the inverter workshop: Odoo Maintenance and Repairs

Maintenance covers equipment you own or operate, rented or not, such as generators, vans and battery testers, not customer contracts.

The Syrian catch: recurrence counts calendar time, not running hours, and generators run far longer when the grid gives only a few hours a day. So:

  • Create a request with Maintenance Type Preventive, tick Recurrent and set Repeat Every to a cautious calendar interval for oil changes.
  • Log the hour-meter reading on every request (a custom field if you will report on it); shorten the interval when hours run ahead.
  • Set the status to Done when finished. In Odoo 20 only that creates the next request; dragging the card to Repaired does not. On Odoo 19, a Request Done stage does it.

Odoo does not create a year of requests ahead, but the Community Maintenance Calendar previews future recurring dates; Odoo 20 Enterprise adds Gantt views. MTBF and MTTR count only corrective requests set to Done, and MTBF runs from the Effective Date, which defaults to the day the record was created, so backdate it for an old generator.

Repairs suits a workshop receiving customers' inverters. With inverters tracked by serial number in Inventory, open an incoming unit's serial number: its Traceability shows which customer received it and when. Decide whether your warranty still covers it, then open the repair order. Under Warranty zeroes parts and services, the Quote button (Create Quotation in 19) builds a sales order, and Odoo 20 can invoice a finished repair directly. Repairs is in Community and installs Sales and Inventory.

Power and network cuts: what Odoo's offline mode really covers

In The National on 6 July 2026, energy analyst Robin Mills put grid supply at best about four hours a day; a week later, Damascus residents told Al Jazeera it had improved to five or six straight hours before a cut. Supply varies by area and month; mobile data is patchy.

Offline ability depends on the version:

  • Odoo 19: records opened earlier online are view-only.
  • Odoo 20: previously opened records can be edited, and new ones created if that type was created online before; changes sync on reconnect. Photos and attachments cannot upload; Odoo calls it a fallback for short interruptions.
  • Both: offline data is capped at 2 GB; a hard refresh (Ctrl+F5) wipes it.

Odoo documents this for the web client and recommends its installable web app (PWA) on phones, so test there; expect Sign In, Complete and Sign Report to need signal. Rehearse before go-live:

  • Online, open My Planning, the day's shifts, customers and needed searches.
  • In airplane mode, fill a worksheet and add a part; note what Odoo greys out.
  • Reconnect and confirm changes synced before closing.
  • Never hard refresh or log out before changes sync.

If crews spend whole days without coverage and must close jobs offline, Odoo is not the best fit. Salesforce says its technician app updates work orders offline; in October 2026 its pricing page listed $175 per technician monthly (Enterprise Edition, annual contract), plus at least one Service Cloud and one Dispatcher licence. Check its pricing page, and whether it sells to Syrian companies.

Spare parts in dollars, maintenance contracts and reports, and how to start

Imported panels, batteries and inverters are usually bought in dollars, so raise purchase orders and vendor bills in USD. When a customer pays in new pounds, register it in SYP at the day's rate under your documented rate policy, such as the Central Bank of Syria rate.

For spare parts, make each van a warehouse resupplied from the main one (set Resupply From and tick that route on each part) with Min and Max reordering rules. Only the main warehouse buys: when its forecasted stock falls below Min, the rule creates an RFQ to the product's first listed vendor.

Solar after-sales usually means a post-installation check visit and your warranty period. Subscriptions shows whether a customer is covered; book visits as repeating shifts (Repeat in Planning). Odoo 20 creates them six months ahead by default, unpublished, and technicians cannot sign in to unpublished shifts, so publish each week's plan.

Reports worth building:

  • A Repairs pivot by inverter model, and the share of warranty repairs.
  • Generator reliability from each equipment record's MTBF and MTTR.
  • Helpdesk SLAs, measured in the team's working hours: change the default Monday-to-Friday calendar if you work Saturday to Thursday.

Start on Community, budgeting for a server, backups and setup, not licences; before pricing Enterprise, ask Odoo whether it sells subscriptions to Syrian companies.

METCH, an official Odoo partner at Ready level with a team in Damascus, offers a free consultation: we run one of your real inverter or generator jobs with you in airplane mode, so you see what works offline before committing.

Frequently asked questions

Will technicians lose their work if Odoo goes offline mid-job?

Usually not on Odoo 20, if you respect its limits. Edits to records opened while online are queued and synced when the connection returns; Odoo 19 only lets you view them offline. A hard refresh (Ctrl+F5) deletes offline data, so wait for changes to sync before refreshing or logging out. Photos cannot be uploaded offline, so keep them in the phone's gallery and attach them later. Odoo describes offline mode as a fallback for short interruptions, not for whole days without signal.

Is Odoo free for running a maintenance centre and a spare-parts warehouse?

The software can be. A workshop with a spare-parts warehouse runs fully on Odoo Community with Repairs, Maintenance, Inventory and Purchase. The real costs in Syria are a server with backup power or a hosted server, off-site backups, and setup in Arabic. Enterprise is needed only when site visits need dispatching: Planning with Field Service, Helpdesk, Subscriptions and the official mobile apps. Odoo Online's One App Free plan covers one app plus the apps it depends on; ask Odoo whether it is available to Syrian companies.

How do I schedule diesel generator maintenance in Odoo?

Add the generator as equipment in the Maintenance app, with its Effective Date set to when it entered service. Create a request with Maintenance Type Preventive, tick Recurrent and repeat every so many days, weeks or months. Odoo creates the next request only when the current one is set to Done (on Odoo 19, moved to a Request Done stage). Recurrence counts calendar time, not running hours, so keep the interval cautious and log the hour-meter reading in each request's notes or a custom field.

How do I organise solar inverter maintenance with Odoo?

Track inverters and batteries by serial number in Inventory, so each unit is tied to the customer who bought it. Site visits run as Planning shifts in Odoo 20, or Field Service tasks on Odoo 19, with a worksheet for readings such as PV string voltage, battery voltage and error codes, and a report the customer signs. Units brought to the workshop go through Repairs, where Under Warranty sets parts and services to zero. Give common spare parts reordering rules per warehouse or service van.

Need help with this?

METCH is a certified Odoo partner serving Syria — book a free consultation.

Get a proposal