De MoneyView API - ALGEMEEN
De MoneyView API biedt de mogelijkheid om allerlei data uit de MoneyView databases beschikbaar te stellen. Dit is een RESTful API die JSON accepteert en ook retourneert.
MoneyView verzoekt u de server niet dermate zwaar te belasten zodanig dat andere gebruikers daar hinder van ondervinden (fair use).
Voor vragen of problemen over deze api kunt u contact opnemen met MoneyView via https://www.moneyview.nl/contact.
Endpoint
De MoneyView API is te bereiken via https://api.moneyview.nl. De API is alleen bereikbaar via een versleutelde verbinding (SSL). Hierbij is er een uitzondering voor documenten. Hier moet gebruik worden gemaakt van https://apidocs.moneyview.nl.
Calls naar de API vanuit een browser (client) worden in verband met security technisch geblokkeerd. Onze webserver ondersteunt geen Cross-Origin Resource Sharing (CORS).
Authenticatie
Elk request moet verzonden worden met de volgende header keys:
user: xxx
pwd: xxx
organisationcode: xxx
Via deze gegevens wordt een licentie geladen. Op basis van deze licentie is bepaald welke productsoorten, kenmerken en producten opgehaald kunnen worden. Ook kan hierin bepaald zijn welke andere functies (features) toegestaan zijn.
Formattering JSON
Een response uit de data request is altijd ongeformatteerd. Bij een rekenrequest kan de header key ‘formatted’ worden meegegeven. Bij ‘yes’ wordt de response geformatteerd geretourneerd. Bij ‘no’ ongeformatteerd. Default is ‘yes’.
HTTP methods
Alle requests kunnen gedaan worden via een GET of een POST in een JSON query.
Status codes
Mogelijke status codes zijn:
-
200 OK: Request geslaagd.
-
400 Bad Request: Syntactische fout in de request.
-
401 Unauthorized: Geen geldige autorisatie. Er moet een geldige Username/Password/OrganisationCode combinatie worden meegegven in de Header van elke request.
-
404 Not Found: De gevraagde bron (pagina) bestaat niet.
-
500 Internal Server Error: Fout op de server. De fout wordt gelogged en zo snel mogelijk opgelost door MoneyView.
Alle requests kunnen gedaan worden via een GET of een POST in een JSON query.
Data requests ¶
Productsoort Lijst ¶
Lijst met productsoorten. Een productsoort bevat producten en tabelkenmerken. Elk product heeft voor elk tabelkenmerk een waarde oftwel een productkenmerk.
Get ProductsoortenGET/productsoorten?json={json}
Haal een lijst productsoorten op op basis van JSON query met een optionele lijst met aanbieders.
Example URI
- json
array
(optional) Example: {"aanbieders":[774,1105]}Lijst id’s van aanbieders
200
Headers
Content-Type: application/json
Body
[
{
"id": "Uniek id",
"naam": "Naam van het productsoort",
"afkorting": "Unieke afkorting van het productsoort",
"aantalProducten": "Aantal producten binnen het productsoort",
"aantalAanbieders": "Aantal aanbieders binnen het productsoort",
"heeftProductRating": "Indicatie of productsoort een ProductRating heeft",
"heeftSIProductRating": "Indicatie of productsoort een Officiele ProductRating heeft"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Aanbieders Lijst ¶
Lijst met aanbieders. Een aanbieder heeft een of meer producten en kan in meerdere productsoorten voorkomen.
Get AanbiedersGET/aanbieders?json={json}
Haal een lijst aanbieders op op basis van JSON query met een optionele lijst met productsoorten.
Example URI
- json
array
(optional) Example: {"productsoorten":[253]}Lijst id’s van productsoorten
200
Headers
Content-Type: application/json
Body
[
{
"id": "Uniek id",
"naam": "Naam van de aanbieder"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Producten Lijst ¶
Lijst met producten.
Get ProductenGET/producten?json={json}
Haal een lijst producten op op basis van JSON query met optionele lijsten. Mogelijke lijsten zijn productsoorten, productgroepen of aanbieders.
Example URI
- json
array
(optional) Example: {"productsoorten":[253],"productgroepen":[10],"aanbieders":[774]}Lijsten id’s van productsoorten, productgroepen of aanbieders.
200
Headers
Content-Type: application/json
Body
[
{
"id": "Uniek id",
"naam": "Naam van het product",
"aanbiederId": "Uniek id van de aanbieder",
"aanbiederNaam": "Naam van de aanbieder",
"marktgroep": "Marktgroep",
"productsoortId": "Id van productsoort",
"productsoortNaam": "Naam van het productsoort",
"productsoortAfkorting": "Afkorting van het productsoort",
"productgroepId": "Id van productgroep",
"rekenenMogelijk": "Indicatie of er gerekend kan worden met dit product. Dit is afhankelijk van de status van het product en licentie."
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Productgroep Lijst ¶
Lijst met productgroepen. Een productgroep is een groepering van een aantal producten die doorgaans in verschillende productsoorten zitten.
Get ProductgroepenGET/productgroepen?json={json}
Haal een lijst productgroepen op op basis van JSON query met optionele lijsten. Mogelijke lijsten zijn productsoorten, aanbieders of producten.
LET OP: De getourneerde items zijn geen individuele productgroepen, maar productgroep - product koppelingen. Je krijgt dus meer items terug dan er productgroepen zijn. Het id van de productgroep (en naam) kan in deze response dan ook meerdere keren voorkomen.
Example URI
- json
array
(optional) Example: {"productsoorten":[253],"aanbieders":[774],"producten":[197]}Lijsten id’s van productsoorten, aanbieders of producten.
200
Headers
Content-Type: application/json
Body
[
{
"id": "Id van de productgroep",
"naam": "Naam van de productgroep",
"productsoortId": "Id van productsoort",
"productsoortNaam": "Naam van het productsoort",
"productsoortAfkorting": "Afkorting van het productsoort",
"aanbiederId": "Uniek id van de aanbieder",
"aanbiederNaam": "Naam van de aanbieder",
"productId": "Uniek id van het product",
"productNaam": "Naam van het product"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Tabelkenmerk Lijst ¶
Lijst met tabelkenmerken. Dit is een lijst eigenschappen die bij een productsoort geldt.
Get TabelkenmerkenGET/tabelkenmerken?json={json}
Haal een lijst tabelkenmerken op op basis van JSON query met optionele lijsten. Mogelijke lijst is productsoorten.
Er kan ook een lijst van tabelkenmerk namen worden meegegeven. Zo kun je tabelkenmerk gegevens ophalen van verschillende productsoorten met dezelfde tabelkenmerknaam.
Example URI
- json
array
(optional) Example: {"productsoorten":[253]}Lijst id’s van productsoorten.
200
Headers
Content-Type: application/json
Body
[
{
"id": "Uniek id",
"naam": "Naam van het kenmerk. Dit is een vaste naam die niet zomaar gewijzigd zal worden door MoneyView.",
"korteOmschrijving": "Korte omschrijving. Dit is een korte omschrijving die mogelijk gewijzigd kan worden door MoneyView.",
"langeOmschrijving": "Lange omschrijving",
"dataType": "Datatype van kenmerk. Mogelijk datatypen zijn: Getal Integer Tekst Datum of Ja/Neen. Per datatype kunnen 'speciale waarden' van toepassing zijn. Deze staan hieronder bij de productkenmerken.",
"isMeervoudig": "Indicatie of er meerdere waarden kunnen zijn. Deze zijn dan gescheiden door een pipe.",
"heeftMPR": "Indicatie of het kenmerk een MPR waarde bevat.",
"heeftProductRating": "Indicatie of het kenmerk een ProductRating bevat.",
"productsoortId": "Id van productsoort",
"productsoortNaam": "Naam van het productsoort",
"productsoortAfkorting": "Afkorting van het productsoort"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Kenmerkwaarde Lijst ¶
Lijst met mogelijke, unieke waarden horend bij tabelkenmerken.
Get KenmerkwaardenGET/kenmerkwaarden?json={json}
Haal een lijst kenmerkwaarden op op basis van JSON query met optionele lijsten. Mogelijke lijsten zijn productsoorten, tabelkenmerken, aanbieders of producten.
Er kan ook een lijst van tabelkenmerk namen worden meegegeven. Zo kun je tabelkenmerk gegevens ophalen van verschillende productsoorten met dezelfde tabelkenmerknaam.
Example URI
- json
array
(optional) Example: {"productsoorten":[253],"aanbieders":[774],"producten":[197]}Lijsten id’s van productsoorten, tabelkenmerken, aanbieders of producten.
200
Headers
Content-Type: application/json
Body
[
{
"tabelkenmerkId": "Uniek id van tabelkenmerk",
"tabelkenmerkNaam": "Naam van het kenmerk. Dit is een vaste naam die niet zomaar gewijzigd zal worden door MoneyView.",
"data": "Unieke waarde van het binnen het tabelkenmerk"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Productkenmerk Lijst ¶
Productkenmerken bevatten de kenmerkwaarden van producten.
Get ProductkenmerkenGET/productkenmerken?json={json}
Haal een lijst productkenmerken op op basis van JSON query met optionele lijsten en enkele andere opties. Mogelijke lijsten zijn productsoorten, aanbieders, producten en tabelkenmerken. Tabelkenmerken mogen op naam of op id worden doorgegeven. Mogelijke opties zijn data true/false, details true/false en MPR true/false
LET OP 1: Er moet één productsoort zijn meegegeven.
LET OP 2: In de response worden geen tabelkenmerk- en productgegevens geretourneerd, alleen het id. De tabelkenmerk- en productgegevens moeten worden opgehaald via de andere data requests.
Voor n.v.t. (niet van toepassing), n.b. (niet bekend), ja of neen worden ‘speciale waarden’ geretourneerd. Op basis van deze waarden kan worden gesorteerd.
Per datatype zijn ze verschillend:
-
Getal: -2E+300 (= n.b.), -1E+300 (= n.v.t.)
-
Integer: -2147483646 (= n.b.), -2147483647 (= n.v.t.)
-
Datum: 19000101 (= n.b.), 19000201 (= n.v.t.)
-
Ja/Neen: 1 (= ja), 0 (= neen), -32766 (= n.b.), -32767 (= n.v.t.)
Example URI
- json
array
(optional) Example: {"productsoorten":[253],"aanbieders":[774],"producten":[197],"tabelkenmerken":["Offerteduur oudbouw"], "data":true, "details":true, "MPR":false}Lijsten id’s van productsoorten, aanbieders of producten, lijst namen van tabelkenmerken en overige opties.
200
Headers
Content-Type: application/json
Body
[
{
"tabelkenmerkId": "Uniek id van het tabelkenmerk",
"productId": "Uniek id van het product",
"korteOmschrijving": "Korte omschrijving",
"data": "Waarde van het productkenmerk",
"MPR": "MPR waarde dat is afgeleid van de waarde van het productkenmerk",
"details": "Details behorend bij de waarde van het productkenmerk"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Productrelatie Lijst ¶
Lijst met productrelaties. Dit is een lijst van producten met producten die daar aan gerelateerd zijn.
Get ProductrelatiesGET/productrelaties?json={json}
Haal een lijst productrelaties op op basis van JSON query met optionele lijsten. Mogelijke lijst is productsoorten, aanbieders of producten.
Bij een productrelatie moet onderscheid gemaakt worden tussen een hoofdproduct en een gerelateerd product. Bij het zoeken wordt standaard gezocht op het hoofdproduct. Er kan ook gezocht worden op het gerelateerd product. Dan moet de zoekrichting worden meegegeven. Dit kan zijn ‘hoofd’ (default) of ‘relatie’.
Example URI
- json
array
(optional) Example: {"productsoorten":[253],"aanbieders":[774],"producten":[197],"richting":["relatie"]}Lijst id’s van productsoorten, aanbieders of producten. Optionele parameter ‘richting’.
200
Headers
Content-Type: application/json
Body
[
{
"hoofdProductId": "Uniek id van het hoofdproduct",
"hoofdProductnaam": "Naam van het hoofdproduct",
"hoofdProductAanbiederId": "Uniek id van de aanbieder van het hoofdproduct",
"hoofdProductAanbiederNaam": "Naam van de aanbieder van het hoofdproduct",
"hoofdProductProductsoortId": "Id van productsoort van het hoofdproduct",
"hoofdProductProductsoortNaam": "Naam van het productsoort van het hoofdproduct",
"hoofdProductProductsoortAfkorting": "Afkorting van het productsoort van het hoofdproduct",
"relatieProductId": "Uniek id van het gerelateerde product",
"relatieProductnaam": "Naam van het gerelateerde product",
"relatieAanbiederId": "Uniek id van de aanbieder van het gerelateerde product",
"relatieAanbiederNaam": "Naam van de aanbieder van het gerelateerde product",
"relatieProductsoortId": "Id van productsoort van het gerelateerde product",
"relatieProductsoortNaam": "Naam van het productsoort van het gerelateerde product",
"relatieProductsoortAfkorting": "Afkorting van het productsoort van het gerelateerde product",
"rekenenMogelijk": "Indicatie of er gerekend kan worden met dit product. Dit is afhankelijk van de status van het product."
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Relatiekenmerk Lijst ¶
Relatiekenmerken bevatten de producten en kenmerken die gerelateerd zijn aan ‘hoofdproducten’. Voorbeelden van gerelateerde producten zijn: fondsen binnen beleggingsrekeningen of een inboedelverzekering binnen een pakketverzekering.
In beginsel zijn fondsen en beleggingsrekeningen afzonderlijke producten. Deze producten zijn vervolgens aan gekoppeld, zo kan een beleggingsrekening een aantal fondsen hebben en kan een pakketverzekering, inboedel- en opstal verzekeringen hebben.
Get RelatiekenmerkenGET/relatiekenmerken?json={json}
Haal een set ‘gerelateerde’ producten en kenmerken op basis van een JSON query op. Mogelijke parameters zijn productsoorten, aanbieders, producten en tabelkenmerken.
Tabelkenmerken mogen op naam of op id worden doorgegeven. Mogelijke opties zijn data true/false, details true/false en MPR true/false
De responseset bestaat uit de volgende onderdelen:
-
PRODUCTEN: lijst hoofdproducten
-
PRODUCTKENMERKEN: lijst kenmerken van de hoofdproducten
-
RELATIEPRODUCTEN: lijst producten die zijn gerelateerd aan de hoofdproducten
-
RELATIEKENMERKEN: lijst kenmerken behorend bij de gerelateerde producten
LET OP 1: Het aantal productsoorten in de lijst van productsoorten is maximaal één.
LET OP 2: In de response worden geen tabelkenmerk- en productgegevens geretourneerd, alleen het id. De tabelkenmerk- en productgegevens moeten worden opgehaald via de andere data requests.
Voor n.v.t. (niet van toepassing), n.b. (niet bekend), ja of neen worden ‘speciale waarden’ geretourneerd. Op basis van deze waarden kan worden gesorteerd.
Per datatype zijn ze verschillend:
-
Getal: -2E+300 (= n.b.), -1E+300 (= n.v.t.)
-
Integer: -2147483646 (= n.b.), -2147483647 (= n.v.t.)
-
Datum: 19000101 (= n.b.), 19000201 (= n.v.t.)
-
Ja/Neen: 1 (= ja), 0 (= neen), -32766 (= n.b.), -32767 (= n.v.t.)
Example URI
- json
array
(optional) Example: {"productsoorten":[304],"producten":[23798], "data":true, "details":fals, "MPR":false}Lijsten id’s van productsoorten, aanbieders of producten, lijst namen van tabelkenmerken en overige opties.
200
Headers
Content-Type: application/json
Body
{
"undefined": {
"PRODUCTEN": "Hello, world!",
"PRODUCTKENMERKEN": "Hello, world!",
"RELATIEPRODUCTEN": "Hello, world!",
"RELATIEKENMERKEN": "Hello, world!"
}
}
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"": {
"type": "object",
"properties": {
"PRODUCTEN": {
"type": "string"
},
"PRODUCTKENMERKEN": {
"type": "string"
},
"RELATIEPRODUCTEN": {
"type": "string"
},
"RELATIEKENMERKEN": {
"type": "string"
}
}
}
}
}
Hypotheekrentes ¶
Ophalen van actuele hypotheekrentes
Get HypotheekrentesGET/hypotheekrentes?json={json}
Haal een lijst hypotheekrentes op op basis van JSON query met optionele lijsten en enkele andere opties.
Mogelijke lijsten zijn producten en RVP waarden. Mogelijke opties zijn marktwaarde, NHG en bouwaard (N = nieuwbouw, O = oudbouw).
LET OP: Voor deze optie moet de licentie uitgebreid zijn met het feature om hypotheekrentes op te halen.
Example URI
- json
array
(optional) Example: {"producten":[26351,13270,197,9523], "marktwaarde":"105.0", "isNHG":true, "bouwaard":"O"}Lijsten id’s van producten, martkwaarde, keuze voor NHG en bouwaard.
200
Headers
Content-Type: application/json
Body
[
{
"productId": "Uniek id van het product",
"rente": "Hypotheekrente",
"RVP": "Rentevast periode",
"bouwaard": [
"O = Oudbouw",
"N = Nieuwbouw",
"B = Beiden"
],
"mwLaag": "Ondergrens van marktwaarde",
"mwHoog": "Bovengrens van marktwaarde",
"mwOptie": [
"Grensoptie van markwaarde",
"OG = Ondergrens inclusief",
"BG = Bovengrens inclusief",
"B = Beiden"
],
"tariefType": [
"geen NHG",
"NHG flat",
"NHG gesplitst"
]
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Spaarrentes ¶
Ophalen van actuele spaarrentes
Get SpaarrentesGET/spaarrentes?json={json}
Haal een lijst spaarrentes op op basis van JSON query met optionele lijsten en enkele andere opties.
Mogelijke lijsten zijn producten of een productsoort.
LET OP: Voor deze optie moet de licentie uitgebreid zijn met het feature om spaarrentes op te halen.
Example URI
- json
array
(optional) Example: {"producten":[4074]}Lijsten id’s van producten op een productsoort.
200
Headers
Content-Type: application/json
Body
[
{
"id": "Uniek id van de rente",
"productId": "Uniek id van het product",
"rente": "Spaarrente",
"vorigeRente": "Vorige spaarrente",
"looptijd": "Looptijd",
"saldoLaag": "Ondergrens van de saldoklasse",
"saldoHoog": "Bovengrens van de saldoklasse",
"saldoGrensOptie": [
"Grensoptie van saldoklasse",
"OG = Ondergrens inclusief",
"BG = Bovengrens inclusief",
"B = Beiden"
],
"ingangsdatum": "begindatum van de rente",
"einddatum": "einddatum van de rente"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
Reken requests ¶
Berekening algemeen ¶
Via deze api kunnen premieberekeningen worden uitgevoerd voor schade en leven producten. Hiervoor moet per productsoort een geldige licentie in gebruik zijn.
De ‘leven’ producten worden doorgaans via de AeQuote interface berekend. De ‘schade’ producten gaan via de Engine interface.
De volgende AeQuote productsoorten kunnen worden doorgerekend:
-
Annuïtair Dalende Risicoverzekeringen (type: TRRAD) - meer …
-
Gelijkblijvende Risicoverzekeringen (type: TRRGE) - meer …
-
Lineair Dalende Risicoverzekeringen (type: TRRLD) - meer …
-
Annuïteiten Hypotheken (type: ANNH) - meer …
-
Lineaire Hypotheken (type: LINH) - meer …
-
Direct ingaande lijfrentes (type: TRLDI) - meer …
-
Beleggingsrekeningen (type: RBBER) - meer …
-
Lijfrente - Beleggen met periodieke inleg (type: ULLPB) - meer …
-
Lijfrente - Beleggen met eenmalige inleg (type: ULLPI) - meer …
-
Persoonlijke lening (type: KREPL) - meer …
De volgende Engine productsoorten kunnen worden doorgerekend:
-
Aansprakelijkheid voor particulieren (type: SAVPV) - meer …
-
Autoverzekeringen (type: SAUWA voor WA dekking, type: SAUBC voor BC dekking en type: SAUVC voor VC dekking) - meer …
-
Arbeidsongeschiktheid (type: SAOVZ) - meer …
-
Bestelautoverzekeringen (type: SBEWE voor WA dekking, type: SBEBC voor BC dekking en type: SBEVC voor VC dekking) - meer …
-
Bromfietsverzekeringen (type: WABRM voor WA dekking, type: BCBRM voor BC dekking en type: VCBRM voor VC dekking) - meer …
-
Combinatie Inboedel- Opstalverzekeringen (type: PKT) - meer …
-
Doorlopende reisverzekeringen (type: SDRV) - meer …
-
Fietsverzekeringen (type: FIETS) - meer …
-
Gezinsongevallen (type: SGONG) - meer …
-
Inboedelverzekeringen (type: SINBV) - meer …
-
Kortlopende reisverzekeringen (type: KRV) - meer …
-
Opstalverzekeringen (type: SOPSV) - meer …
-
Motorverzekeringen (type: WAMOT voor WA dekking, type: BCMOT voor BC dekking en type: VCMOT voor VC dekking) - meer …
-
Rechtsbijstand (type: SRBSP) - meer …
-
Woonlastenverzekeringen (type: SAOVW) - meer …
Voor het uitvoeren van berekeningen moet een JSON rekenbericht via /calculation gePOST worden met content type: application/json.
Via de dataservice kan een product geselecteerd worden voor het doorrekenen. Het id van een product kan vervolgens gebruikt worden voor een berekening.
Schade algemeen - Engine ¶
Elke engine verzoek dient de volgende basis structuur te hebben. Het “profile” deel zal verschillend zijn voor de diverse modules.
{
"ScripletEngineRequestParameters": {
"type": "...",
"ansId": "...",
"profile": {
"session_id": "..."
}
}
}
-
type: productsoorttype
-
ansId: een of meer door komma gescheiden ans product ids.
De uitvoer van de engine webservice bevat doorgaans onderstaande velden
{
"ScripletEngineResponseParameters": {
"task": "...",
"global": "...",
"local": "...",
"specific": "...",
"response": {
"session_id": "..."
}
}
}
De “response” kan vaker voorkomen afhankelijk van het aantal uitgevraagde producten.
De element namen in “ScripletEngineRequestParameters” en de directe child elements zijn hoofdletter gevoelig. De overige velden in de “profile” en “response” zijn dat niet.
De input kan de volgende data types bevatten:
-
string
-
date (format yyyymmdd bijvoorbeeld: 20010625)
-
int (format 12345; geen decimalen)
-
number (format 1234567.8901)
Indien nodig alleen een decimaal scheiding gebruiken, dit zal altijd een punt(.) zijn Duizendtal scheidingsteken mogen niet gebruikt worden. In de number velden kunnen 4 decimalen geplaatst, maar doorgaans is het voldoende om gehele getallen door te geven.
Als een string geen waarde bevat zal het als Leeg worden behandeld. Als een numeric geen waarde heeft zal het als 0 worden behandeld.
Schade lookup - Engine ¶
De meeste velden hebben een beperkt aantal (zinvolle) opties, deze kunnen m.b.v. een zogenaamde LOOKUP call worden uitgevraagd.
Dit kan gedaan worden via de URL: /lookup
Het volgende JSON bericht kan worden gestuurd (type: productsoorttype):
{
"ScripletEngineRequestParameters": {
"type": "...",
"profile": {
"field": "..."
}
}
}
In field kan het gewenste veld worden gezet. Vervolgens worden de waarden als volgt geretourneerd:
{
"ScripletEngineResponseParameters": {
"task": "LOOKUP",
"global": "LOOKUP",
"local": null,
"specific": null,
"response": [
{
"SPECIFIC": "..."
},
....
{
"SPECIFIC": "..."
}
]
}
}
Binnen de SPECIFIC attributen staan de mogelijke waarden die het rekenbericht in kunnen.
Leven algemeen - AeQuote ¶
Enkele technische gegevens zijn nodig voor traceerbaarheid en herkenbaarheid. Dit zijn: SENDER, SESSION-ID en INTERFACE.
Onder het element BEREKENEN - CONTRACT staan de inhoudelijke gegevens.
CONTRACT
-
CONTRACTANTEN
-
PRODUCTEN
Hierbinnen CONTRACTANTEN, hier zijn de elementnamen voor elke productsoort gelijk.
Hierbinnen PRODUCTEN Het element PRODUCTEN moet altijd een TYPE bevatten. Dit is de afkorting van de productsoort uit de productsoorten data request.
Voor het uitvoeren van een vergelijking zijn er 3 opties. Deze opties zijn hieronder beschreven en ondersteund door middel van een voorbeeld.
Bereken alle producten die van een bepaald producttype zijn. Het bericht bevat uitgangspunten die voor alle producten gelden. De producten worden door de service gevonden en doorgerekend op basis van het producttype. Dit is de meest eenvoudige vorm van het maken van een vergelijking.
Hieronder worden, als algemeen voorbeeld, alle ‘gelijkblijvende risicoverzekeringen’ ( = TRRGE) doorgerekend.
Voorbeeld:
{
"COMMAND": {
"@SENDER": "MV",
"@SESSION-ID": "477c128a-94a4-4175-a1d3-6c5d10ad6dd4",
"@INTERFACE": "2",
"BEREKENEN": {
"CONTRACT": {
"@TWEELEVENSAPART": "N",
"@OMSCHRIJVING": "Orv calculation",
"@STARTDATUM": "01112016",
"CONTRACTANTEN": {
"CONTRACTANT": {
"@NAAM": "Verzekerde 1",
"@GEBOORTEDATUM": "01111986",
"@GESLACHT": "M",
"@ROOKGEDRAG": "N",
"@BMI": "24.2",
"@LENGTE": "170",
"@GEWICHT": "70"
}
},
"PRODUCTEN": {
"@TYPE": "TRRGE",
"DEKKINGSVORM": {
"@DUUR_IN_MND": "120",
"@VERZEKERDBEDRAG1": "75000"
},
"BETALING": {
"@TERMIJN": "MAAND"
}
}
}
}
}
}
Met product id
Het is ook mogelijk alleen enkele specifieke producten door te rekenen op basis van een id. Hierbij hoeven de uitgangspunten voor de berekening alleen bij het eerste product meegegeven te worden.
Hieronder worden alle ‘gelijkblijvende risicoverzekeringen’ met id 3464 en 14587 doorgerekend.
{
"COMMAND": {
"@SENDER": "MV",
"@SESSION-ID": "477c128a-94a4-4175-a1d3-6c5d10ad6dd4",
"@INTERFACE": "2",
"BEREKENEN": {
"CONTRACT": {
"@TWEELEVENSAPART": "N",
"@OMSCHRIJVING": "Orv calculation",
"@STARTDATUM": "01112016",
"CONTRACTANTEN": {
"CONTRACTANT": {
"@NAAM": "Verzekerde 1",
"@GEBOORTEDATUM": "01111986",
"@GESLACHT": "M",
"@ROOKGEDRAG": "N",
"@BMI": "24.2",
"@LENGTE": "170",
"@GEWICHT": "70"
}
},
"PRODUCTEN": {
"@TYPE": "TRRGE",
"DEKKINGSVORM": {
"@DUUR_IN_MND": "120",
"@VERZEKERDBEDRAG1": "1"
},
"BETALING": {
"@TERMIJN": "MAAND"
},
"PRODUCT": [
{
"@ID": "3464"
},
{
"@ID": "14587"
}
]
}
}
}
}
}
Een product id hoeft niet uniek te zijn in de vergelijking. Dit maakt het mogelijk één en hetzelfde product meerdere keren door te rekenen met verschillende uitgangspunten.
Hieronder wordt product met id 3464 met verschillende verzekerde bedragen doorgerekend.
{
"COMMAND": {
"@SENDER": "MV",
"@SESSION-ID": "477c128a-94a4-4175-a1d3-6c5d10ad6dd4",
"@INTERFACE": "2",
"BEREKENEN": {
"CONTRACT": {
"@TWEELEVENSAPART": "N",
"@OMSCHRIJVING": "Orv calculation",
"@STARTDATUM": "01112016",
"CONTRACTANTEN": {
"CONTRACTANT": {
"@NAAM": "Verzekerde 1",
"@GEBOORTEDATUM": "01111986",
"@GESLACHT": "M",
"@ROOKGEDRAG": "N",
"@BMI": "24.2",
"@LENGTE": "170",
"@GEWICHT": "70"
}
},
"PRODUCTEN": {
"@TYPE": "TRRGE",
"PRODUCT": [
{
"@ID": "3464",
"DEKKINGSVORM": {
"@DUUR_IN_MND": "120",
"@VERZEKERDBEDRAG1": "75000"
},
"BETALING": {
"@TERMIJN": "MAAND"
}
},
{
"@ID": "3464",
"DEKKINGSVORM": {
"@DUUR_IN_MND": "120",
"@VERZEKERDBEDRAG1": "175000"
},
"BETALING": {
"@TERMIJN": "MAAND"
}
}
]
}
}
}
}
}
Response
Alle responses bevatten in ieder geval de volgende attributen:
Onder element ‘RESPONSES’:
-
SESSION-ID: sessie identifier
-
CNT: aantal berekende producten
-
MS: rekentijd in milliseconden
Onder element ‘PRD’ staan de productresultaten, met per product:
-
ID: unieke identifier per product
-
NAAM: naam product
-
VERSIE: versie
-
AANBIEDERNAAM: naam aanbieder
-
SEQUENCE: volgnummer
In de productspecifieke pagina’s wordt uitgebreid ingegaan op de response.
Acceptatiefouten
Het kan zijn dat de maatschappij de uitgangspunten voor de berekening niet accepteert. in dit geval wordt geen premie geretourneerd, maar een of meerderen acceptatiefouten.
Hieronder een fragment uit de response met hierin een acceptatiefout:
ORV versie 3 of hoger, of overige productsoorten:
{}
{
"@ID": "13163",
"@NAAM": "ORV Verpand, HBO+ of Hoog inkomen",
"@VERSIE": "3",
"@AANBIEDERNAAM": "Allianz",
"@SEQUENCE": "3",
"ACCEPTATIERAPPORT": {
"OPMERKING": [
{
"@FOUT": "De premie is te laag. Het minimum bij een maandbetaling is 4 euro."
}
]
}
}
{}
ORV versie 2:
{}
{
"@ID": "13163",
"@NAAM": "ORV Verpand, HBO+ of Hoog inkomen",
"@VERSIE": "3",
"@AANBIEDERNAAM": "Allianz",
"@SEQUENCE": "3",
"ACCEPTATIERAPPORT": {
"OPMERKINGEN": {
"OPMERKING": "De premie is te laag. Het minimum bij een maandbetaling is 4 euro."
}
}
}
{}
Overige (technische) fouten
Bij foute invoer als bijvoorbeeld een onmogelijke datum wordt ingevoerd, wordt een ERROR geretourneerd.
{
"RESPONSES": {
"@SESSION-ID": "477c128a-94a4-4175-a1d3-6c5d10ad6dd4",
"@CNT": "1",
"@MS": "1156",
"ERROR": {
"@SERVICE": "ARM",
"@SENDER": "TEST01",
"@SESSION-ID": "477c128a-94a4-4175-a1d3-6c5d10ad6dd4",
"ID": "General",
"MESSAGE": "Year, Month, and Day parameters describe an un-representable DateTime."
}
}
}
Ophalen extra informatie
Bij het rekenbericht kan extra informatie opgevraagd worden. Welke kenmerken dit mogen zijn, is afhankelijk van de licentie. Hierin is bepaald welke set van kenmerken opgehaald mag worden.
Hierbij kunnen extra kenmerken worden opgehaald die bij de berekening horen. Het gaat dan om: ‘Verantwoording resultaten’ en ‘Bijzonderheden bij rekenresultaten’.
Hiervoor moet de request worden uitgebreid met het attribuut EXTRAINFO binnen het element COMMAND. Als volgt:
"@EXTRAINFO": "Verantwoording resultaten|Bijzonderheden|Solvabiliteitsmarge",
Hierboven worden drie kenmerken opgehaald. Deze moeten worden gescheiden door een pipe ( | )
Als dit is meegegeven wordt de response per product uitgebreid met de extra informatie voor zover deze aanwezig is. Hierbij heeft elk item een unieke naam, hierbij staat detail info en/of een waarde. De waarde kan een ‘speciale waarde’ bevatten. Zie hierboven voor uitleg over ‘speciale waarden’.
"EXTRAINFO": {
"ITEM": [
{
"@NAAM": "Verantwoording resultaten",
"@INFO": "De berekende resultaten zijn goedgekeurd en geaccordeerd door de maatschappij. De afwijkingen tussen de berekende resultaten van MoneyView en de offertesoftware bedragen gemiddeld 0,000%."
},
{
"@NAME": "Bijzonderheden",
"@INFO": "Bij het afsluiten van een risicoverzekering wordt 175 euro distributiekosten in rekening gebracht. Dit bedrag dient ineens bij aanvang te worden betaald."
},
{
"@NAAM": "Solvabiliteitsmarge",
"@WAARDE": "211.5"
}
]