# Introduction

Welcome to the Bell BASS API Integration Guide. This document aims to provide developers with a comprehensive understanding of how to integrate various Bell BASS API services into their applications.

### Overview

The Bell BASS API offers a wide range of functionalities to streamline financial operations:

1. **Bank Transfer:**
   * **Description:** Enables secure and efficient transfer of funds between bank accounts. This service includes endpoints for retrieving a list of supported banks, performing name enquiries to verify account details, and initiating bank transfers.
2. **Virtual Account:**
   * **Description:** Provides functionality to manage virtual accounts. Virtual accounts can be used for various purposes such as receiving payments, managing sub-accounts for different users, or organizing funds for specific projects.
3. **Utility Bill Payment:**
   * **Description:** Allows users to pay utility bills directly through the API. This includes managing biller lists, fetching bill details, and processing bill payments.
4. **Webhook Notifications:**
   * **Description:** Facilitates real-time notifications for various events such as transaction status updates, new payments received, and other significant activities. Webhooks ensure that your application can react immediately to important changes.


# Getting Started

To begin integrating the Bell BASS API:

1. Obtain your API key from the Bell BASS developer portal.
2. Familiarize yourself with the API endpoints and the required request/response formats.
3. Start by integrating the service most critical to your application, whether it’s bank transfers, virtual accounts, utility bill payments, or webhooks.
4. Implement comprehensive error handling and security measures.

By following this guide, you can seamlessly integrate the Bell BASS API into your application, providing robust and secure financial services to your users.

For more detailed information, please refer to the Bell BASS API Reference Documentation or contact our support team at <support@bellmfb.com>.

```
BASE URL SANDBOX: https://sandbox-baas-api.bellmonie.com
BASE URL PRODUCTION: https://baas-api.bellmonie.com
```

## Generate Token

Use **consumerKey**, **consumerSecret** and **validityTime** at the header to generate a tok

`POST` `/v1/generate-token`

Use **consumerKey**, **consumerSecret** and **validityTime** at the header to generate a token&#x20;

**Headers**

| Name           | Value                | Description               |
| -------------- | -------------------- | ------------------------- |
| Content-Type   | `application/json`   |                           |
| consumerKey    | `{{consumerKey}}`    | obtain from the dashboard |
| consumerSecret | `{{consumerSecret}}` | obtain from the dashboard |
| validityTime   | `{{validityTime}}`   | in minutes Max 48 Hours   |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "message": "Token generated successfully",
    "token": "eyJhbGciOiJIUz9.eyJidXNpbmVzc0lkIjoyMCwidXNlcklkIjo1NDIsInN0YXR1cyI6ImIsImlhdCI6MTcxNjczNzQ0NX0.Avy8w4f-B3432zBeo9a7HXdI1M4XvARVO_XGo"
}
```

{% endtab %}

{% tab title="400" %}

```json
{
    "success": false,
    "message": "Failed to generate token",
}
```

{% endtab %}
{% endtabs %}


# Virtual Accounts

The Bell BASS Virtual Account API offers a powerful and flexible way to manage financial transactions through virtual accounts. Virtual accounts are unique identifiers linked to a primary account that can be used to receive payments, manage funds, or organize financial activities. This guide provides developers with an overview of the virtual account functionality, ensuring a smooth integration process.

### Key Features

1. **Create Virtual Account:** Generate new virtual accounts for various purposes such as receiving payments or managing project-specific funds.
2. **List Virtual Accounts:** Retrieve a list of all virtual accounts associated with the primary account.
3. **Virtual Account Transactions:** Access transaction history and details for individual virtual accounts.


# Create Client (Individual)

## Create Client

<mark style="color:green;">`POST`</mark> `/v1/account/clients/individual`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body**

| Name          | Type              | Description    |
| ------------- | ----------------- | -------------- |
| `firstname`   | string            |                |
| `lastname`    | string            |                |
| `middlename`  | string (Optional) |                |
| `phoneNumber` | string            |                |
| emailAddress  | string            |                |
| `address`     | string            |                |
| `bvn`         | string            |                |
| nin           | string            | (Optional)     |
| `gender`      | string            | (male, female) |
| `dateOfBirth` | string            | 1993/12/29     |
| `metadata`    | json              | optional       |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "data": {
        "metadata": {},
        "createdAt": 1717077370399,
        "updatedAt": 1717077370399,
        "id": 1,
        "accountNumber": "0000000033",
        "accountName": "Garo - Ismail",
        "accountType": "individual",
        "firstname": "John",
        "lastname": "Doe",
        "middlename": "User",
        "mobileNumber": "08091329974",
        "externalReference": "24053014560933057683",
        "emailAddress": "ahmad9980@doe.com",
        "bvn": "992323214",
        "gender": "male",
        "address": "wall street",
        "dateOfBirth": "1993/12/29",
        "validityType": "permanent"
    }
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Create Client (Corporate)

## Create Client

<mark style="color:green;">`POST`</mark> `/v1/account/clients/`corporate

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body**

| Name                | Type   | Description |
| ------------------- | ------ | ----------- |
| `rcNumber`          | number |             |
| `businessName`      | string |             |
| emailAddress        | string |             |
| `phoneNumber`       | string |             |
| `address`           | string | Optional    |
| `bvn`               | number |             |
| `incorporationDate` | string |             |
| `dateOfBirth`       | string |             |
| `metadata`          | json   | optional    |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "data": {
        "metadata": {},
        "createdAt": 1717077859320,
        "updatedAt": 1717077859321,
        "id": 2,
        "businessName": "Doe Ltd A",
        "accountNumber": "0000000057",
        "accountName": "Garo - Doe",
        "accountType": "corporate",
        "rcNumber": "0000011",
        "incorporationDate": "1993-12-28T23:00:00.000Z",
        "mobileNumber": "07008190060",
        "externalReference": "24053015041852341823",
        "emailAddress": "johndoe38@acme.inc",
        "bvn": "9922938",
        "dateOfBirth": "21/2/2020",
        "address": "wall street",
        "validityType": "permanent"
    }
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Get Client Accounts

## Create Client

<mark style="color:green;">`GET`</mark> `/v1/account/clients`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Params**

| Name           | Type   | Description |
| -------------- | ------ | ----------- |
| `accountType`  | string | Optional    |
| `validityType` | string | Optional    |
| `status`       | string | Optional    |
| `page`         | number | Optional    |
| `limit`        | number | Optional    |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "data": [
        {
            "metadata": {},
            "id": 1,
            "externalReference": "123456",
            "accountType": "individual",
            "firstName": "John",
            "lastName": "Doe",
            "mobileNumber": "08020304051",
            "accountNumber": "000000018",
            "accountName": "John Doe",
            "accountTier": null,
            "emailAddress": "john1@doe.com",
            "bvn": "22222222221",
            "dateOfBirth": "21/2/2020",
            "businessId": 1,
            "rcNumber": null,
            "incorporationDate": null,
            "createdAt": 1704284832,
            "updatedAt": 1704284832
        }
    ]
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Name Enquiry (Internal)

## Create Client

<mark style="color:green;">`GET`</mark> `/v1/client-enquiry/{{accountNumber}}`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Response**

{% tabs %}
{% tab title="200" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "success": true,
    "data": {
        "accountName": "John Doe",
        "accountNumber": "000000018",
        "externalReference": "123456",
        "customAccountNumber": "8020304051",
        "nubanAccountNumber": "NUBAN generation is not enabled",
        "currency": "NGN",
        "accountTier": null,
        "mobileNumber": "08020304051",
        "emailAddress": "john1@doe.com"
    }
}
</code></pre>

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Get Account Info

## Create Client

<mark style="color:green;">`GET`</mark> `/v1/account`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Response**

{% tabs %}
{% tab title="200" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "success": true,
    "data": {
        "currency": "NGN",
        "accountNumber": "1000040000",
        "productName": "Bell Business Account",
        "accountType": "business",
        "accountName": "A and Y Media",
        "accountTier": 0,
        "createdAt": 1723416950964,
        "updatedAt": 1723416950964,
        "ledgerBalance": "892.00",
        "availableBalance": "892.00"
    }
}
</code></pre>

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Bank Transfer

The Bell BASS Bank Transfer API provides a streamlined, secure method for executing financial transactions between bank accounts. This guide offers a comprehensive overview of the bank transfer process, ensuring developers can efficiently integrate this functionality into their applications. The API supports a range of operations including retrieving supported banks, verifying account details, and initiating transfers.

### Key Features

1. **Get a Bank List:** Retrieve a list of all supported banks to ensure valid bank codes are used in transactions.
2. **Name Enquiry:** Verify the account holder's name associated with a specific bank and account number.
3. **Transfer:** Initiate a secure transfer of funds between bank accounts.


# Bank List

Retrieve a list of all supported banks to ensure valid bank codes are used in transactions

## Get Bank List

<mark style="color:green;">`GET`</mark> `/v1/transfer/banks`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |
|               |                    |

**Body**

**Response**

{% tabs %}
{% tab title="200" %}

````json
{
    "success": true,
    "message": "Banks fetched successfully",
    "data": [
        {
            "institutionCode": "110005",
            "institutionName": "3LINE CARD MANAGEMENT LIMITED",
            "category": "11"
        },
        {
            "institutionCode": "120001",
            "institutionName": "9 payment service Bank",
            "category": "12"
        },
        {
            "institutionCode": "050005",
            "institutionName": "AAA FINANCE",
            "category": "5"
        },
        {
            "institutionCode": "090270",
            "institutionName": "AB MICROFINANCE BANK",
            "category": "9"
        },
        {
            "institutionCode": "070010",
            "institutionName": "ABBEY MORTGAGE BANK",
            "category": "7"
        },
        {
            "institutionCode": "090260",
            "institutionName": "ABOVE ONLY MICROFINANCE BANK",
            "category": "9"
        },
        {
            "institutionCode": "090640",
            "institutionName": "ABSU Microfinance Bank",
            "category": "9"
        },
        {
            "institutionCode": "090197",
            "institutionName": "ABU MICROFINANCE BANK",
            "category": "9"
        },
        {
            "institutionCode": "090424",
            "institutionName": "Abucoop  Microfinance Bank",
            "category": "9"
        },
        {
            "institutionCode": "090545",
            "institutionName": "ABULESORO MICROFINANCE BANK LTD",
            "category": "9"
        },
        {
            "institutionCode": "090202",
            "institutionName": "ACCELEREX NETWORK",
            "category": "11"
        },
        {
            "institutionCode": "000014",
            "institutionName": "ACCESS BANK",
            "category": "2"
        },
        {
            "institutionCode": "000005",
            "institutionName": "ACCESS BANK PLC (DIAMOND)",
            "category": "2"
        },
        {
            "institutionCode": "100013",
            "institutionName": "ACCESSMONEY",
            "category": "10"
        }
```
    ]
}
````

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Name Enquiry

Verify the account holder's name associated with a specific bank and account number

## Name Enquiry

<mark style="color:green;">`POST`</mark> `/v1/transfer/name-enquiry`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |
|               |                    |

**Body**

| Name            | Type   | Description                                                 |
| --------------- | ------ | ----------------------------------------------------------- |
| `bankCode`      | string | Bank institutionCode from the bank list Test Bank Code: 010 |
| `accountNumber` | number | Account Number to be Validate  Test Account: 1001011000     |

**Response**

{% tabs %}
{% tab title="200" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "success": true,
    "message": "",
    "data": {
        "accountName": "Test Account",
        "bankCode": "100004",
        "bvn": "20102010201",
        "message": "",
        "sessionID": "999999231115104838645541436147",
        "transactionId": "090672231115094837501153916527",
        "responseCode": "00",
        "kycLevel": "3",
        "bankVerificationNumber": "20102010201",
        "channelCode": 1
    }
}
</code></pre>

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Unsuccessful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Transfer

Initiate a secure transfer of funds between bank accounts.

## Create a new user

<mark style="color:green;">`POST`</mark> `/v1/transfer`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body**

<table><thead><tr><th width="335">Name</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td><code>beneficiaryBankCode</code></td><td>string</td><td>Receivers  Bank code. Test BankCode: 010</td></tr><tr><td><code>beneficiaryAccountNumber</code></td><td>string</td><td>Receivers Account number. Test Account: 1001011000</td></tr><tr><td><code>narration</code></td><td>string</td><td>Transfer Description</td></tr><tr><td><code>amount</code></td><td>number</td><td>Amount to be sent. NOTE: decimal should not exceed 2 digits. i.e 230.00, 100.00</td></tr><tr><td><code>reference</code></td><td>string</td><td>Transaction reference (optional) Which will contain first word of your business name as a prefix I.E "Garo Pay" the reference should be GARO-rand123.  Auto create if not provided.</td></tr><tr><td>senderName</td><td>string</td><td>Sender Name (Optional). This is what will be shown as sender after recieving transfer. If not set, business will be set as default</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "message": "Your transfer has been processed, Test Bank will receive your transfer in less than 5 minutes",
    "data": {
        "netAmount": 110,
        "details": {},
        "destinationAccountNumber": "0123456789",
        "sourceAccountName": "Garo Enterprise",
        "sourceAccountNumber": "0001479098",
        "sourceBankCode": "000023",
        "sourceBankName": "BellMonie",
        "amount": 100,
        "charge": 10,
        "completedAt": 1717094000705,
        "sessionId": "999999231115104838645541436147",
        "type": "debit",
        "description": "Transfer to Test Account",
        "transactionTypeName": "bank_transfer",
        "status": "pending",
        "reference": "123XY3Z900000000",
        "destinationAccountName": "Test Account",
        "destinationBankCode": "100004",
        "destinationBankName": "Test Bank"
    },
    "beneficiary": {}
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Unsuccessful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Requery Transfer

Initiate a transfer query to get the status of the transfer. This can be done by getting transfer status using transactionId, or by getting the transaction status using reference

## 1. Transaction Query by Reference

<mark style="color:green;">`GET`</mark> `/v1/transactions/reference/{reference}`

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |
|               |                    |

{% tabs %}
{% tab title="200" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "success": true,
    "message": "",
    "data": {
        "netAmount": 180,
        "details": {},
        "id": 19253,
        "userId": 745,
        "accountId": null,
        "amount": "180.00",
        "charge": "0.00",
        "description": "Transfer to John Doe",
        "destinationAccountNumber": "1000006362",
        "destinationAccountName": "John Doe",
        "destinationBankCode": "000023",
        "destinationBankName": "Test Bank",
        "sourceAccountNumber": "8011223344",
        "sourceAccountName": "",
        "sourceBankCode": "",
        "sourceBankName": "",
        "reference": "A_00124092616341963292958",
        "transactionTypeName": "bank_transfer",
        "stampDuty": null,
        "sessionId": "100004240926153311119822107551",
        "status": "successful",
        "reversedFlag": 0,
        "category": "bank_transfer",
        "utilityType": null,
        "type": "credit",
        "completedAt": 1727364859641,
        "createdAt": 1727364859642,
        "updatedAt": 1727364859642
    }
}
</code></pre>

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Unsuccessful",
  "data": null
}
```

{% endtab %}
{% endtabs %}

## 2. Transfer Requery

<mark style="color:green;">`GET`</mark> `/v1/transfer/tsq`?transactionId=12345698690885579

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
     "success": true,
     "message": "Tsq successful",
     "data": {
        "transactionStatus": "SUCCESSFUL",
        "feedbackCode": "00",
        "feedbackDescription": "Approved or completed successfully"
    }
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Unsuccessful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Transactions

The Bell BASS Transaction API. This guide offers a comprehensive overview of all transactions.

### Key Features

1. **Get All Transacions:** Retrieve a list of all transactions. Both inflow and outflow
2. **Single transaction by reference:** get a single transaction by reference provided during transaction.


# All Transactions

Retrieve a list of transactions

## Get all Transactions

<mark style="color:green;">`GET`</mark> `/v1/transactions`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |
|               |                    |
|               |                    |

### Query Params

| Name  | Value | Description                                                         |
| ----- | ----- | ------------------------------------------------------------------- |
| page  | 1     | Pass page as query parameter. to fetch data on a certain page.      |
| limit | 30    | This indicates the amount of transactions to be returned on a page. |
|       |       |                                                                     |
|       |       |                                                                     |

**Body**

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
    "success": true,
    "data": [
    {
        "netAmount": 180,
        "details": {},
        "id": 19253,
        "userId": 745,
        "accountId": null,
        "amount": "180.00",
        "charge": "0.00",
        "description": "Collection on Transfer from John Doe",
        "destinationAccountNumber": "1000006362",
        "destinationAccountName": "BellBank Media",
        "destinationBankCode": "000023",
        "destinationBankName": "BellBank",
        "sourceAccountNumber": "08119808182",
        "sourceAccountName": "John Doe",
        "sourceBankCode": "100004",
        "sourceBankName": "OPAY",
        "reference": "A_00124092616341963292958",
        "transactionTypeName": "collection",
        "stampDuty": null,
        "sessionId": "100004240926153311119822107551",
        "status": "successful",
        "reversedFlag": 0,
        "category": "collection",
        "utilityType": null,
        "type": "credit",
        "completedAt": 1727364859641,
        "createdAt": 1727364859642,
        "updatedAt": 1727364859642
    }
    ]
}
```

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Un-Successful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Transaction by Reference

Verify the account holder's name associated with a specific bank and account number

## Transaction Enquiry

<mark style="color:green;">`GET`</mark> `/v1/transactions/reference/{reference}`

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |
|               |                    |

**Response**

{% tabs %}
{% tab title="200" %}

<pre class="language-json"><code class="lang-json"><strong>{
</strong>    "success": true,
    "message": "",
    "data": {
        "netAmount": 180,
        "details": {},
        "id": 19253,
        "userId": 745,
        "accountId": null,
        "amount": "180.00",
        "charge": "0.00",
        "description": "Collection on Transfer from John Doe",
        "destinationAccountNumber": "1000006362",
        "destinationAccountName": "BellBank Media",
        "destinationBankCode": "000023",
        "destinationBankName": "BellBank",
        "sourceAccountNumber": "08119808182",
        "sourceAccountName": "John Doe",
        "sourceBankCode": "100004",
        "sourceBankName": "OPAY",
        "reference": "A_00124092616341963292958",
        "transactionTypeName": "collection",
        "stampDuty": null,
        "sessionId": "100004240926153311119822107551",
        "status": "successful",
        "reversedFlag": 0,
        "category": "collection",
        "utilityType": null,
        "type": "credit",
        "completedAt": 1727364859641,
        "createdAt": 1727364859642,
        "updatedAt": 1727364859642
    }
}
</code></pre>

{% endtab %}

{% tab title="400" %}

```json
{
  "success": false,
  "message": "Request Unsuccessful",
  "data": null
}
```

{% endtab %}
{% endtabs %}


# Utility Bill

The Bell BASS Utility Bill Payment API provides a convenient and secure method for managing and paying utility bills. This guide gives developers an overview of the utility bill payment functionality, outlining the steps required to integrate this service into their applications. The API supports operations such as retrieving a list of supported billers, fetching bill details, and processing bill payments.

### Key Features

1. **Get Biller List:** Retrieve a list of all supported billers to ensure valid biller codes are used in transactions.
2. **Fetch Bill Details:** Obtain details of a specific bill by providing the biller code and customer details.
3. **Pay Bill:** Process the payment of utility bills directly through the API.


# Airtime & Data


# Telecoms


# Buy Airtime


# Data Bundles


# Buy Data


# Cable TV


# TV List


# Packages


# Decoder Info


# TV Subscribe


# Electricity


# Electricity List


# Meter Info


# Buy Electricity


# Education


# Education List


# Jamb Verify


# Education Info


# Pay Education


# Transaction Notification

The Bell BASS Webhook API provides a mechanism for receiving real-time notifications about events in your application. Webhooks allow your application to react immediately to events such as transaction status updates, new payments, and other significant activities by receiving HTTP POST requests from the Bell BASS server.

### Key Features

1. **Setup Webhook:** Register a webhook URL to receive notifications for specific events.
2. **Webhook Notifications:** Receive real-time HTTP POST requests to your registered webhook URL whenever an event occurs.
3. **Verify Transaction:** Call transaction qeury endpoint using reference to verify the status and authenticity of the transaction.

Sample Transaction Notification

```json
{
  "event": "collection",
  "reference": "Garo_00124053015311298155461",
  "virtualAccount": "0000000033",
  "externalReference": "24053014560933057683",
  "amountReceived": "50.0",
  "transactionFee":20,
  "netAmount":30,
  "stampDuty":0,// if transaction is above 10,000 naira
  "sessionId": "999999999900124053015311246476926",
  "sourceCurrency": "NGN",
  "sourceAccountNumber": "0123456789",
  "sourceAccountName": "John Doe",
  "sourceBankCode": "0001",
   "sourceBankName": "Test Bank",
   "remarks":"Testing",
  "destinationCurrency": "NGN",
  "status": "successful",//successful, pending
  "createdAt": 1717079472957,
  "updatedAt": 1717079473518
}
```


