Where was the technician when the ticket was resolved? The NexTool Geolocation module answers that without relying on anyone's word: it captures the GPS coordinates the moment the technician logs the followup or the solution and shows the physical address right on the ticket timeline. In this article we cover the real pain it solves, how it works under the hood, how to enable it and - with the same honesty we apply in the environments we support - when it is not worth it.
The problem: field work with no proof of presence
In field operations - infrastructure maintenance, swapping equipment at a branch, an on-site customer visit - knowing where the technician was when the record was made is part of the control. SLA audits, travel billing, route planning and plain trust in the team all depend on it. The catch is that GLPI, on its own, does not store that information.
The only native way to record a location in a followup is to type the address by hand into the text body. And typing an address in the rush of a job is an invitation to error: it comes out incomplete, with the wrong street, or simply does not come at all. Worse, it is self-declared - there is no coordinate behind it to back an audit. A manager who needs to confirm physical presence on an external ticket ends up depending on the technician's word or on a parallel tracking app that never talks to GLPI.
The result is a traceability gap that undermines both the quality of the operational data and the credibility of the service reports.
How Geolocation works
The module injects an "Get Location" button into the followup and solution forms of the ticket. On click, the browser asks for geolocation permission and captures, through the browser's native API, three pieces of data:
- Latitude and longitude - the raw coordinate, which is the data that backs the audit.
- Accuracy in meters - the error margin of the reading, which varies a lot by device.
- Readable address - obtained through automatic reverse geocoding via Nominatim (OpenStreetMap), a free service with no API key required.
After saving the followup or solution, a location badge appears on the ticket timeline with the formatted address, the accuracy in meters and a direct link to the point on OpenStreetMap. Beyond the badge, the module offers:
- Full history per ticket - every capture stays linked to the ticket; a job with several visits keeps them all.
- Formatted text insertion - the location can be inserted automatically into the followup body, not just the badge.
- Built-in test page - validates capture, browser permission and geocoding right in the settings, without opening a real ticket.
- Multiple provider support - Nominatim already implemented; Google Maps and Mapbox prepared for future activation, for those who need more accuracy or volume.
In practice, the difference from plain GLPI is less about where it shows and more about how trustworthy the underlying data is:
| Criterion | Address typed in the followup (native) | Geolocation module |
|---|---|---|
| Address | Free text, prone to typos | Filled by reverse geocoding of the coordinates |
| Accuracy | None - there is no coordinate | Latitude/longitude + margin in meters |
| Auditability | Self-declared, no proof | Raw coordinate recorded at the instant of the action |
| Technician effort | Type the whole address | One click on "Get Location" |
The location block written into the followup looks like this - an address for the human to read and a map link to check the exact point:
Location recorded on 12/04 14:32
Address: Av. Paulista, 1578 - Bela Vista, Sao Paulo - SP
Accuracy: ~18 m
Map: https://www.openstreetmap.org/?mlat=-23.5613&mlon=-46.6558
# Secure-context requirement (the button only shows and works over HTTPS):
# Permissions-Policy: geolocation=(self)How to enable it
- Install the NexTool plugin on your GLPI.
- Go to Setup > NexTool > Modules.
- Find the Geolocation card, click Install and then Enable.
- Under Configure, set the geocoding provider and the badge display options.
- Make sure the environment is served over HTTPS - without a secure context the browser does not even show the permission prompt and the button fails silently.
What we learned using it in the field
Three details only surface once you actually operate the module. First: without HTTPS the browser does not ask for geolocation permission and the button fails silently - no visible error, it simply does not capture. We have already wasted time chasing a "bug" that was just a staging environment served over plain HTTP. Second: OpenStreetMap's Nominatim is free, but it has a fair-use policy and a rate limit - it is meant for the one-off capture of a job, not for geocoding an entire database at once; whoever needs volume moves to Google Maps or Mapbox. Third: accuracy varies a lot. A phone with GPS in the open delivers a few meters; a desktop locating itself by Wi-Fi and IP can be off by blocks. That is why reverse geocoding sometimes returns the neighboring street - and exactly why we also store the raw latitude and longitude: the address is a convenience for the human to read, the coordinate is the proof that backs the audit.
Who it is for - and when not to use it
The module pays off for field teams doing external work, companies that need to audit physical presence on infrastructure tickets and managers who want to enrich GLPI data with geographic context without bolting on a separate tracking system.
It pays off little - or does not work - in two scenarios. A 100% internal or remote team, serving from its own desk with no travel, gains little: the recorded location will always be the same room. And an environment without HTTPS simply cannot use it, because the browser blocks geolocation outside a secure context. If that is your case, fix the certificate before considering the module.
Compatibility
- GLPI: 10.x and 11.x
- Plan: on demand (PAID)
- Plugin: NexTool 3.x or higher
Next step
Geolocation is one of the modules of NexTool, a modular plugin for GLPI. To find out whether it fits your field operation, talk to the team.
This content was produced with the aid of artificial intelligence and reviewed by the Nextool Solutions team.