Introductie

iDeal-status.nl heeft als doel het ontsluiten van informatie over de status en prestaties van banken die participeren in het iDeal-netwerk. Om dit te kunnen doen bestaat de webservice grofweg uit drie (3) onderdelen: Door het opensourceprincipe zijn de stappen i) datacollectie en iii) datapresentatie openbaar.

Data collectie

iDeal-status.nl wordt gevoed door real-time data gedoneerd vanuit de eCommerce-wereld. Participanten van iDeal-status.nl hebben de mogelijkheid om data in een gestructureerde wijze aan te leveren bij de API van de webservice van iDeal-status.nl. De methode die hiervoor gehanteerd wordt is XML via een POST payload. Voor meer informatie:
Ook participant worden van iDeal-status.nl? Neem contact met ons op!

Datapresentatie

iDeal-status.nl ontsluit de berekende data en informatie niet middels een API, maar middels statische bestanden. Dit wordt gedaan omdat de gepresenteerde data immers openbaar zijn gemaakt (en dus geen autorisatie behoeven) en om de servers van iDeal-status.nl te ontlasten. Desalniettemin wijzen we uitdrukkelijk op de Databankenwet Artikel 4. Wanneer u gebruik wenst te maken van deze informatiedienst verzoeken wij u deze op een efficiënte en verantwoorde wijze te implementeren.

De data worden ontsloten middels het bestandsformaat JSON (JavaScript Object Notation). Er zijn meerdere bestanden beschikbaar. Alle bestanden worden iedere 5 minuten ververst met nieuwe data. Een lijst van de beschikbare bestanden is hier te vinden. De meest prominente bestanden zijn hieronder toegelicht.

consumer_notification_advice.json

Het bestand `consumer_notification_advice.json` bevat real-time advies over alle issuers in het iDeal-netwerk. Per issuer wordt de status (OK/NOK) weergegeven en indien de status van een iDeal-bank niet OK (NOK) is, welke melding aan de consument getoond kan worden.
Dit bestand is de meest eenvoudige data-bron en (momenteel) het meest eenvoudig aan uw webshop te koppelen. Wij verzoeken u het bestand eenmaal per 5 minuten op te halen bij onze servers om de data en informatie vervolgens op te slaan in uw database-tabel met issuers of om het bestand te cachen op uw server. Dit om onnodige belasting van onze webdienst en afhankelijkheid van uw webshop op onze webdienst te voorkomen.
Veld Type Omschrijving Voorbeeld
issuer_id string De unieke ID (volgens iDeal) van de consumentenbank ('issuer') in het iDeal netwerk 0021
issuer_bic string De unieke BIC code (volgens SWIFT) van de consumentenbank ('issuer') in het iDeal netwerk; ook wel gebruikt als issuer_id in iDeal versie 3.3.1 RABONL2U
datetime datetime Het tijdstip waarop de statistiek van deze issuer berekend is 2012-11-15 14:28:36
issuer_name string Leesbare naam van de bank (issuer). Rabobank
status string De huidige status van de bank: OK (geen storing) of NOK (storing) OK
message string Indien 'status=NOK', een bericht welke aan de consument getoond kan worden als advies/waarschuwing. Het advies is om deze te tonen nadat de consument de bank gekozen heeft, maar voordat de transactie daadwerkelijk wordt aangemaakt. Rabobank ondervindt problemen bij het verwerken van iDeal betalingen. Wanneer uw betaling niet slaagt, probeer het dan later nogmaals (indien niet afgeschreven van uw rekening) of betaal op een andere manier.

issuers_current.json

Het bestand `issuers_current.json` bevat alle real-time informatie over alle issuers in het iDeal-netwerk. Per issuer zijn de volgende velden beschikbaar.
Veld Type Omschrijving Voorbeeld
issuer_id string De unieke ID (volgens iDeal) van de consumentenbank ('issuer') in het iDeal netwerk 0021
datetime datetime Het tijdstip waarop de statistiek van deze issuer berekend is 2012-11-15 14:28:36
avg_time_trx integer De gemiddelde tijd (in seconden) tussen het moment dat de betaling werd aangemaakt en werd gestart 0
avg_time_success integer De gemiddelde tijd (in seconden) tussen het moment dat de betaling werd aangemaakt en werd betaald (status=SUCCESS) 147
avg_time_failure integer De gemiddelde tijd (in seconden) tussen het moment dat de betaling werd aangemaakt en faalde (status=FAILURE) 226
avg_time_expired integer De gemiddelde tijd (in seconden) tussen het moment dat de betaling werd aangemaakt en verliep (status=EXPIRED) 2754
avg_time_cancelled integer De gemiddelde tijd (in seconden) tussen het moment dat de betaling werd aangemaakt en geannuleerd (status=CANCELED) 370
rate_success float Percentage. Het aantal betalingen met status SUCCESS gedeeld door het totale aantal betalingen in hetzelfde tijdspad. 0.9000
rate_success_finalized float Percentage. Zelfde als `rate_success`, maar betalingen met status OPEN zijn niet meegeteld in de berekening. 0.9239
rate_failure float Percentage. Het aantal betalingen met status FAILURE gedeeld door het totale aantal betalingen in hetzelfde tijdspad. 0.0063
rate_failure_finalized float Percentage. Zelfde als `rate_failure`, maar betalingen met status OPEN zijn niet meegeteld in de berekening. 0.0065
rate_expired float Percentage. Het aantal betalingen met status EXPIRED gedeeld door het totale aantal betalingen in hetzelfde tijdspad. 0.0375
rate_expired_finalized float Percentage. Zelfde als `rate_expired`, maar betalingen met status OPEN zijn niet meegeteld in de berekening. 0.0387
rate_cancelled float Percentage. Het aantal betalingen met status CANCELED gedeeld door het totale aantal betalingen in hetzelfde tijdspad. 0.0250
rate_cancelled_finalized float Percentage. Zelfde als `rate_cancelled`, maar betalingen met status OPEN zijn niet meegeteld in de berekening. 0.0258
rate_open float Percentage. Het aantal betalingen met status OPEN gedeeld door het totale aantal betalingen in hetzelfde tijdspad. 0021
rate_error float Percentage. Het aantal betalingen wat niet kon worden aangemaakt bij de bank omdat het antwoord hierop een foutmelding was. 0021
bench_success float Percentage. Benchmark voor rate_success_finalized. Indien rate_success_finalized lager is dan bench_success, is er een storing. 0021
bench_failure float Percentage. Benchmark voor rate_failure_finalized. Indien rate_failure_finalized hoger is dan bench_failure, is er een storing. 0021
issuer_name float Leesbare naam van de bank (issuer). Rabobank
notifications array Een lijst met foutmeldingen (storingen), indien aanwezig. Format [key]=>[value]. [10]=>'Conversie te laag'

Google Charts

Aan de bestandsformaten van enkele JSON-bestanden (o.a. issuers_current_lite.json) is te zien dat deze geformat is om te werken met de grafische dienst Google Charts. Er wordt aan gewerkt om deze bestanden ook klaar te maken voor cross-domain gebruik. Heeft u zelf een implementatie ontwikkeld van onze JSON-bestanden via cross-domain gebruik? Dan zijn wij geinteresseerd in uw ontwikkeling!