Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Panel
bgColor#79E2F2

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

Panel
bgColor#79E2F2

Title: Validate Payment

Panel
bgColor#79E2F2

Description : This endpoint gives the available payment channel available for a given currency

Panel
bgColor#79E2F2

URL: api /payment/pay/Validate

Panel
bgColor#79E2F2

HTTP Method : POST

Panel
bgColor#79E2F2

Headers : authorization Set value to Bearer SECRET_KEY

string

First, you need to gather and Pass the details below.

Panel
bgColor#FFC400

Request Body

Code Block
languagejs
{
  "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

Panel
bgColor#FFC400

Response Body Response code : 200

info
Code Block
languagejs
{
  "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
}
: null
}

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#FFC400

From Response above the available Payment channels for NGN Currency { “Cards” , “Transfer”)

Step 2: Call Initiate Payment Endpoint

Panel
bgColor#79E2F2

Title: Initiate Payment

Panel
bgColor#79E2F2

Description : This endpoint is used to initiate a payment transaction irrespective of the channel

...

bgColor#79E2F2

...

GBP Currency { “Card” , “PayByAccount”)

Step 2: Call Initiate Payment Endpoint

Panel
bgColor#79E2F2

HTTP Method Title: POST Initiate Payment

Headers : authorization Set value to Bearer SECRET_KEY

string
Panel
bgColor#79E2F2

First, you need to gather the transaction and Customer details as shown below:

Note

NB: Link Alias is passed when you are processing a Payment link transactionDescription : This endpoint is used to initiate a payment transaction irrespective of the channel

{ "currencyCode": "NGN", "amount": 5000, "channel": "Card", "currency": "NGN", "linkAlias": "6njkpsu", "userInformation": { "firstName": "ogr",
Panel
Code Block
languagejs
bgColor#FFC400

Request Body

#79E2F2

URL: api /payment/pay/Initiate

Panel
bgColor#79E2F2

HTTP Method : POST

Panel
bgColor#79E2F2

Headers : authorization Set value to Bearer SECRET_KEY

string

First, you need to gather the transaction and Customer details as shown below:

Note

NB: Link Alias is passed when you are processing a Payment link transaction

Panel
bgColor#FFC400

Request Body

Code Block
languagejs
{
    "lastNamecurrencyCode": "etGBP",
   
    "phoneamount": "08100969815",
   1,
    "emailAddresschannel": "etog@gmail.com"
    }PayByAccount",
    "metaDatacurrency":{"redirect-url":"https://ayobami.azurewebsites.net"} "GBP",
    "paymentRequestPropslink": {
        "cardalias": {"0-k2tmbuy"
       },
    "cvvuserInformation": "100",
   {
        "expMonthfirstName": 1"Dave",
            "expYearlastName": 2039,
   "MC",
        "numberemailAddress": "4508750015741019mcdave@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", "PayByTransfer", "paywithAccountPaybyAccount" ]. In this case, you will Card pass PaybyAccount as Channel Value

  • amount: The amount to charge the customer for the card 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 customer

  • alias: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)

  • metadata : An object containing any extra information you'd like to store alongside the transaction: Pass The url we redirect to after the customer completes payment. For 3DSecure payments, we'll append the tx_ref to the URL as query parameters (Required)

Panel
bgColor#FFC400

Sample Response Body Response code : 200

...

languagejs

...

  • 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)

Panel
bgColor#FFC400

Sample Response Body Response code : 200

Code Block
languagejs

  {
    "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,
            "channelreference": "CardTZ2ZFLPMU39GDPG",
            "messagepaymentReference": "Payment Initiated SuccessfullyTZ2ZFLPMU39GDPG",

     "amount": 5000,         "feesmetaData": {
 0,       "reference": "TUBJRGMSDFT9DPG",       "metaDataAuthUrl": {}
 "https://cdn.plaid.com/link/v2/stable/link.html?isWebview=false&token=link-development-39c7f73c-0b44-43b9-b3e3-d2cae8e1dc45"
  }   },   "isSuccess": true,   "error": "",}
   "message": "",   "type": null,
  "title": null, }
    "status": null},
  "detail": null,   "instanceisSuccess": nulltrue
}

Step 3 : Call GET Transaction Status

Panel
bgColor#79E2F2

Title: Get Transaction Status Endpoint

Panel
bgColor#79E2F2

Description : This endpoint is used to get transaction status.

Panel
bgColor#79E2F2

URL: api /payment/transactions/{Reference}

Panel
bgColor#79E2F2

HTTP Method : GET

Panel
bgColor#79E2F2

Headers : authorization Set value to Bearer SECRET_KEY

string

Pass the Payment Reference ID : “TUBJRGMSDFT9DPG“ "TVI1HLDDNATWSPG"from the response gotten from the Initiate Payment End point above

Panel
bgColor#FFC400

Sample Response Body Response code : 200

Code Block
languagejs
{
    "value": {
        "paymentReference": "TUBJRGMSDFT9DPGTVI1HLDDNATWSPG",
        "amount": {
            "currencyCode": "GBPNGN",
            "amount": 5000100.00
        },
        "paymentStatus": 0
 6   },
    "isSuccess": true,
    "error": "",
    "message": "",
    "type": null,
    "title": null,
    "status": null,
    "detail": null,
    "instance": null
}

...