📖 Officiële appgids
Alles over
Urenmaat
Van eerste uur tot betaalde factuur. Deze gids legt elke functie uit — van basisfuncties die gratis zijn tot geavanceerde mogelijkheden voor zzp'ers die samenwerken.
✓ Gratis basis
Uren · Klanten · Projecten · Facturen
Personal: PDF · Statistieken
Pro: Sync · Gebruikers · E-mail
Aan de slag
Installeren als app
Urenmaat is een Progressive Web App (PWA). Je kunt hem installeren op je telefoon, tablet of computer — geen app store nodig.
🖥
Chrome / Edge (aanbevolen)
Open mijnurenmaat.nl/app/ → klik op het installeer-icoontje (📥) rechts in de adresbalk → "Installeren".
📱
Android (Chrome)
Open de app in Chrome → tik op de drie stippen ⋮ → "Toevoegen aan beginscherm".
🍎
iPhone / iPad (Safari)
Open de app in Safari → tik op het deel-icoontje ⬆ → "Zet op beginscherm".
🌐
Andere browser
Gebruik de app gewoon via de browser op mijnurenmaat.nl/app/. Alle functies werken ook zonder installatie.
✓
Na installatie werkt de app ook volledig offline. Je data wordt lokaal opgeslagen — er wordt niets naar onze servers gestuurd.
Aan de slag
Eerste gebruik
In 4 stappen heb je jouw eerste uur geregistreerd en een factuur klaarstaan.
1
Stel je bedrijfsgegevens in
Klik op het tandwiel ⚙️ rechtsboven → vul je bedrijfsnaam, adres, KVK, BTW-nummer en standaard uurtarief in. Deze gegevens verschijnen op je facturen.
2
Voeg een klant toe
Ga naar Klanten → "+ Klant toevoegen". Vul naam, adres en eventueel een klantspecifiek uurtarief in. Gratis versie: max. 2 klanten.
3
Maak een project aan
Ga naar Projecten → "+ Project toevoegen" → koppel het aan de klant. Optioneel: stel een projectspecifiek uurtarief in dat afwijkt van het klant-tarief.
4
Registreer uren en maak een factuur
Ga naar Uren → "+ Uren toevoegen" → kies het project, vul uren en omschrijving in. Daarna: Facturen → "+ Factuur aanmaken" → selecteer de open uren → klaar.
Aan de slag
Licentie activeren
Je hebt een licentiecode ontvangen per e-mail na je aankoop. Activeer hem als volgt:
1
Open de licentie-invoer
Klik op het sleutelicoon 🔑 rechtsboven in de app.
2
Voer je code in
Voer je licentiecode in — formaat: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX. Kopieer de code uit je e-mail om typefouten te voorkomen.
3
Klik op Activeren
Zorg dat je internet hebt. De code wordt direct geverifieerd via mijnurenmaat.nl. Na activatie zijn de nieuwe functies meteen beschikbaar.
⚠
Een licentiecode is persoonsgebonden en geldt voor het aantal apparaten dat bij jouw plan hoort (Personal: 2, Pro: 5, Lifetime: 10). Deel je code niet met anderen.
De app
Dashboard
Het dashboard is het centrale overzicht. Het laadt automatisch bij opstarten.
⏱
Uren deze maand
Totaal aantal geregistreerde uren in de huidige kalendermaand.
💶
Omzet deze maand
Berekend als uren × uurtarief, excl. BTW. Alle open en gefactureerde uren worden meegeteld.
📄
Open facturen
Totaalbedrag van alle facturen met status "concept" of "verzonden".
🔴
Niet gefactureerd
Uren die al geregistreerd zijn maar nog niet op een factuur staan. Dit is jouw openstaande opdrachtenwaarde.
Onderaan het dashboard zie je de 8 meest recente uurregistraties en openstaande facturen (max. 6). Klik op een factuur om hem te bekijken.
De app
Uren registreren
Alle geregistreerde uren staan hier, gesorteerd van nieuw naar oud. Elk uur is gekoppeld aan een project.
🕐 Uur toevoegen
1
Klik op "+ Uren toevoegen"
Of klik op de "+ Uren toevoegen" knop op het dashboard.
2
Vul de gegevens in
Datum — standaard vandaag.
Project — kies uit je actieve projecten. Het uurtarief wordt automatisch ingevuld.
Omschrijving — verschijnt later op de factuur.
Uren — in decimalen, bijv. 1.5 voor anderhalf uur.
Uurtarief — automatisch van het project, aanpasbaar per uur.
Status — Open (nog te factureren) of Gefactureerd.
📋 Bewerken en verwijderen
Klik op ✏️ om een uur te bewerken, op 🗑 om te verwijderen. Gefactureerde uren zijn niet meer bewerkbaar via de factuur — pas ze direct aan in het uren-overzicht en koppel ze opnieuw aan een factuur.
💡
De status "gefactureerd" wordt automatisch gezet zodra je uren aan een factuur koppelt. Je kunt hem handmatig terugzetten naar "open" als je een factuur verwijdert.
De app
Timer
De ingebouwde timer meet je werktijd live en slaat het resultaat direct op als uurregistratie.
1
Open de timer
Klik op het ⏱ icoontje rechtsboven in de topbalk, of klik op de "⏱ Timer" knop op de Uren-pagina.
2
Kies een project en omschrijving
Selecteer het project waaraan je werkt. Vul optioneel een omschrijving in — dit wordt de omschrijving van de uurregistratie.
3
Start, pauzeer, hervat
Klik op ▶ Start. De timer loopt ook als je naar een andere pagina navigeert — het groene bolletje in de topbalk blijft zichtbaar. Klik op ⏸ Pauzeren om te stoppen, ▶ Hervatten om door te gaan.
4
Opslaan als uurregistratie
Klik op "✓ Opslaan als uren". De tijd wordt automatisch afgerond op kwartieren (bijv. 1u 23m → 1.5u). De uurregistratie verschijnt direct in je urenoverzicht.
⚠
De timer stopt als je de browser sluit of de pagina ververst. Sla tijdig op als je een lange sessie hebt. De data gaat niet verloren — alleen de timer stopt.
De app
Klanten
Beheer al je opdrachtgevers. Klantgegevens verschijnen automatisch op facturen.
| Veld | Beschrijving | Op factuur? |
| Bedrijfsnaam / Naam | Naam van de klant of het bedrijf | ✓ |
| Contactpersoon | Naam van je vaste contactpersoon | ✓ |
| E-mail | E-mailadres van de klant | ✓ |
| Telefoon | Telefoonnummer (optioneel) | — |
| Standaard uurtarief | Wordt automatisch gebruikt bij nieuwe uren voor deze klant | — |
| Adres / Postcode / Plaats | Factuuradres van de klant | ✓ |
| BTW-nummer | BTW-nummer van de klant (bijv. voor BTW-verlegd) | ✓ |
| KVK-nummer | KVK-nummer van de klant | ✓ |
| Notitie | Interne notitie, niet zichtbaar op facturen | — |
⚠
In de gratis versie kun je maximaal 2 klanten aanmaken. Upgrade naar Personal voor onbeperkt klanten.
In het klantenoverzicht zie je per klant direct het totaal aantal uren, projecten en omzet.
De app
Projecten
Elk project is gekoppeld aan een klant. Uren worden altijd per project geregistreerd.
🟢
Actief
Het project loopt. Je kunt uren registreren en de timer starten voor dit project.
⏸
Gepauzeerd
Tijdelijk inactief. Verschijnt niet in de timer-selectie maar de data blijft bewaard.
✅
Afgerond
Project is klaar. Data blijft zichtbaar in statistieken en facturen.
💡
Stel een projectspecifiek uurtarief in als een opdracht een ander tarief heeft dan je standaard klant-tarief. Dit tarief wordt automatisch gebruikt bij uren voor dit project.
⚠
Gratis versie: maximaal 5 projecten. Personal+: onbeperkt.
De app
Facturen
Maak professionele facturen op basis van je geregistreerde uren. Open uren worden automatisch gekoppeld.
📄 Factuur aanmaken
1
Klik op "+ Factuur aanmaken"
Kies een klant. De app toont automatisch alle open uren voor die klant — uren die nog niet gefactureerd zijn.
2
Selecteer de uren
Vink de uren aan die op deze factuur moeten. Je kunt kiezen welke uren je nu factureert en welke je bewaart voor later.
3
Stel factuurnummer en BTW in
Het factuurnummer wordt automatisch opgehoogd. Kies het BTW-tarief: 21%, 9% of 0% (vrijgesteld / BTW-verlegd). Voeg een optionele notitie toe zoals betalingstermijn.
4
Factuur bekijken en exporteren
Klik op 👁 om de factuur te bekijken. Druk op 🖨 Afdrukken of 📄 PDF (Personal+) om de factuur op te slaan of te versturen.
📋 Factuurstatussen
| Status | Betekenis |
| Concept | Aangemaakt maar nog niet verzonden naar de klant |
| Verzonden | Factuur is naar de klant gestuurd, betaling verwacht |
| Betaald | Klant heeft betaald — telt niet meer als "open" |
| Verlopen | Vervaldatum verstreken zonder betaling |
⚠
Gratis versie: maximaal 5 facturen totaal. Personal+: onbeperkt. PDF-export vereist een Personal-licentie.
De app
Statistieken Personal
Visuele overzichten van je omzet, uren en materiaalkosten. Vereist een Personal of hogere licentie.
📊
Omzet per maand
Staafgrafiek van de laatste 6 maanden. Berekend op basis van uren × uurtarief.
🍩
Omzet per klant
Donut-grafiek die laat zien welke klanten het meest opleveren.
📈
Materiaalkosten per maand
Lijndiagram van agenda-gebaseerde materiaalkosten. Vereist dat je materialen aan agenda-events koppelt.
Plannen & Kosten
Agenda & Planner
Plan werkdagen, koppel materiaaltags en volg je materiaalkosten automatisch per dag, maand en jaar.
📅 Een dag plannen
1
Klik op een dag in de kalender
Of klik op "+ Event toevoegen". Kies een datum, vul een titel in (bijv. "Werken bij klant") en stel een tijdstip van/tot in.
2
Koppel materiaaltags
Selecteer welke materialen je die dag gebruikt. Elke tag heeft een kostprijs die je instelt bij Materialen. De totale kosten worden direct berekend en getoond.
3
Kosten worden automatisch opgeteld
Het dashboard toont direct de kosten van die dag. Het totaal wordt per maand en per jaar bijgehouden in de Statistieken.
📅
Kosten deze maand
Totaal van alle materiaaltags die deze maand aan events gekoppeld zijn.
📊
Kosten dit jaar
Cumulatief totaal van alle materiaalkosten in het huidige kalenderjaar.
🏷
Per dag in kalender
Onder elk event in de kalender staat direct het kostenbedrag van die dag.
💡
Je kunt meerdere events op één dag aanmaken. Elk event heeft zijn eigen tags en kostprijs. Gebruik dit voor ochtend/middag of voor verschillende locaties op één dag.
Plannen & Kosten
Materialen
Maak materiaaltags aan met een vaste kostprijs. Koppel ze aan agenda-events om kosten bij te houden.
🏷 Materiaal toevoegen
1
Klik op "+ Materiaal toevoegen"
Vul de naam in: bijv. Egaline, Lijm, Verf blik.
2
Stel de kostprijs in
Voer de kosten per eenheid in (bijv. € 12,50) en de eenheid (emmer, kg, rol, stuks). Dit bedrag wordt opgeteld elke keer dat je dit materiaal aan een event koppelt.
3
Kies een kleur
De kleur maakt het materiaal herkenbaar in de agenda-tags. Kies een kleur die past bij het materiaal.
💡
Op de Materialen-pagina zie je per materiaal hoeveel keer het gebruikt is en wat de totale kosten zijn over alle events. Zo zie je direct welk materiaal de grootste kostenpost is.
Samenwerken
Cloud Sync Pro
Synchroniseer je data tussen meerdere apparaten via een eigen server. Jouw data gaat nooit naar onze servers.
☁️ Instellen
1
Ga naar Cloud Sync in de sidebar
Vereist een actieve Pro of Lifetime licentie.
2
Kies modus: Eigen server
Vul de URL in van je sync-endpoint, bijv. https://jouwnaam.nl/urenmaat-sync/?action=push.
3
Optioneel: gebruikersnaam + wachtwoord
Als je de Sync API gebruikt (zie hieronder), vul dan je gebruikersnaam en wachtwoord in voor HTTP Basic Auth.
4
Klik op Opslaan
De app synchroniseert automatisch bij elke wijziging. Het groene bolletje 🟢 in de sidebar geeft aan dat de sync actief en geslaagd is.
✓
De app pusht bij elke wijziging en haalt automatisch de nieuwste versie op bij het opstarten. Als de server nieuwere data heeft, vraagt de app of je die wilt laden.
Samenwerken
Gebruikers & permissies Pro
Maak sub-gebruikers aan die de app kunnen gebruiken met eigen inloggegevens en beperkte rechten. Vereist een actieve Cloud Sync-configuratie.
👤 Gebruiker toevoegen
1
Ga naar Gebruikers
Klik op "⟳ Vernieuwen" om bestaande gebruikers te laden (vereist actieve sync-verbinding).
2
Klik op "+ Gebruiker toevoegen"
Vul gebruikersnaam, weergavenaam en wachtwoord in. De gebruikersnaam wordt de mapnaam op de server.
3
Stel permissies in
Kies per module (Uren, Klanten, Projecten, Facturen, Agenda) welke acties de gebruiker mag uitvoeren: Lezen, Aanmaken, Wijzigen, Verwijderen.
🔐 Permissie-overzicht
Eigenaar
Volledige toegang tot alles. Kan gebruikers aanmaken en permissies wijzigen.
Medewerker
Alleen acties waarvoor permissie gegeven is. Kan nooit elkaars data wijzigen of verwijderen — wel inzien indien toegestaan via de Sync API.
Geblokkeerd
Geen toegang tot die module. Knoppen zijn zichtbaar maar uitgeschakeld met een melding.
💡
Permissies worden opgeslagen op de server. Ze zijn van kracht zodra de gebruiker de app opent of de sync vernieuwd. De Sync API (zie hieronder) biedt aanvullende mogelijkheden voor de baas om data van alle medewerkers samen in te zien.
Samenwerken
Sync API — voor de baas
De Sync API is een zelf-te-hosten PHP-script dat je op je eigen server plaatst. Elke medewerker synchroniseert naar jouw server, en jij kunt als baas alle data samen inzien.
🔌 Urenmaat Sync API v1.0
De complete zelfgehoste sync-API: medewerkers krijgen elk een eigen map, de baas ziet alles samen, permissies zijn instelbaar per module. Geen data op onze servers.
⬇ Download Sync API (ZIP)
📖 Lees de README
📦 Wat zit er in het ZIP-bestand?
📄
index.php
Het hart van de API. Bevat alle endpoints. Upload dit bestand naar je server — je hoeft er niets in te wijzigen.
⚙️
config.php
Hier stel je je licentiecode, de baas-gebruiker en alle medewerkers in met wachtwoorden en permissies.
🛡
.htaccess
Blokkeert directe toegang tot alle data-bestanden en forceert HTTPS.
📖
README.md
Volledige documentatie met installatiestappen, alle endpoints en curl-voorbeelden.
🚀 Installatie in 5 stappen
1
Upload de bestanden naar je server
Zet index.php, config.php en .htaccess in een map op je server, bijv. /urenmaat-sync/. De /data/ map wordt automatisch aangemaakt.
2
Stel config.php in
Open config.php en vul in:
• Je licentiecode ($licenseKey)
• Een sterk wachtwoord voor de baas ($users['baas'])
• Elke medewerker met naam, wachtwoord en permissies
3
Test de API
Ga in je browser naar https://jouwnaam.nl/urenmaat-sync/?action=ping. Je ziet een JSON-response met "status":"online" en "license_valid":true.
4
Stel in bij elke medewerker
Elke medewerker opent de Urenmaat-app → Cloud Sync → modus: Eigen server.
URL: https://jouwnaam.nl/urenmaat-sync/?action=push
Gebruikersnaam + wachtwoord uit config.php.
Klik Opslaan — de app synchroniseert automatisch.
5
Bekijk het overzicht als baas
Als baas haal je gecombineerde data op via:
GET https://jouwnaam.nl/urenmaat-sync/?action=overzicht
met je baas-wachtwoord. Filter op module: &module=uren, &module=facturen, etc.
🗂 Mappenstructuur na installatie
/urenmaat-sync/
index.php ← API (niet aanpassen)
config.php ← Jouw instellingen
.htaccess ← Beveiliging
/data/ ← Automatisch aangemaakt
/jan/
urenmaat.json ← Jans data
/backups/ ← Automatische backups
/piet/
urenmaat.json
/.perms/ ← Dynamische permissies (via API)
/.prullenbak/ ← Verwijderde data (herstelbaar)
sync.log ← Alle sync-activiteit
🔌 Beschikbare endpoints (samenvatting)
| Endpoint | Methode | Wie | Beschrijving |
?action=ping | GET | Iedereen | API-test en licentiecheck |
?action=push | POST | Medewerker | Eigen data uploaden naar server |
?action=pull | GET | Medewerker / Baas | Data ophalen (eigen of van iemand anders) |
?action=status | GET | Medewerker / Baas | Wie is actief, wanneer laatste sync |
?action=overzicht | GET | Baas | Gecombineerde data van alle medewerkers |
?action=perms | POST | Baas | Permissies van een medewerker wijzigen |
?action=verwijder | DELETE | Baas | Medewerker-data naar prullenbak |
?action=log | GET | Baas | Synchronisatielog bekijken |
✓
Medewerkers kunnen nooit elkaars data wijzigen of verwijderen. Ze kunnen elkaars data alleen inzien als de baas dit toestaat via gedeeld_met in config.php.
Overig
Instellingen
Open instellingen via het tandwiel ⚙️ rechtsboven.
| Instelling | Beschrijving |
| Bedrijfsnaam | Verschijnt als afzender op je facturen |
| KVK-nummer | Verplicht op facturen in Nederland |
| BTW-nummer | Verplicht als je BTW-plichtig bent |
| Adres | Volledig adres voor op facturen |
| E-mail | Jouw e-mailadres op facturen |
| IBAN | Jouw bankrekeningnummer op facturen |
| Standaard uurtarief | Wordt automatisch gebruikt als geen klant- of projecttarief ingesteld is |
| Standaard BTW % | Wordt vooraf ingevuld bij nieuwe facturen (21%, 9% of 0%) |
| Volgend factuurnummer | Wordt automatisch opgehoogd na elke factuur |
| Betalingstermijn | Aantal dagen tot vervaldatum (standaard: 30 dagen) |
Overig
Backup & herstel
Al je data wordt opgeslagen in je browser (localStorage). Maak regelmatig een backup als JSON-bestand.
💾
Backup maken
Instellingen → "💾 Backup JSON". Sla het bestand op een veilige plek op (bijv. Dropbox, harde schijf).
📂
Backup laden
Instellingen → "📂 Laad JSON". Huidige data wordt overschreven — maak eerst een backup van de huidige data.
📱
Overzetten naar ander apparaat
Maak een backup op het oude apparaat, kopieer het JSON-bestand, laad het op het nieuwe apparaat.
🗑
Alles wissen
Instellingen → "🗑 Alles wissen". Niet ongedaan te maken — maak altijd eerst een backup!
⚠
Wanneer je je browser cache wist (via browserinstellingen), kan je Urenmaat-data ook verloren gaan. Maak daarom regelmatig een JSON-backup en bewaar die buiten de browser.
Overig
Licentie-overzicht
Overzicht van alle functies per licentieniveau.
| Functie |
Gratis |
Personal |
Pro |
Lifetime |
| Basis |
| Uren registreren | ✓ | ✓ | ✓ | ✓ |
| Timer (basis) | ✓ | ✓ | ✓ | ✓ |
| JSON backup & herstel | ✓ | ✓ | ✓ | ✓ |
| Agenda & planning | ✓ | ✓ | ✓ | ✓ |
| Materialen & kosten | ✓ | ✓ | ✓ | ✓ |
| Klanten (max 2) | ✓ | — | — | — |
| Projecten (max 5) | ✓ | — | — | — |
| Facturen (max 5) | ✓ | — | — | — |
| Personal — €14,95/jaar |
| Klanten (onbeperkt) | — | ✓ | ✓ | ✓ |
| Projecten (onbeperkt) | — | ✓ | ✓ | ✓ |
| Facturen (onbeperkt) | — | ✓ | ✓ | ✓ |
| PDF factuur exporteren | — | ✓ | ✓ | ✓ |
| CSV / Excel export | — | ✓ | ✓ | ✓ |
| Statistieken & grafieken | — | ✓ | ✓ | ✓ |
| Dark mode | — | ✓ | ✓ | ✓ |
| BTW-instellingen aanpassen | — | ✓ | ✓ | ✓ |
| Timer geavanceerd (pauzeer) | — | ✓ | ✓ | ✓ |
| Pro — €29,95/jaar |
| Cloud Sync (eigen endpoint) | — | — | ✓ | ✓ |
| Gebruikersbeheer & permissies | — | — | ✓ | ✓ |
| Factuur e-mailen | — | — | ✓ | ✓ |
| Terugkerende facturen | — | — | ✓ | ✓ |
| Meerdere valuta | — | — | ✓ | ✓ |
| Uurtarief per klant | — | — | ✓ | ✓ |
| Prioriteit support | — | — | ✓ | ✓ |
| Sync API (baas-overzicht) | — | — | ✓ | ✓ |
| Lifetime — €59,95 eenmalig |
| Alle toekomstige functies | — | — | — | ✓ |
| Levenslang geldig | — | — | — | ✓ |
| Activaties | 1 | 2 | 5 | 10 |