Buckaroo Support

App en betalen

Steeds vaker worden er Apps gebruikt in combinatie met de Buckaroo betaalomgeving. Het gebruik van de hosted payment page van Buckaroo is geen probleem omdat deze responsive is ingericht en zich vormt binnen de ruimte die daarvoor wordt gegeven. De problematiek ontstaat bij het redirecten naar de betaalomgevingen van de verschillende acquirers. Denk dan bijvoorbeeld aan de banken die iDEAL aanbieden, maar bijvoorbeeld ook de 3D Secure omgevingen van de verschillende CreditCard aanbieders.

De beveiligde omgevingen van banken en credit card maatschappijen wensen vaak uit te breken. Dit uitbreken is verplicht gesteld door de banken om zo te waarborgen dat de authorisatie van de betaling plaatsvindt zonder dat de App daarvan de details zou kunnen ondervangen of opslaan. Wanneer de betaler niet naar de App gerouteerd kan worden, zal deze alsnog via de reguliere manier moeten inloggen in de bank- of credit card omgeving. Dit leidt vaak tot een extra afhaakmoment in het aankoopproces omdat daarbij vaak een Random Reader, tancode of ander mechanisme nodig is.

Aanwijzing voor ontwikkelaars

Voor de developers van de App(s) is de volgende link interessant waar uitleg wordt gegeven over het gedrag van een operating systeem in combinatie met een App: Handling Page Navigation.
Op deze webpagina wordt uitgelegd hoe met de definitie van een Webview het standaard gedrag van het operating systeem van een device (zoals een telefoon of tablet) kan worden overschreven met een andere actie. Hieronder een voorbeeld van een Webview waarin alleen de Buckaroo URLs in een browser worden getoond en het overige wordt geopenend in de bijbehorende (bank) App.

Neem onderstaande code over in de Merchant App definitie

private class BuckarooWebViewClient extends WebViewClient {

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {

if (Uri.parse(url).getHost().equals("checkout.buckaroo.nl")) {

// This is a Buckaroo URL, try to open the bank app

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));

startActivity(intent);

return true;

}

// Otherwise, the link is not a Buckaroo URL so do not override; let my WebView load the page

return false;

} }

Advies

Buckaroo ondersteunt JSON als veelgebruikt koppelvlak voor mobiele Apps. Er wordt aan Buckaroo een request gestuurd met daarin de gewenste betaalmethode en de gegevens die nodig zijn om de betaalmethode zo direct als mogelijk te starten. Voor iDEAL kan dat bijvoorbeeld de huisbank zijn van de betaler en voor Credit Cards het type kaart. De aanlog gegevens van de bank of de Credit Card gegevens worden dan door de betaler ingevuld op één van de volgende omgevingen / schermen:

  • De iDEAL betaal omgeving van de meegegeven of gekozen huisbank van de betaler
  • De Client Side Encryptie module waarbij de Credit Card gegevens op een PCI compliant manier worden ingevuld. Het alternatief is de Hosted Payment Page van Buckaroo gebruiken voor het invullen van de gegevens van de CreditCards.
  • De 3D Secure pagina van de Credit Card maatschappij welke de card-not-present beveiligings controle uitvoert
  • De PayPal omgeving van de betaler waar de details van de PayPal wallet worden ingevuld

Na het afronden van de betaalcyclus door de betalende, wordt er een redirect uitgevoerd. Deze redirect vindt plaats naar een URL welke bij het indienen van de transactie aan Buckaroo is aangegeven. Daarmee komt de gebruiker terug in de App van de Merchant. Met de redirect wordt ook het resultaat van de betaling meegestuurd. Op basis daarvan kan de Merchant in de App de juiste boodschap tonen een de betaler. Denk dan aan een bedankt pagina voor een geslaagde betaling en een "probeer het nogmaals" voor betalingen welke zijn mislukt. Door middel van een push bericht kan via een apart/eigen kanaal aan de backend van de Merchant het resultaat worden doorgegeven. Deze push bevat dezelfde gegevens als de redirect, waardoor de levering van de gewenste producten of diensten direct kan worden gestart of aangehouden.