Blog
RegulationSeptember 20, 20264 min

Importing HGS and OGS statements in minutes

Entering hundreds of monthly toll crossings by hand is neither feasible nor error-free. Uploading the statement as it is and linking crossings to the right vehicle and driver cuts the whole job down to a few minutes.

vF

vitaFleet Team

On fleet management

Importing HGS and OGS statements in minutes

Bridge and highway tolls are the expense item that produces the most rows and gets the least attention in a fleet. In a mid-sized fleet, the number of monthly toll crossings easily reaches the hundreds; entering these rows one by one both eats up days and inevitably produces errors. On top of that, linking each crossing to the right vehicle is a job of its own.

Upload the statement as it is

You upload the statement sent by PTT or by your bank (HGS and OGS are Turkey's electronic toll systems) as a file. You map the columns (date, tag or plate, toll plaza, amount) once; this mapping is saved, and you don't deal with it again for later statements. Every provider's format is different, but the mapping wizard overcomes this: no separate development is needed for each format.

Turkish formats are read correctly: date as dd.mm.yyyy, amount with a decimal comma (1.250,50). This detail looks small, but a misread decimal separator can change an amount a hundredfold. Fields such as plate and tax ID number (VKN) are recognized even when written with spaces.

Faulty rows are visible in the preview

A preview is shown before upload. Faulty rows are listed with their reasons, and only valid rows are imported. So a single broken row in a statement doesn't stop the entire upload, but it doesn't slip by unnoticed either.

From tag to vehicle, from assignment to driver

Every toll crossing that comes in is linked to the right vehicle through the HGS/OGS tag number on the vehicle card; because the tag stays the same even if the plate changes, matching doesn't go astray. By looking at the vehicle assignment on the date of the crossing, the driver who was at the wheel at that moment is found, and the crossing is associated with the person. If there is no assignment, the record is still written to the vehicle and the driver is left empty. No data is lost; only the missing part can be completed later.

Unmatched crossings

Toll crossings of vehicles with no tag defined stay unmatched. This usually means a vehicle that was recently bought and not yet defined, or a mistyped tag. These crossings are collected in a separate list; they are not silently ignored. When you define the tag, the crossing falls into place.

Uploading the same file twice

If you accidentally upload the same statement twice, records are not duplicated; crossings that were entered before are recognized and not written again. So cost isn't inflated.

Reflection in cost

Toll amounts appear in their own column in the vehicle operating cost report; together with fuel, maintenance and fines they enter the vehicle's cost per km. This way you read the real road cost of a vehicle or a route, including the bridge and highway share, from records rather than estimates. Which route has a heavy toll load emerges from the data accumulated over months.

Charging back to units and customers

Because crossings are linked to vehicle, driver and group, total toll expense can be read separately by unit, region or customer. Internal charge-back or invoicing the customer is produced from a single source with its history, not from scattered statement rows.

The rhythm of the month

Because the statement arrives monthly, the job settles into a monthly rhythm:

  • Upload the statement when it arrives; don't let it wait.
  • Look at the faulty rows in the preview.
  • Review unmatched crossings and define missing tags.
  • Evaluate toll cost monthly by vehicle and route.

Managing the tag number correctly

The foundation of this flow is that every vehicle's HGS/OGS tag number is defined on the vehicle card. The tag number is the matching key: a row in the statement is linked to a vehicle through this number. When you buy a new vehicle, entering the tag number in its record prevents that vehicle's crossings from staying unmatched in the first statement. When the tag moves to another vehicle, the record must be updated as well; otherwise crossings are written to the old vehicle.

Different providers, one method

Some fleets get their toll statement from PTT, some from their bank; some use both. Even though formats differ, the column-matching logic is the same. A template is saved for every provider you map once; next month it is enough to upload the file and confirm. So switching to a new provider doesn't require a separate development.

Making toll data useful

A toll is an expense item, but it is also a movement record: which vehicle passed which toll plaza on which day. When combined with vehicle assignment, this information also shows which driver worked on which route. For a fleet that calculates cost per trip, tying toll amounts to the route and the customer moves pricing from estimation to being based on real expense.

Frequently asked questions

What happens if I upload the same statement twice?

Crossings that were entered before are recognized and not duplicated.

What happens to the crossings of a vehicle with no tag defined?

They stay unmatched and appear in a separate list; when you define the tag, they fall into place.

How is the driver found if there is no assignment?

It can't be; the crossing is written to the vehicle and the driver stays empty. The assignment needs to be completed afterward.

Where do toll crossings appear?

In the vehicle operating cost report, in their own column; together with fuel and maintenance they enter the cost per km.

Step by step when the statement arrives

On the toll crossings page, you press the upload statement button. You select the file; the system reads the first row as the header and tries to match the columns automatically. You correct manually any column that wasn't matched or was matched wrongly. In the preview you see which rows will be imported and which are faulty. When you confirm, the crossings appear in the list; unmatched ones wait in a separate place.

Small problems you may encounter

  • If the date column came as text: the dd.mm.yyyy format is recognized, but other formats show up as errors in the preview.
  • If the plate has spaces or lowercase letters: this is recognized and doesn't break matching.
  • If you're unsure whether the amount uses a period or a comma: the Turkish format (1.250,50) is assumed; if you saved your file in the English format, check the amounts in the preview.
  • Rows with an empty tag or plate: collected in a separate list as unmatched rows.

None of these problems causes data loss; all of them are visible in the preview or in the unmatched list. The real precaution is to get the statement from the same source and in the same format every month.

Statement processing that used to take a day comes down to a few minutes in this setup. As important as the time saved is the reliable data that comes from linking every crossing to the right vehicle and driver.

vF

vitaFleet Team

vitaFleet is a fleet management system designed for fleets in Türkiye. It brings vehicles, maintenance, fuel, documents and cost together on a single screen.

Bring your fleet onto one screen.

Let us prepare a demo for you — we get back to you within one business day.