GBP Bank Account Integration Process
Currently on Leatherback Platform, This payment method is only supported by GBP Currency. The process below can be followed to integrate the GBP Bank Account ;
Step 1: Call Validate Payment Endpoint
Title: Validate Payment
Description : This endpoint gives the available payment channel available for a given currency
URL: api /payment/pay/Validate
HTTP Method : POST
Headers : authorization Set value to Bearer SECRET_KEY
string
First, you need to gather and Pass the details below.
Request Body
{ "amount": { "currencyCode": "GBP", "amount": 5000 }, "channels": [ "string" ] }
amount
: The amount to charge the customer.currency Code
: A three-letter ISO code for the currency in which you want to accept the payment. A unique code that represents a defined business currency. E.g NGN=Nigerian Naira, GBP =Great Britain Pounds
Response Body Response code : 200
{ "value": { "isValid": true, "channels": [ { "id": "2d60ca92-8f2f-486a-aa21-35cc9434898f", "name": "Card", "alias": "Card", "description": null }, { "id": "a470390f-4d10-4a9b-922b-8fd960b4b595", "name": "PayByAccount", "alias": "PayByAccount", "description": null } ] }, "isSuccess": true, "error": "", "message": "Request Successful", "type": null, "title": null, "status": null, "detail": null, "instance": null }
From Response above the available Payment channels for GBP Currency { “Card” , “PayByAccount”)
Step 2: Call Initiate Payment Endpoint
Title: Initiate Payment
Description : This endpoint is used to initiate a payment transaction irrespective of the channel
URL: api /payment/pay/Initiate
HTTP Method : POST
Headers : authorization Set value to Bearer SECRET_KEY
string
First, you need to gather the transaction and Customer details as shown below:
NB: Link Alias is passed when you are processing a Payment link transaction
Request Body
{ "currencyCode": "GBP", "amount": 1, "channel": "PayByAccount", "currency": "GBP", "link": { "alias": "0-k2tmbuy" }, "userInformation": { "firstName": "Dave", "lastName": "MC", "emailAddress": "mcdave@test.com", "phone": "070000000" } }
Channel:
An array of payment channels to control what channels you want to make available to the user to make a payment with. Available channels include: ["Card", "PaybyAccount" ]. In this case, you will pass PaybyAccount as Channel Valueamount
: The amount to charge the customer for the transaction (Required)currency Code
: A three-letter ISO code for the currency in which you want to accept the payment. A unique code that represents a defined business currency. E.g NGN=Nigerian Naira, GBP =Great Britain Pounds etc (Required)narration:
This is usually a description of items being purchased by a customeralias:
An alias allows users to access a page (node) or file at an alternative path. A redirect is moving a user to the correct file or page (node) because it no longer exists at a previous path. Alias lets you choose a nickname for your page, meaning a new URL that points to the content the same way the original URL does (This is only Mandatory when initiating a Payment Link transaction)firstName:
This is the first Name of the Customer (Required)lastName:
This is the Last Name of the Customer (Required)phone:
This is the phone number of the Customer (Required)emailAddress
:This is the email address of the customer (Required)
Sample Response Body Response code : 200
{ "value": { "paymentStatus": "REQUIRE_BANK_AUTH", "message": "Payment initiated successfully. Kindly click on the link to complete your payment", "paymentItem": { "channel": "PayByAccount", "message": "Payment initiated successfully. Kindly click on the link to complete your payment", "amount": 1, "fees": 0, "reference": "TZ2ZFLPMU39GDPG", "paymentReference": "TZ2ZFLPMU39GDPG", "metaData": { "AuthUrl": "https://cdn.plaid.com/link/v2/stable/link.html?isWebview=false&token=link-development-39c7f73c-0b44-43b9-b3e3-d2cae8e1dc45" } } }, "isSuccess": true }
Step 3 : Call GET Transaction Status
Title: Get Transaction Status Endpoint
Description : This endpoint is used to get transaction status.
URL: api /payment/transactions/{Reference}
HTTP Method : GET
Headers : authorization Set value to Bearer SECRET_KEY
string
Pass the Payment Reference : "TVI1HLDDNATWSPG"
from the response gotten from the Initiate Payment End point above
Sample Response Body Response code : 200
{ "value": { "paymentReference": "TVI1HLDDNATWSPG", "amount": { "currencyCode": "NGN", "amount": 100.00 }, "paymentStatus": 0 }, "isSuccess": true, "error": "", "message": "", "type": null, "title": null, "status": null, "detail": null, "instance": null }