Vipps is a win-win choice
Nowadays it is routinely common to purchase goods or services online. Just think that this year Black Friday online sales reached $7.4 billion.
If we try to count everything that we could potentially buy by utilizing online payment services, it would occupy most of our blog. Quite fortunately, this isn’t the focus of our article.
Our aim is to introduce you to step-by-step instructions regarding the integration of the mobile payment service, called Vipps into a mobile app by using the collaborative case of our Norwegian client - Moodie.
Vipps is used by approximately 57,1% of the population in Norway and this is the largest single payment service in the country, so whatever goods or services that are sold with your application, if it targets the Norwegian market, the integration of Vipps would be a win-win сhoice due to its convenience, awareness, and simplicity.
Step-by-step Vipps integration
1. Create your test environment
You need to have a customer relationship with Vipps, and an active subscription for the relevant Vipps solutions. After ordering it and getting the welcome email, you can apply for a development account for a test and production environment. This procedure takes approximately 1-3 days.
To create a test environment you need to have the Norwegian organization number, and to sign the order with BankID. After this, you can register for a Vipps test account, and create test credentials.
2. Integrate Direct Capture
Direct capture vs. Reserve capture comparison
Prior payment discussions must clearly define the term Capture which is considered to be finalized once payment has been confirmed.
There are two possible options for payment: Direct capture and Reserve capture. Merchants aren’t able to choose between Reserve capture and Direct capture themselves. This type of capture is configured solely by Vipps after additional compliance checks have been completed.
Reserve capture is known as the normal flow. When a user approves an initiated payment it will be reserved until a merchant captures it. To capture the payment a merchant has to confirm the transaction on their page (account) through the Vipps website. Only after this process has been completed the transaction will be deemed confirmed.
When Direct capture is activated, all payment reservations will be captured automatically without any transaction confirmation on the website. In our case, Direct capture was configured.
The algorithm of Direct capture:
1. The user clicks on the ‘PAY’ button with Vipps and this action redirects it to the payment screen on the device with the installed Vipps app.
2. After the transaction confirmation, a person will be redirected to the URL which has been defined in the initial payment request sent by your app. But payment is still not confirmed.
3. To confirm payment Vipps sends a callback with information related to your transaction status and mentioned in the initial payment request endpoint.
4. To protect your system from Vipps callback malfunctions you are better off sending your own requests to the Vipps server in order to define the transaction status after a certain pause. Due to the Vipps lifetime of initial payment linking documentation takes less than 5 minutes. This means that a customer only needs 5 minutes for transaction confirmation. After the initial 5 minutes delay, you can send a request to check the transaction status.
5. After callback fetching with payment status, the 'SALE' transaction is considered to be confirmed.
Make a request for Direct capture:
In order to properly integrate Direct capture into the application, you need to satisfy the following requirements:
- to have annual revenue of more than 10 million NOK
- to have a Key Account Manager (KAM) in Vipps
- to have a partner that is responsible for the Vipps integration
To request Direct capture, contact your KAM.
In order to completely integrate Direct capture, you need to implement the following functionality into your application:
- Fetching of the Access token
- Payment Initiate
- Payment Capture
- Payment Cancel
- Payment Refund
- Payment Details
- Payment Callback
3. Check Vipps eCommerce API
To finish the integration of Vipps, your code needs to match Vipps eCommerce API Checklist. It offers functionality for online payments, both using web browsers on websites and in native apps for iOS and Android, using app-switching.
If Norwegian citizens are the target audience of your application, the integration of Vipps will be the best way to monetize your app.
First of all - you need to understand whether the functionality of Vipps can meet all the business requirements of your product and bring the value that you expect. Because of the variation and individuality of every case, the best way to get answers to these questions is to connect with Vipps developers. Fortunately, the company offers great support services. In our case, the Vipp’s team got in touch with us very quickly after the request was submitted.
Second of all - you need a development team that can make it happen. Axon has years of experience in the mobile development niche by creating end-to-end software solutions. We know how to deliver the product on-time without draining your development budget. If we have piqued your interest, contact our manager to get the full presentation regarding Axon’s services and start to realize your business idea right now.
In our next blog post we are talking cross-platform technology - React Native, its pros and cons for the application mobile development.