App and payments

Using apps with Buckaroo

Apps are increasingly being used in combination with the Buckaroo payment environment. Buckaroo's hosted payment page is responsive and adjusts to the space available. Issues may arise when redirecting to payment environments of various acquirers, such as banks or credit card providers.

Handling secure environments

Banks and credit card companies often mandate breaking out of apps to ensure secure payment authorization. This process can require additional steps from the payer, such as using a Random Reader or entering a TAN code.

πŸ“˜

Developer Note

This webpage explains how with the definition of a Webview the standard behavior of the operating system of a device (such as a telephone or tablet) can be overwritten with another action. Below is an example of a Webview in which only the Buckaroo URLs are displayed in a browser and the rest is opened in the associated (banking) App.

Code example

Copy the code below into the Merchant App definition

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;

} }

Advice

Buckaroo supports JSON as a frequently used interface for mobile apps. This allows for sending payment requests with the necessary data to start payment methods immediately. For iDEAL, this can be, for example, the payer's bank and for Credit Cards the type of card. The login details of the bank or the Credit Card details are then entered by the payer on one of the following environments/screens:

  • iDEAL payment environments.
  • Client Side Encryption for credit card data entry.
  • 3D Secure pages for card-not-present security checks.
  • PayPal wallet environments.

After the payer completes the payment cycle, they are redirected to a URL specified to Buckaroo when the transaction was submitted. This URL returns the user to the Merchant's App, along with the payment result. Based on this result, the Merchant can display an appropriate message to the payer in the App, such as a thank you page for a successful payment or a "try again" message for a failed payment.

Additionally, a push message is sent to the Merchant's backend through a separate channel. This push message contains the same data as the redirect, enabling the Merchant to immediately start or continue the delivery of the desired products or services.