eIDPlugin
← Terug naar FilemakerLab.be

De Belgische identiteitskaart rechtstreeks in FileMaker

Een plug-in voor FileMaker Pro op macOS en Windows die de contactchip van de Belgische identiteitskaart uitleest via een gewone kaartlezer. Achternaam, voornamen, geboortedatum en -plaats, geslacht, adres met postcode en gemeente, nationaliteit, kaartnummer, vervaldatum, rijksregisternummer en de pasfoto — in één functieaanroep, als JSON.

Geschreven voor FileMaker-ontwikkelaars. Eén berekening in je script, en de velden staan ingevuld. Geen OCR, geen foto's van kaarten, geen overtypwerk — niet aan de balie, niet bij het onthaal, niet bij een inschrijving.

Download gratis Koop een licentie € 99 eenmalig, incl. btw · alle Macs en pc's van je bedrijf

Tien minuten gratis proberen per start van FileMaker — zonder registratie, zonder proefsleutel.

Wat je nodig hebt

Een Mac of pc, FileMaker Pro en een kaartlezer van een vijftiental euro. Meer is er niet nodig; de plug-in praat rechtstreeks met de lezer en heeft geen internet, geen server en geen account nodig.

  • macOS of Windows

    macOS 12 Monterey of nieuwer, op Apple-silicium en op Intel. Of Windows 10 of 11, 64-bit. Beide gebruiken de kaartlezerlaag die in het besturingssysteem zelf zit — PCSC op de Mac, PC/SC op Windows.

  • FileMaker Pro

    Op de Mac — macOS 12 Monterey of hoger — getest op zeven versies: FileMaker Pro 26 (2026), 22 (2025), 21 (2024), 20 (2023), 19, 18 en 17. Op Windows getest op FileMaker Pro 22 (2025). Gebouwd tegen de Claris Plug-In SDK 26, en werkt terug tot de plug-in-API van versie 15.

  • Kaartlezer

    Elke PC/SC-kaartlezer die je systeem herkent. Getest met de Sitecom MD-1002 en de Xssive CR02, allebei rond de € 15.

  • Identiteitskaart

    De Belgische eID, oud model of nieuw. De contactchip wordt gelezen — de kaart gaat dus in de lezer, niet ertegen.

Die zeven versies zijn stuk voor stuk op een Mac geprobeerd, niet afgeleid uit een tabel. Let wel op het verschil tussen de twee eisen hierboven: de FileMaker-versie mag oud zijn, de macOS-versie niet — de plug-in vraagt macOS 12 Monterey of nieuwer. Draai je FileMaker 17 op een Mac uit dezelfde tijd, dan is het je besturingssysteem dat in de weg zit, niet FileMaker.

Twijfel je of het bij jou werkt? Installeer de plug-in en roep EID_Readers op. Krijg je de naam van je lezer te zien, dan werkt de rest ook. Dat kost je vijf minuten en je hoeft er niets voor te betalen.

Eerst downloaden, dan pas beslissen

De plug-in is een gewone gratis download. Er zit niets uit, er is geen proefversie met minder functies, en je hoeft geen account te maken of een sleutel aan te vragen. Wat je downloadt is de volledige plug-in.

  • Voorbeeldbestand meteen openen

    Open eIDPlugin_Demo.fmp12 uit de download, steek een kaart in de lezer en klik op read eID. Dat is de snelste manier om te zien of je lezer werkt.

  • Downloaden en installeren

    Op de Mac: zet macOS/eIDPlugin.fmplugin in ~/Bibliotheek/Application Support/FileMaker/Extensions/. Op Windows: zet Windows/eIDPlugin.fmx64 in de map Extensions naast FileMaker Pro. Sluit FileMaker daarna helemaal af en start het opnieuw — een plug-in wordt alleen bij het opstarten geladen.

  • Tien minuten per keer

    Zonder sleutel leest EID_Read tien minuten lang kaarten, gerekend vanaf de start van FileMaker. Daarna geeft die functie een nette foutmelding en herstart je gewoon FileMaker om opnieuw tien minuten te krijgen. Er wordt niets op je schijf bijgehouden.

  • Alles kunnen uitproberen

    EID_Readers, EID_Version en EID_License blijven altijd werken, ook zonder licentie. Je kunt dus rustig nagaan of je kaartlezer herkend wordt vóór je iets koopt.

Download gratis

Je koopt dus geen software maar het opheffen van die tien minuten. Bevalt het je niet, dan gooi je het bestand weg en ben je niets kwijt.

Met een werkend voorbeeldbestand erbij

In de download zit eIDPlugin_Demo.fmp12: een FileMaker-bestand met alle velden, één knop en het script dat je hierboven zag. Kaart in de lezer, klikken, klaar — je hoeft niets te bouwen om te weten of het werkt. Het toont ook de versie en hoeveel proeftijd er nog is.

Het meegeleverde demobestand in FileMaker Pro, met alle velden en de knop read eID

Drie stappen, meer is het niet

  1. 1

    Installeren

    De .fmplugin in de Extensions-map zetten en FileMaker herstarten. De vijf functies staan daarna gewoon in het berekeningsvenster.

  2. 2

    Kaart inlezen

    Kaart in de lezer, en EID_Read oproepen in je script. De plug-in praat rechtstreeks met de lezer en geeft één JSON terug.

  3. 3

    Velden invullen

    Met JSONGetElement haal je eruit wat je nodig hebt. De pasfoto komt als base64 en gaat met Base64Decode zo in een containerveld.

Wat je terugkrijgt

Altijd JSON, ook wanneer er iets misgaat, en altijd met een veld error. Zo hoeft je script maar één vorm te kennen: is error leeg, gebruik de rest. De sleutels staan in het Engels — surname is de achternaam, givenNames de voornamen, nationalNumber het rijksregisternummer, cardNumber het kaartnummer en photo de pasfoto.

Resultaat van EID_Read
{
  "error": ,
  "cardNumber": ,
  "surname": ,
  "givenNames": ,
  "dateOfBirth": ,
  "placeOfBirth": ,
  "gender": ,
  "nationality": ,
  "validUntil": ,
  "nationalNumber": ,
  "street": ,
  "postalCode": ,
  "municipality": ,
  "photo": 
}

// en bij een fout, dezelfde vorm:
{
  "error": ,
  "errorDetail": 
}
Ontleden in je FileMaker-script
Set Variable [ $json ; EID_Read ]

If [ JSONGetElement ( $json ;  ) ]
    Show Custom Dialog [
        JSONGetElement ( $json ;  ) ]
    Exit Script []
End If

Set Field [ eIDPlugin::surname ;
    JSONGetElement ( $json ;  ) ]
Set Field [ eIDPlugin::givenNames ;
    JSONGetElement ( $json ;  ) ]
Set Field [ eIDPlugin::street ;
    JSONGetElement ( $json ;  ) ]
Set Field [ eIDPlugin::postalCode ;
    JSONGetElement ( $json ;  ) ]
Set Field [ eIDPlugin::municipality ;
    JSONGetElement ( $json ;  ) ]

// de pasfoto rechtstreeks in een containerveld
Set Field [ eIDPlugin::photo ;
    Base64Decode (
        JSONGetElement ( $json ;  ) ;
         ) ]

Dit is letterlijk het script uit eIDPlugin_Demo.fmp12, het voorbeeldbestand dat met de download meekomt. De veldnamen zijn dezelfde als de JSON-sleutels, zodat je niets hoeft te vertalen. Let op de controle op error bovenaan: staat die er niet, dan vult een mislukte lezing een leeg record zonder dat je het merkt.

De gegevens komen opgekuist binnen, niet zoals de kaart ze aanlevert. De chip zet er opvulspaties en nulbytes bij, schrijft de geboortedatum als 08 AUG 1964 en hangt na een gemeentefusie de vroegere gemeente aan de straatnaam: Waregemsesteenweg(KRU) 80. Dat is voor de post, niet voor een klantenbestand — en het breekt je zoeken, sorteren en ontdubbelen. De plug-in haalt het eruit en zet de geboortedatum in dezelfde vorm als de vervaldatum.

Vijf functies

  • EID_Read( { reader } )

    Leest de kaart en geeft alle velden als JSON, met de pasfoto als base64. Zonder argument wordt de eerste lezer gebruikt.

  • EID_Readers

    De aangesloten kaartlezers, één per regel. Leeg betekent dat het systeem geen lezer ziet — de eerste vraag bij elk probleem.

  • EID_Version

    De versie van de plug-in, handig in een foutmelding of een infoscherm.

  • EID_Register( key )

    Zet de licentie aan voor deze sessie. Eén argument: de sleutel draagt de naam waarop hij staat.

  • EID_License

    De licentietoestand in gewone taal — geregistreerd op naam van wie, of hoeveel proeftijd er nog over is.

Roep EID_Read op vanuit een script, achter een knop. Elke oproep is een volledig gesprek met de chip en duurt ongeveer een seconde. In een berekeningsveld, een onbewaarde berekening of een Watch-expressie in de Data Viewer wordt de kaart daardoor telkens opnieuw gelezen, en dat maakt FileMaker traag. De vier andere functies zijn goedkoop en mag je overal gebruiken.

Waarom zo gebouwd

  • Niets verlaat je machine

    De plug-in praat rechtstreeks met de kaartlezer. Geen server, geen API, geen account, geen internetverbinding. De gegevens van de kaart gaan van de lezer naar jouw bestand en nergens anders heen. Dat scheelt je onder de AVG (GDPR) een verwerker en een verwerkersovereenkomst: er is geen derde partij die de identiteitsgegevens van je bezoekers te zien krijgt.

  • Bewezen kaartlogica

    Dezelfde code die in eIDRent op echte kaarten draait, inclusief de correctie die daar een afgekapte pasfoto veroorzaakte. Geen nieuwe implementatie van het BELPIC-protocol.

  • Eén antwoordvorm

    Ook een fout komt terug als JSON, met hetzelfde veld error. Je script hoeft geen twee formaten te kennen, en een lege lezer is geen berekeningsfout maar een toestand van de balie.

  • Eén sleutel, Mac én pc

    De licentie staat op naam van je bedrijf en geldt op elke machine waar je ze installeert, Mac of Windows. Een nieuwe machine of een herinstallatie verandert daar niets aan.

  • Eerst proberen

    Tien minuten per start van FileMaker, zonder sleutel en zonder registratie. Genoeg om te zien of je lezer meedoet en of het resultaat je bevalt.

  • Twee manieren om te registreren

    Via Instellingen → Plug-Ins → Configure, één keer per machine. Of met EID_Register in je opstartscript, als je de sleutel liever in de oplossing meegeeft.

De kaartlezer

Elke PC/SC-lezer die je systeem herkent, werkt. Deze twee zijn getest en kosten samen minder dan een uur van je tijd.

met kabelSitecom MD-1002
  • Aansluiting USB-C, kabel
  • Prijs ± € 15
  • Te koop bij MediaMarkt
zonder kabelXssive CR02
  • Aansluiting USB-C-dongle
  • Prijs ± € 15
  • Te koop bij bol.com

Heb je al een eID-lezer liggen van je bank of je boekhouder, probeer die dan gewoon: roep EID_Readers op en kijk of hij in de lijst staat.

Wat het niet doet

  • Niet op de server

    De plug-in leest een kaart die in een lezer zit, dus ze hoort thuis op de machine waar iemand aan de balie staat. Op FileMaker Server of in WebDirect is er geen lezer, en dus ook niets te lezen.

  • Geen FileMaker Go

    FileMaker Go laadt geen plug-ins — dat is een beperking van FileMaker zelf. Voor iPhone en iPad is er eID 2 FMP, een aparte app die de kaart leest en de gegevens doorgeeft.

  • Geen NFC

    De contactchip wordt gelezen, dus de kaart gaat in een lezer. Dat is met opzet: zo werkt het ook met kaarten van vóór 2020, en je hebt geen CAN-nummer nodig.

  • Geen paspoort

    Alleen de Belgische identiteitskaart. Een paspoort heeft een heel ander soort chip, die je niet met een gewone kaartlezer benadert. Rijbewijzen evenmin.

Nog iets om te weten, want je klanten gaan het je vragen: het rijksregisternummer zit in het resultaat. Dat is een identificatienummer waarvoor je een wettelijke grond nodig hebt om het te bewaren. Doorgeven mag; ongemerkt in elk klantenbestand laten landen is iets anders. Wil je het er niet in, laat het veld dan gewoon links liggen in je script.

Een licentie kopen

Je krijgt een sleutel op naam van je bedrijf. Die plak je in Instellingen → Plug-Ins → eIDPlugin → Configure, en het werkt meteen — geen herstart nodig.

  • Geldig op alle Macs en pc's van je bedrijf
  • Geen vervaldatum
  • Alle updates van versie 1.x inbegrepen
  • Betalen met Bancontact of kaart
  • Factuur volgt per e-mail
€ 99 eenmalig, incl. btw · voor één bedrijf, onbeperkt aantal machines

Je vult je bedrijfsgegevens in op de bestelpagina — die komen op je factuur. De sleutel krijg je meteen na betaling.

Naar de betaling

Bancontact · Visa · Mastercard