Koppeling nieuwe webwinkel/kassa platform: Noodzakelijke voorwaarden API winkelplatform
Deze vraag is bedoeld voor software leveranciers - niet voor (web)winkeliers/restauranthouders.
Hieronder staat beschreven waar de API van een webwinkel- of kassa-systeem aan moet voldoen als wij de integratie doen. Momenteel zijn we echter druk bezig een eigen API te ontwikkelen hetgeen de software leverancier in staat stelt zelf één enkele integratie te doen (naar onze API) en zodoende ontsluiting naar alle boekhoudpakketten te krijgen. Indien je hier interesse in hebt, neem dan contact met ons op.
API verwachtingen als wij de integratie doen.
Bij het koppelen naar een nieuw webwinkelsysteem dient de API van het webwinkelplatform aan de volgende voorwaarden te voldoen:
- We koppelen alleen met REST API.
- De webwinkel moet online benaderbaar zijn. Wij koppelen niet met hybride systemen waarbij de bestellingen offline beschikbaar zijn en worden doorgezet naar een cloudomgeving. De reden is dat dit de supportprocessen te zwaar zou belasten.
- De REST API dient gedocumenteerd te zijn. In het bijzonder dient de omschrijving van de velden en het feit of een veld verplicht is, te zijn gedocumenteerd. De documentatie dient overzichtelijk te zijn en te zijn opgezet met Swagger of een vergelijkbare API documentatie tool.
- Authenticatie bij voorkeur met OAuth. Een voorbeeld van het opzetten van OAuth met alle requests dient uitgeschreven te zijn.
- Er dienen endpoints te zijn voor:
- Debiteuren - zoeken op emailadres
- Verkopen - zoeken op id en periode, bij voorkeur ook zoeken op nummer
- De verkoopregels zijn voorzien van BTW informatie
- Verzendkosten, betaalkosten, kortingen en toeslagen zijn voorzien van BTW informatie
- Producten - zoeken op id en op SKU
- BTW tarieven zijn op te halen uit de webwinkel
- Betaalmethoden zijn op te halen uit de webwinkel
- Bij het wijzigen van een bestelling wordt het bestel-id niet gewijzigd
- Responses vanuit de webwinkel dienen aan te geven of een request geslaagd of niet geslaagd is.
- Is een actie niet geslaagd dan is de HTTP response code 400 en bevat de response een omschrijving van wat er verkeerd is gegaan
- Er zijn ruime API limieten of het moet mogelijk zijn om de ruimte binnen de API limiet te berekenen.
- Support: wij verwachten (i) dat technische problemen via een emailalias / support tool gelogd kunnen worden, (ii) een Nederlandse contactpersoon bij support, (iii) dat we transacties uit kunnen lezen op basis van een kenmerk of een referentie en (iv) na het melden van een technisch probleem binnen 1 werkdag een antwoord. Bij grote impact op eindgebruikers is het doel eventuele problemen zsm op te lossen.
Bij het koppelen van een nieuw kassaplatform dient de API van het kassa-platform aan de volgende voorwaarden te voldoen:
- We koppelen alleen met REST API.
- De kassa moet online benaderbaar zijn. Wij koppelen niet met hybride systemen waarbij de bonnen offline beschikbaar zijn en worden doorgezet naar een cloudomgeving. De reden is dat dit de supportprocessen te zwaar zou belasten.
- De REST API dient gedocumenteerd te zijn. In het bijzonder dient de omschrijving van de velden en het feit of een veld verplicht is, te zijn gedocumenteerd. De documentatie dient overzichtelijk te zijn en te zijn opgezet met Swagger of een vergelijkbare API documentatie tool.
- Authenticatie bij voorkeur met OAuth. Een voorbeeld van het opzetten van OAuth met alle requests dient uitgeschreven te zijn.
- Bonnen van een dag dienen uiterlijk om 05.00 de volgende dag beschikbaar te zijn voor het doorzetten van de dagomzet.
- Bonnen dienen op te tellen. De bedragen in de bonregels dienen op te tellen tot het totaal van de bon. De som van de betalingen dient overeen te komen met de som van de omzet.
- Er dienen endpoints te zijn voor:
- Bonnen - zoeken op id en periode, bij voorkeur ook zoeken op nummer
- De bonregels zijn voorzien van BTW informatie, productcode en categorie-id
- BTW tarieven zijn op te halen uit de kassa
- Betaalmethoden zijn op te halen uit de kassa
- Categorieen zijn op te halen uit de kassa
- Responses vanuit de kassa dienen aan te geven of een request geslaagd of niet geslaagd is.
- Is een actie niet geslaagd dan is de HTTP response code 400 en bevat de response een omschrijving van wat er verkeerd is gegaan
- Er zijn ruime API limieten of het moet mogelijk zijn om de ruimte binnen de API limiet te berekenen.
- Support: wij verwachten (i) dat technische problemen via een emailalias / support tool gelogd kunnen worden, (ii) een Nederlandse contactpersoon bij support, (iii) dat we transacties uit kunnen lezen op basis van een kenmerk of een referentie en (iv) na het melden van een technisch probleem binnen 1 werkdag een antwoord. Bij grote impact op eindgebruikers is het doel eventuele problemen zsm op te lossen.