Complete gids voor het integreren van GeoRex adresvalidatie in je Magento 2 webshop, inclusief module setup en checkout customization.
Magento 2 is één van de meest populaire e-commerce platforms. In deze uitgebreide tutorial laten we zien hoe je GeoRex integreert voor Nederlandse adresvalidatie in je checkout flow.
Module structuur
app/code/GeoRex/AddressValidation/βββ registration.phpβββ etc/β βββ module.xmlβ βββ config.xmlβ βββ adminhtml/system.xmlβ βββ di.xmlβββ Model/β βββ AddressValidator.phpβββ Controller/β βββ Ajax/β βββ Validate.phpβββ view/βββ frontend/βββ layout/βββ web/βββ js/
Module registratie
<?php\Magento\Framework\Component\ComponentRegistrar::register(\Magento\Framework\Component\ComponentRegistrar::MODULE,'GeoRex_AddressValidation',__DIR__);
API Service Class
<?phpnamespace GeoRex\AddressValidation\Model;use Magento\Framework\HTTP\Client\Curl;use Magento\Framework\App\Config\ScopeConfigInterface;use Magento\Framework\App\CacheInterface;class AddressValidator{private Curl $curl;private ScopeConfigInterface $scopeConfig;private CacheInterface $cache;private const CACHE_KEY = 'georex_api_token';private const TOKEN_LIFETIME = 540; // 9 minuten (token geldig 10 min)public function __construct(Curl $curl,ScopeConfigInterface $scopeConfig,CacheInterface $cache) {$this->curl = $curl;$this->scopeConfig = $scopeConfig;$this->cache = $cache;}private function getToken(): string{$token = $this->cache->load(self::CACHE_KEY);if (!$token) {$apiKey = $this->scopeConfig->getValue('georex/general/api_key',\Magento\Store\Model\ScopeInterface::SCOPE_STORE);$curl = new Curl();$curl->addHeader('X-API-Key', $apiKey);$curl->post('https://api.georex.nl/api/token', '');$response = json_decode($curl->getBody(), true);$token = $response['token'] ?? '';$this->cache->save($token, self::CACHE_KEY, [], self::TOKEN_LIFETIME);}return $token;}public function validate(string $postcode, string $houseNumber): ?array{$token = $this->getToken();$query = urlencode($postcode . ' ' . $houseNumber);$url = "https://api.georex.nl/address?postcode={$postcode}&huisnummer={$houseNumber}&token={$token}";$this->curl->get($url);$response = json_decode($this->curl->getBody(), true);// GeoJSON response verwerkenif (!empty($response['features'])) {$feature = $response['features'][0];$coords = $feature['geometry']['coordinates'];$props = $feature['properties'];return ['street' => $props['street'] ?? '','city' => $props['city'] ?? '','postcode' => $props['postcode'] ?? '','latitude' => $coords[1],'longitude' => $coords[0]];}return null;}}
Frontend integratie
Voeg JavaScript toe om de checkout te verrijken met live adresvalidatie.
Samenvatting
Met deze module heb je een solide basis voor Nederlandse adresvalidatie in Magento 2. Klanten krijgen direct feedback, en je verzamelt gegarandeerd correcte adresgegevens.
Gerelateerde artikelen

Geocoding voor e-commerce: betere checkout, minder retouren
Ontdek hoe geocoding je e-commerce checkout verbetert, bezorgkosten verlaagt en retouren door adresfouten voorkomt.
Lees meer
Geocoding in React/Next.js applicaties
Bouw een moderne geocoding ervaring in React met hooks, debouncing, autocomplete en MapLibre kaartintegratie.
Lees meer
Python scripts voor bulk adresverwerking
Verwerk duizenden adressen efficiΓ«nt met Python, Pandas en async requests. Complete scripts voor data cleaning en geocoding.
Lees meer