Lastenboek
Functionele en technische omschrijving van de Kasticket2Peppol webtoepassing zoals die vandaag is opgebouwd.
Webapp + PWA
Registratie, proefperiode, upload en admin
Project
Doelstelling
De toepassing laat gebruikers toe om vanaf smartphone of desktop een foto op te laden, om te zetten naar PDF en te verzenden naar hun eigen e-mailadres, optioneel een Peppol/facturatie-adres en een beheeradres.
- Registratie, e-mailbevestiging en aparte aanmeldpagina zijn voorzien.
- Elke gebruiker heeft een eigen accountpagina om profiel- en Peppol-gegevens te beheren.
- Omdat de doelgroep zelfstandigen zijn, bevat elk gebruikersprofiel verplichte facturatiegegevens: voornaam, achternaam, straat, nr, bus, postnr, gemeente, telefoon, bedrijfsnaam en btw-nummer.
- Nieuwe gebruikers starten met een gratis proef van 3 uploads binnen 14 dagen.
- De beheerder beschikt over een adminomgeving voor gebruikersbeheer, supportinstellingen, e-mailwijzigingen en blokkering van Peppol-adressen.
Documentatie
Beschikbare handleidingen
- De publieke handleiding is de gebruikershandleiding voor eindgebruikers.
- Er is een aparte admin handleiding voor interne beheeracties.
- De admin handleiding is alleen zichtbaar voor een aangemelde admin.
Gebruikersrollen
Rollen en verantwoordelijkheden
Eindgebruiker
Registreert, meldt aan, uploadt foto's en beheert zijn eigen profiel.
Beheerder
Beheert gebruikers, proefperiodes, supportmail en geblokkeerde Peppol-adressen.
Functioneel
Hoofdfunctionaliteiten
Startpagina
Toont flyer, registratie, aanmelden, shortcut-pagina, prijsinformatie en accounttoegang.
Registratie
Aparte registratiepagina met e-mail, telefoon, gesplitste adresvelden, bedrijfsnaam, btw-nummer, optioneel Peppol-adres en wachtwoord, gevolgd door e-mailbevestiging.
Aanmelden
Aparte loginpagina met gebruikersnaam, wachtwoord en optie om automatisch aangemeld te blijven.
Uploaden
Na aanmelding kan de gebruiker een foto uploaden, laten converteren naar PDF en laten mailen.
Mijn account
Gebruiker kan telefoon, adres, bedrijfsnaam, btw-nummer, Peppol-adres, wachtwoord en de instelling `Sturen naar Peppol` aanpassen.
Documentatie
Publieke gebruikershandleiding voor eindgebruikers en aparte admin handleiding voor beheerders.
Businessregels
Beperkingen en controles
- Een gebruiker moet eerst zijn registratie bevestigen via e-mail voor upload mogelijk is.
- De gratis proef bestaat uit 3 uploads binnen 14 dagen na bevestiging.
- Na verloop van de proef blijft het account bestaan, maar uploaden vraagt dan betaalde toegang.
- De uploadpagina toont hoeveel uploads nog beschikbaar zijn en tot wanneer de proef loopt.
- Een gebruiker kan pas verzenden of een betalende formule starten wanneer het factuurprofiel volledig is.
- De backend controleert bij upload zowel de uploadlimiet als de geldigheid van de proef of betaalde toegang.
- Een Peppol-adres is uniek per gebruiker en kan niet tegelijk op meerdere accounts staan.
- Een gedeactiveerd Peppol-adres wordt server-side geblokkeerd voor hergebruik.
- Bij hergebruik van een geblokkeerd Peppol-adres verschijnt een melding met het supportadres: ticket-peppol@digisteps.be.
Admin
Beheermogelijkheden
- Aanmelden met aparte admin-sleutel.
- Overzicht van alle gebruikers met filter en zoekveld.
- Verlopen proefperiodes worden in admin expliciet aangeduid.
- Per gebruiker: uploadlimiet aanpassen of onbeperkte toegang geven.
- Per gebruiker: e-mailwijziging starten en wachtende e-mailwijziging annuleren.
- Per gebruiker: `Sturen naar Peppol` aan- of uitzetten.
- Per gebruiker: Peppol-adres deactiveren en blokkeren voor hergebruik.
- Support e-mailadres aanpassen voor blokkademeldingen.
- Geblokkeerde Peppol-adressen bekijken en desgewenst deblokkeren.
Techniek
Technische randvoorwaarden
Stack
PHP, JSON-opslag, SMTP-mailverzending, Imagick voor PDF-conversie.
Authenticatie
Gebruikerssessies, remember-me logica en aparte adminsessie met CSRF-bescherming.
Deploy
Werk in de hoofdmap en upload rechtstreeks naar hosting met juiste environment variabelen.
- Benodigde serverconfiguratie: admin-sleutel, SMTP-gegevens en schrijfbare dataopslag.
- De PHP-extensie `imagick` moet actief zijn voor omzetting van afbeelding naar PDF.
- De toepassing is mobiel bruikbaar en bevat PWA-bestanden zoals `manifest.json` en `service-worker.js`.
Acceptatie
Oplevering en test
Na elke wijziging of deploy wordt de controle uitgevoerd via de testchecklist.