Document toolboxDocument toolbox

Documentatie voor klanten en partners van Digitaal Vlaanderen - bouwstenen Mijn Burgerprofiel, Verenigingsloket en e-loketondernemers


Een betaling afhandelen

Het is mogelijk de gebruiker te vragen om na het indienen van een formulier een bepaald bedrag te betalen.

Hiervoor werken we samen met de Betaalmodule.

Je moet een Client ID verkrijgen via het team van de betaalmodule alvorens hier gebruik van te kunnen maken. Je Client ID moet ook gemarkeerd worden als Orafin als je Orafin wil gebruiken. In het geval van Orafin, moet je Client ID ook toegang krijgen tot een IPDC code.

Als dit allemaal in orde is, kan je verdergaan met de instructies op deze pagina om de betaalmodule te activeren op een formulier.

De betaling verloopt in volgende stappen:

  • de gebruiker ā€œsubmitā€ het formulier

  • op de speciale dank u pagina komt er een knop om de betaling op te starten

  • Als je op de knop drukt opent er een scherm van POM

  • De gebruiker voert de betaling uit

  • De gebruiker wordt teruggestuurd naar de dank u pagina, en krijgt een aangepast tekst te zien.

Configureren van de betaalmodule op een formulier

Na het opzetten van een nieuw formulier staan de betalingen standaard uit.

Om de betaling in te schakelen:

  1. Selecteer een formulier waarop je de betaling will activeren

  2. Ga naar de Eigenschappen van het formulier

  3. Open de ā€œBetalingenā€ tab

  4. Kies voor:

    1. Betaling aan

    2. betaling aan (Orafin integratie)

  5. Vul de waarden correct in

  6. Configureer ook de confirmatie pagina (zie verder)

  • ClientID: aan te vragen bij de Betaalmodule

  • ProductID: IPDC code van de dienst waarvoor de betaling moet gebeuren.

  • Bedrag: vast bedrag dat betaald moet worden voor deze dienst.

  • Product Naam: zal verschijnen op het betalingsscherm van POM = informatief voor de gebruiker

  • Communicatie: komt te staan in het ā€œcommunicatieā€ veld van de betaling (bank transactie)

Verschil tussen Orafin & Niet-Orafin flow

Ā 

Orafin

Niet-Orafin

Ā 

Orafin

Niet-Orafin

Communicatie

Mag worden meegegeven, maar wordt genegeerd.

Communicatie is verplicht

Product Code

IPDC code: verplicht en moet correct zijn: moet bij de Betaalmodule gekoppeld zijn aan de client ID.

Product Code: waarde wordt niet gecontroleerd.

Customer Type

KBO (ondernemingen) of KSZ (particulier) verplicht mee geven.

In geven van KBO ook KBO nummer mee te geven, in geval van KSZ ook INSZ mee te geven.

KBO Nummer en INSZ nummer worden enkel op lengte gevalideerd.

Customer Type niet meegeven naar de betaalmodule

Toepasbaar op type formulier

Dit is enkel toegestaan op ā€œSecureā€ formulier die ontsloten zijn achter ACM/IDM. Dit is nodig om het INSZ te hebben.

Zowel op ā€œSecureā€ en ā€œNiet-Secureā€ formulieren.

Formulier aanbevelingen en restricties

Momenteel ondersteunen we enkel een vast bedrag per formulier. Het is nog niet mogelijk om een bedrag te laten afwijken aan de hand van een gekozen waarde in het formulier.

Er is ook nog geen component op het formulier om de prijs aan te geven. Hiervoor kan je zelf een tekst op het formulier renderen, waarin de prijs staat.

Configuratie van de bevestigingspagina

  1. Creƫer een bevestigingspagina naast het formulier

    1. Kies hiervoor bij de templates: ā€œDanku pagina voor betalingenā€

  1. U kan de teksten bepalen die op deze pagina zullen verschijnen:

  • Panel initialised: de tekst die verschijnt na het indienen van de data, waarin gevraagd wordt aan de gebruiker om de betaling uit te voeren

  • Panel polling: de tekst die verschijnt terwijl er wordt gewacht op bevestiging van POM dat de betaling in orde is.

  • Panel success: de tekst die wordt getoond als de betaling met success is uitgevoerd

  • Panel failure: de tekst die wordt getoond als de betaling is mislukt. De gebruiker moet de betaling dan opnieuw opstarten.

  • Panel Initialise failure: tekst die wordt getoond als het aanmaken van een betaallink is gefaald (probleem met de betaalmodule). De betaling kan niet worden opgestart.

  • Panel met de knop die linkt naar het betaalvenster.

Betaalgegevens in de JSON ontvangen op het endpoint

Als een betaling aanstaat op een formulier, kan je ook 3 velden ontvangen in de JSON bij je endpoint waar ook de andere formulier data naartoe wordt gestuurd.

Deze 3 velden zijn:

  • PSP Payment ID

  • Betaal Link

  • Gestructureerde mededeling

Deze meta data velden kan je deel laten uitmaken van je formulier door de metadata component op je formulier te slepen, en 1 van deze ā€œBetalingā€ metadata velden te kiezen:

Daarna moet je deze ook nog mappen om deel te laten uitmaken via het JSON Schema.

Ā 

Opvolging betaling

Er bestaat ook een kans dat de gebruiker helemaal niks betaalt.

In dit geval ontvang je dus wel een JSON, maar je kan er nooit vanuit gaan dat de betaling gebeurd is. Elke entiteit moet dus zelf gaan controleren of de betaling gebeurd is, dit kan aan de hand van de transactie id. Deze kan ook als Meta data in de output JSON terecht komen.

De transaction ID is de ID om de status van de betaling op te vragen. De entiteit is daarna zelf verantwoordelijk om de betaallink opnieuw bij de gebruiker te bezorgen.

Ā 

Voorbeeld

Een voorbeeld van een formulier met betaling vindt u hier:

https://beheer.dv.formulieren-ti.vlaanderen.be/aem/formdetails.html/content/dam/formsanddocuments/vlaamse-overheid/voorbeelden/betalingen/demo-payment-non-orafin

Testen moet steeds gebeuren op de publish omgeving:

https://dv.formulieren-ti.vlaanderen.be/content/forms/af/vlaamse-overheid/voorbeelden/betalingen/demo-payment-non-orafin.html

Na het indienen van het formulier krijgt u de bevestigingspagina te zien:

Druk op de knop ā€œBetaalvenster openenā€

Na een succesvolle betaling krijgt u een aangepast bericht te zien;

Ā 

Ā 

Dit is een officiƫle website van de Vlaamse overheid - Uitgegeven door Digitaal Vlaanderen: https://www.vlaanderen.be/digitaal-vlaanderen

DISCLAIMER: http://www.vlaanderen.be/nl/disclaimer
TOEGANKELIJKHEID: http://www.vlaanderen.be/nl/toegankelijkheid