Exact Online koppelen aan je website of webapp, dat doe je zo

Geschreven door Joachim op 17/08/2018

Exact staat bekend voor zijn business software voor kmo’s en accountants. Met ‘Exact Online’ heeft het een online cloud versie die alles in één pakket integreert. Zo is al je administratie altijd online beschikbaar. Een superhandige tool dus.

Exact Online voor Boekhouden Basis integreert je boekhouding met je CRM in 1 online pakket. Hiermee kan je alle gegevens van je klanten en prospects online bijhouden én krijg je een volledig inzicht in je bedrijfsadministratie.

Een klant vroeg ons om vanuit zijn website facturen aan te maken in Exact Online. Eindklanten betalen dus via de website en na een succesvolle betaling wordt een factuur aangemaakt in Exact Online.

In het kort: Voor een factuur wordt aangemaakt, controleer je of de klant al dan niet beschikbaar is in Exact Online. Als dat niet het geval is, dan maak je de klant eerst aan in Exact Online. Er wordt een unieke sleutel tussen de klant op je website en de klant in Exact Online bijgehouden. Op deze manier kun je in de toekomst op heel makkelijk een historiek van facturen en bestellingen weergeven per klant.

Hoe koppel je jouw website aan Exact Online?

Stap 1: vlotte registratie

We gaan ervan uit dat je nog geen Exact Online account hebt. Indien dit wel het geval is, lees je verder vanaf stap 2.

Registeren kan via het Belgisch AppCenter: https://apps.exactonline.com/be/nl-BE/V2
Op deze pagina klik je helemaal onderdaan Bent u een app developer?

Hier vul je al je gegevens in. Na de registratie dien je enkel nog je e-mailadres te verifiëren. Je kan meteen aan de slag en hoeft niet te wachten op goedkeuring. Het testen van deze integratie verloopt doorgaans dus heel erg vlot.

Stap 2: registreer je App

Wanneer je inlogt, kom je op het dashboard scherm terecht. Hier klik je op Registreer uw App om de applicatie te registreren.

Nu beland je op een pagina waar je de gegevens van je applicatie moet invullen. Redirect URI is de url die nodig is om na het connecteren met de applicatie terug te gaan naar je website of webapplicatie. Op deze url kan je een succespagina tonen die zegt dat de website succesvol verbonden is met de applicatie.

Je applicatie is nu geregistreerd en klaar om te gebruiken binnen je Exact Online account.

Stap 3: OAuth authenticatie tot stand brengen

Nu wordt je website via OAuth gekoppeld aan de App die zonet geregistreerd is. Dit gebeurt via een Laravel Wrapper die het heel makkelijk maakt om een connectie te leggen tussen Exact Online en je website. Je gebruikt hiervoor volgende package: https://github.com/PendoNL/laravel-exact-online

Deze package maakt gebruik van de PHP Client SDK: https://github.com/picqer/exact-php-client. Mocht je het Laravel framework niet gebruiken, dan integreer je deze best binnen je website.

Volg de README om de package te integreren in je PHP applicatie.

Om de nodige security keys te verkrijgen, klik je in Exact Online via het App center https://apps.exactonline.com/be/nl-BE/Manage op je applicatie en bewerk je deze. Zie de rubriek Authorisatie voor alle gegevens.

Na het installeren van deze package breng je de verbinding tussen je website en de Exact Online app tot stand. Dit kan door te surfen naar een link die automatisch beschikbaar zal zijn door de package. In dit geval: https://www.newance.be/exact/connect (tip: je kan deze routes best beschermen achter een login luik, dit om te vermijden dat iedereen deze url kan aanspreken)

Daarna klik je op de knop Verbinden met Nationale Interim Bank Exact App. Nu ga je automatisch naar de website van Exact Online waar je de toestemming moet geven.

Na het geven van de toestemming kom je terug op je website. Vanaf nu is je website verbonden met je Exact Online Applicatie :-)

Voila, nu kan je heel makkelijk nieuwe klanten aanmaken van op je website in Exact Online. Zie onderstaand code voorbeeld.

Geschreven door
Joachim Vanthuyne

Back-end-developer. Verzorgt de interactie tussen websites en mensen.

Plaats een reactie

Reageer op dit artikel

Wordt niet weergegeven op de website.