Join GitHub today
Getting started with the Veritrans SDK
Veritrans SDK is a library that simplifies the process of making transactions on Veritrans Payment gateway.
There are three parties involved in the payment process for making a payment:
- Merchant Server Backend (Implemented by the app author)
- Customers (Who are making the payment on their mobile devices)
- Veritrans (Payment Gateway)
Steps in a mobile transaction
- Checkout: Mobile app send Customers details and Payment Request (purchased product details) to merchant Snap server.
- Redirect Checkout : Merchant Server redirect the checkout data to merchant Snap Server.
Provide Token : Snap server provide response an
authentication_tokento merchant server.
Redirect Token : Merchant Server redirect
authentication_tokenfrom Snap server to Mobile app
Get Payment option : Mobile App get available payment options by sending
authentication_tokento Snap server
- Provide Transaction Options : Snap Server provide response transaction options to mobile apps.
- Pay : User clicks pay
Charge transaction : Mobile Apps charge the payment by sending transaction request and
authentication_tokento Snap token
- Provide Charge Response : Snap Server send the charge response to mobile app.
- Notify Transaction : Snap Server notify the transaction status to merchant Snap server.
Payment types Supported
- Credit/Debit Cards - Support for making payments via credit cards and or debit cards using our
two-clicksfeature. We support
- Mandiri ClickPay
- CIMB Clicks
- ePay BRI
- Indosat Dompetku
- Mandiri e-Cash
- Bank Transfer - Support payment using Permata Virtual Account and BCA Virtual Account.
- Mandiri Bill Payment
- Indomaret - Payment via convenience Stores
- BCA Klikpay
- Offers - supports offers like BIN Promos, Discounts , Installments, etc.
- Register Card : Securely store the credit card tokens with the merchants for seamless payment experience
- UI flow (Recommended) : We provide the drop in User interface for making transactions on all the payment types supported by Veritrans. Watch the video for the default UI flow example.
Core flow : We provide an API only implementation for all payment types, This allows users to
Bring your own UIto the mobile App.
- Please familiarize yourself with our documentation
- Create a merchant account in MAP
- Setup your merchant accounts settings, in particular Notification URL.
- Checkout the Veritrans SDK Demo App and walk through the implementation.
- Checkout the server implementation reference, and walk through the API's that you may need to implement on your backend server.
- There are 2 separate keys CLIENT_KEY and SERVER_KEY (available on MAP)
- CLIENT_KEY is used for tokenizing the credit card. It can only be used from the Client(mobile device)
- SERVER_KEY is used for acquiring the token from the Veritrans server. It is not to be used from the device, all API requests that use the SERVER_KEY need to be made from the Merchant Server.
- We use strong encryption for making connections to Merchant server, please make sure it has valid https Certificate.
- Please be careful logging payment related information to the logs(especially when using Core flow).
Following are configurable parameters of SDK that can be used while performing transaction -
- Merchant server Endpoint- url of server to which transaction data will be sent. This will also be referred to as a merchant server.
- Transaction details - contains payment information like amount, order Id, payment method etc.
- Veritrans Client Key - token that specified by merchant server to enable the transaction using
credit card. Available on the MAP