De eerlijke registratie

Hoe Odotur met wijzigingen omgaat

Voor bestuurders, werkgevers, accountants en belastingcontroleurs.

Een rit is een feit zodra hij is vastgelegd. Je vult hem aan; je overschrijft hem nooit. Elke wijziging is een nieuwe, gedateerde regel in de registratie, de geschiedenis blijft zichtbaar en wordt in je export afgedrukt.

In het kort

  • Wat de GPS heeft gemeten (tijden, begin- en eindpunt, afstand) wordt nooit bewerkt. Een verkeerde afstand krijgt een aparte correctieregel.
  • Elke bewaarde bewerking bewaart de oude waarde, de nieuwe waarde en het moment van de wijziging.
  • Na de wijzigingstermijn is voor een bewerking ook een reden nodig.
  • Een rit wissen laat hem vervallen: hij blijft doorgestreept in de registratie en de export staan, met de reden.
  • Gaten (GPS kwijt, app door de telefoon gestopt) worden vastgelegd en afgedrukt, niet verborgen.
  • De registratie controleert zichzelf bij het openen en vóór elke export, en de export drukt het resultaat af.

Wat er gebeurt als je iets wijzigt

Jij doet ditOdotur legt vastIn je export
Een doel, categorie, adres of ander veld invullen of wijzigenEen wijziging: veld, oude waarde, nieuwe waarde, wanneer. Binnen de wijzigingstermijn wordt geen reden gevraagd; daarna is een reden verplicht (Vergeten, Typefout, Verkeerde plaats of Anders, plus optioneel een tekst).De huidige waarde in de regel, en elke wijziging na de eerste keer bewaren in de bijlage met wijzigingen.
De km van een GPS-rit corrigerenEen aparte correctie (+ of - km, met een reden). De gemeten afstand blijft zoals hij was.De correctie naast de rit en in de bijlage met correcties. Totalen tellen haar mee.
Een rit wissenLaten vervallen, met een reden. De rit kan later worden hersteld, en ook dat wordt vastgelegd.Doorgestreept, met de reden. Vervallen ritten tellen nooit mee in totalen of tellers.
Een vergeten rit toevoegenEen handmatige rit, gemarkeerd met "ingevoerd op" en de datum waarop je hem invoerde.Gemarkeerd als Handmatig. Meer dan 7 dagen na de rit ingevoerd: "late invoer".
Een mogelijke rit invoerenEen handmatige rit uit het voorstel. Pas je de tijden aan, dan blijft het oorspronkelijke voorstel zichtbaar.Gemarkeerd als mogelijke rit.
Voortzetten na een te vroege stopEen koppeling tussen de twee delen.Eén rit met een pauzeregel; de km worden opgeteld.
Niets: de GPS was kwijt of de telefoon stopte de appEen gat, met de oorzaak. Na een onderbreking eindigt de rit op de laatst ontvangen positie; er wordt geen tijd of oorzaak verzonnen.In de bijlage met gaten. Geschatte km staan vermeld als geschat.
Een kilometerstand invoerenDe stand. Sluit die een interval af, dan een afstemming met het verschil tussen de kilometerstand en je vastgelegde km.Nederland: een correctierit, naar rato verdeeld. Andere landen: een notitie over het verschil, zonder km toe te wijzen. Een latere afstemming van hetzelfde interval vervangt de eerdere; beide worden afgedrukt.

Wijzigingstermijn: 7 dagen na het einde van de rit, 2 dagen in het Oostenrijkse profiel. De 2 dagen zijn een productkeuze voor "zeitnah", geen wettelijk veilige termijn. Bewerkingen binnen de termijn worden ook vastgelegd; ze hebben alleen geen reden nodig.

Een formulier dat je nog niet hebt bewaard, is geen regel. Elke keer Bewaren wel, ook als je een leeg veld voor het eerst invult.

  1. #1041GPS-rit vastgelegd 08:12-08:41, 23,4 km gemeten3 mrt 08:41prev 52ab… → 7c1e…
  2. #1042Wijziging Categorie: leeg → Zakelijk3 mrt 18:02prev 7c1e… → 0d94…
  3. #1043Wijziging Doel: leeg → Klantbezoek, Vejle3 mrt 18:02prev 0d94… → e61f…
  4. #1067Correctie +1,2 km, reden: GPS-afwijking12 mrt 09:15prev a3f9… → 4b20…
  5. #1088Vervallen een andere rit, reden: Dubbel14 mrt 17:40prev 4b20… → 91cc…
Voorbeeld van registratieregels, hashes ingekort. Elke regel bevat de hash van de regel ervoor. Regels #1044 tot en met #1066 horen bij andere ritten.

Waar je het ziet

  • In de app: elke rit heeft een scherm Geschiedenis en een korte bronregel: "GPS · vastgelegd 08:41", "Handmatig · ingevoerd 12 mrt" of "Late invoer".
  • In de PDF- en CSV-export: de ritregels, daarna bijlagen voor correcties, vervallen ritten, gaten, afstemmingen en notities over verschillen, en de bijlage met wijzigingen. Wijzigingen staan erin zoals ze waren op het moment van exporteren: een latere wijziging aan een oude rit verschijnt in latere exports.
  • Op elke PDF-pagina: pagina n van N, het tijdstip van de stand en de head-hash van de registratie. Een legenda legt afgelezen, afgeleide en onbekende kilometerstanden uit, de bronnen GPS, handmatig en mogelijke rit, en geschatte km.

Voor werkgevers, accountants en belastingcontroleurs

De registratie is een lijst van gebeurtenissen waaraan alleen kan worden toegevoegd, opgeslagen in een database op de telefoon van de gebruiker. De database zelf weigert een regel te wijzigen of te verwijderen, en een geautomatiseerde test doorzoekt de code van de app op elke opdracht die dat zou doen. Regels verdwijnen alleen via Alles wissen en het herstellen van een back-up, die de hele registratie vervangen (zie Eerlijke grenzen). Wat je als "rit" ziet, wordt opnieuw opgebouwd uit de gebeurtenissen.

  • Twee tijden per regel. Elke regel heeft occurred_at (wanneer het feit gebeurde) en recorded_at (wanneer het werd geschreven). Beide worden afgedrukt: een correctie voor maart die in april is ingevoerd, toont beide datums.
  • Eenheden. Afstanden worden opgeslagen als hele meters, tijden als milliseconden in UTC met de tijdzone bij het vastleggen, en geld in de kleinste munteenheid. Er wordt alleen afgerond voor weergave (0,1 km) en bij totalen, nooit bij opgeslagen feiten.
  • De hashketen. Elke regel slaat hash = SHA-256(prev_hash ‖ canonical JSON) op van het volgnummer, type, entiteit, entiteit-id, payload, occurred_at en recorded_at. prev_hash is de hash van de vorige regel als 64 hexadecimale tekens (64 nullen voor de eerste regel). Canonieke JSON volgt RFC 8785 (JSON Canonicalization Scheme), met tekst genormaliseerd naar Unicode NFC. Wie een opgeslagen regel wijzigt, wijzigt de hash ervan en breekt elke koppeling daarna.
  • De controle. De app berekent de keten op de achtergrond opnieuw bij het openen en nog eens vóór elke export. Bij een afwijking verschijnt "Logcontrole mislukt bij regel N", en de export drukt de breuk af. Exports drukken de head-hash af, en de CSV vermeldt bij elke regel het volgnummer en de hash.
  • Kilometerstanden worden afgedrukt als afgelezen (door de gebruiker ingevoerd), afgeleid (berekend tussen twee ingevoerde standen, alleen als er daartussen geen gat of mogelijke rit openstaat) of onbekend. Strikte profielen tonen bij elke afgeleide waarde een waarschuwing in de controlelijst. Of een afgeleide waarde aanvaardbaar is, bepaalt de lezer van de registratie.
  • Tarieven hebben een versie en een regel-id, die in elk rapport worden afgedrukt. Een bijgewerkte tarieventabel wijzigt nooit stilletjes een export die je al hebt gemaakt.
  • Duitsland. De opmaak Fahrtenbuch (DE) is een gesloten, chronologisch formulier voor het hele jaar, met de wijzigingsgeschiedenis in hetzelfde bestand. Een doel of zakenrelatie die meer dan 7 kalenderdagen na een rit is toegevoegd, wordt afgedrukt als "late invoer", tenzij datum, kilometerstand en bestemming aan het einde van de rit zijn vastgelegd. Of de registratie geschikt is voor de Fahrtenbuchmethode, bepalen de gebruiker en diens adviseur.

Eerlijke grenzen

  • De keten toont wijzigingen die via de app zijn gemaakt en ziet bewerkingen die haar breken. Iemand met volledige toegang tot het apparaat kan de hele keten van begin tot eind herschrijven, en de app kan dat niet voorkomen. De registratie laat zien hoe ze is bijgehouden; ze bewijst niet dat niemand haar had kunnen wijzigen.
  • Odotur is een onafhankelijk hulpmiddel voor rittenregistratie en is niet verbonden aan de Belastingdienst.
  • Alles wissen (Instellingen, bevestigen door WISSEN te typen) verwijdert de hele registratie van de telefoon, ook de geschiedenis. Het zijn jouw gegevens en is jouw keuze. Bewaar de exports of back-ups die je land je verplicht te bewaren.
  • Een back-up herstellen vervangt de registratie op de telefoon door die in de back-up, en de herstelde keten wordt gecontroleerd.
  • GPS-afstanden kunnen fout zijn, en een telefoon kan een app tijdens een rit stoppen. Daarom worden gaten, schattingen en correcties vastgelegd in plaats van verborgen.

Vragen over de opmaak van de registratie: odotur@benbasha.com.