In veel gevallen, denkende vooral aan bedrijven in België met een belgisch klantenbestand, is dat helemaal niet noodzakelijk. Meestal is adressen kunnen opzoeken van België meer als genoeg. Om speciaal hiervoor naar een mega GIS provider zoals Google maps of Openstreetmaps te gaan is het meestal veel te groot en en liggen vooral de kosten een pak hoger. Om hier eigenlijk geen rekening mee te hoeven houden maken we gebruik van de GEOpunt en Adressenregister API van de Vlaamse overheid. Dit zijn GIS API’s die de overheid voorziet van up-to-date adressen data waar mee gezocht en gesuggereerd kan worden in België.

Om een praktisch voorbeeld te geven halen we 1 van onze projecten er bij: “Vlaams Steunpunt Vrijwilligerswerk - Vrijwilligersverzekering (VSVW)”.

De klant is met de vraag gekomen om voor vrijwilligers de mogelijkheid te kunnen geven om hun adres in te geven met een auto suggestie van enkel Vlaamse adressen. Weliswaar met een failsafe dat het moment dat de API niet beschikbaar zou zijn ze manueel hun adres in kunnen geven en dat deze via de adressenregister API gecontroleerd kan worden.

Voor de adressen suggestie hebben we de GEOpunt API gebruikt. Eveneens is dit een API die ze ter beschikking stellen waar autosuggestie endpoints al mee inbegrepen zijn. Op dit moment is deze nog werkende met CRAB. Weet wel, dat de CRAB ondersteuning beëindigd wordt eind 2023 (info). Nu hebben ze ons wel al laten weten dat ze de API gaan updaten zodat deze niet achterblijft op oude data en deze mee zal gekoppeld worden in de toekomst aan het Adressen register.

Geopunt

Zoals eerder vermeld hebben we voor de autosuggestie gebruik gemaakt van de GEOpunt API. Deze API voorziet een tal van endpoint die het mogelijk maken om deze autosuggestie te integreren volgens de noden van je applicatie.

https://loc.geopunt.be/swagger/ui/index#/

Voor ons was de beste toepassing om de V4 Location API te gebruiken aangezien dat we al bestaande functionaliteit moesten overzetten die dezelfde logica hanteerde als de return data van de endpoint.

Adressen register

Het adressenregister is de nieuwste toepassing van de Vlaamse overheid om adressen op te zoeken en valideren. Deze is volledig vernieuwd en van CRAB gehaald zodat het met de meest recente data kan werken. Jammer genoeg bezit deze nog niet de mogelijkheid om autosuggestie te doen van adressen. Wat wel voor ons belangrijk was is de validatie van postbus informatie. In de GEOpunt API is enkel het huisnummer dat je kan valideren maar het adressen register valideert eveneens de nodige bus/apt info.

In dit voorbeeld hebben we gebruik gemaakt van /v1/adresmatch

https://docs.basisregisters.dev-vlaanderen.be/docs/api-documentation.html

Toepassing

Concreet hebben we beide API’s op de volgende manier geïntegreerd. Autosuggestie van adressen wordt gedaan door de GEOpunt API. Deze vult de nodige velden in in het formulier.

Eenmaal dat de data submit wordt zal deze data gevalideerd worden door de Adressenregister API. Deze zal rekening houden met de postbus/apt info die je manueel hebt meegegeven.

Mocht je adres niet kloppen? Zal hij de nodige error validatie doen zodat de eindgebruiker weet dat zijn/haar adres niet bestaat en de nodige aanpassingen kan doen.

Adres suggesties en validatie is ondertussen iets wat bij ons al op meerdere projecten is ingebakken, zoals bijvoorbeeld bij Brugge TDMS. We hebben eveneens gebruik gemaakt van dezelfde functionaliteiten. Hier hebben we in Laravel Nova een Vue component gemaakt dat op basis van CRAB format adressen gaat suggereren en valideren om dan in het juiste formaat op te kunnen slagen in de database. Eveneens een goede use case dus om niet te moeten grijpen naar een grote GIS provider maar naar een data punt dichter bij huis.

Auteur: Noah Gillard
PHP / Laravel Developer
Noah Gillard AI generated Face

More insights

Cross-platform applicaties met React Native

Nog nooit was het ontwikkelen van native mobiele applicaties zo toegankelijk als vandaag. Bij Codana doen we dit door gebruik te maken het React Native, een open-source framework dat werd ontwikkeld door Meta.

Auteur: Jinse Camps
Architect | Analyst
Jinse Camps
dev

Laracon EU 2024

Een fantastisch leerrijke ervaring om met een hoop Laravel gepassioneerde mensen te inspireren! Iets wat niet gemist kan worden en heel veel voeling geeft met de community. Wat een top evenement! Wie zien we volgende edities? 😮

Auteur: Noah Gillard
PHP / Laravel Developer
Noah Gillard AI generated Face
laracon codana persoon

Een efficiënt datamanagementsysteem voor toerisme

Een TDMS of Tourist Data Management System, is simpelweg een platform dat data uit verschillende bronnen ophaalt, intern al dan niet automatisch verwerkt en deze gegevens terug aanbiedt aan externe platformen.

Auteur: Tom Van den Eynden
Web Architect | Coordinator
Tom Van den Eynden
laptop

Systemen voor gegevensbeheer in toerisme

In dit artikel verkennen we wat een TDMS is, waarom het essentieel is voor de toerisme-industrie, en hoe technologieën zoals Laravel en ElasticSearch het verschil kunnen maken. 

Auteur: Tom Van den Eynden
Web Architect | Coordinator
Tom Van den Eynden
tdms

Beveiliging van Laravel 101

In deze blogpost gaan we dieper in op een aantal veelvoorkomende Laravel beveiligingsfouten.

Auteur: Robbe Reygel
PHP developer
laravel

Test Driven Development - toepassing op een project

TDD, of voluit Test Driven Development, is een aanpak van ontwikkeling waarbij we vertrekken van het schrijven van tests. 

Auteur: Sarah Jehin
PHP developer
Sarah Jehin
development