Skip to content

Files

airtel-zm-core-connector

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Oct 23, 2024
Feb 19, 2025
Feb 24, 2025
Feb 20, 2025
Jan 21, 2025
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Oct 23, 2024
Feb 20, 2025
Feb 20, 2025
Oct 23, 2024

Airtel Core Connector

Introdution

This core connector facilitates communication between the Airtel Zambia mobile money api and the Mojaloop Connector. It processes incoming requests from Airtel's customer facing platform and routes them to mojaloop through the mojaloop connector. It was created based on the Core Connector Template.

Integration Accounts

These are accounts that are used to facilitate incoming and outgoing payments in the airtel mobile money platform.

  • Disbursements Account: This account is a funded account that is used to support incoming payments. When a request to credit a customer account is received by the connector, checks are performed by the connector and eventually funds will be credited to the customer's account from this account.
  • Collections Account: This is an account that is used to support outgoing payments. When a request to send funds out of airtel is received, this account serves as the holding place for funds that are owed to the scheme.

At the end of the day, these are the accounts used to support the settlement process and to make sure everyday DFSP is paid what they are owed.

Deployment Configuration .env

These are Airtel Configurations needed for connection. There are found in the env.example

  • AIRTEL_BASE_URL : This is the base url for airtel uat environment

  • CLIENT_ID: According to Airtel Documentation, The client_id is a public identifier for apps. It must also be unique across all clients that the authorization server handles. This is equivalent to consumer key displayed under keys section of application listing.

  • CLIENT_SECRET : According to Airtel Documentation, The client_secret is a secret known only to the application and the authorization server.This is equivalent to consumer secret displayed under keys section of application

  • GRANT_TYPE: According to Airtel Documentation, The Client Credential grant type is used by confidential and public clients to fetch access token.

  • X_COUNTRY :Specifies the country where Airtel is being used (i.e, Zambia)

  • X_CURRENCY : Specifies the currency used (i.e., ZMW)

  • SUPPORTED_ID_TYPE : The supported ID type beinf used. Airtel used MSISDN.

  • SERVICE_CHARGE: Service charge for receiving money into an Airtel account.

  • EXPIRATION_DURATION: Time limit for sending money before a quote expires.

  • AIRTEL_PIN : Pin used for Airtel Disbursements.

  • TRANSACTION_ENQUIRY_WAIT_TIME: Time interval for checking transaction enquiries.

  • FSP_ID: Unique ID for every Core Connector built for each DFSP (i.e, airtelzambia)

Development

To run the project clone the repository into your local machine

git clone https://github.com/mojaloop/ml-reference-connectors

Change directory into the project folder

cd ml-reference-connectors

Set node version

nvm use

Install dependencies

npm install

Build

npm run build

Run

npm run start

Functional Tests

npm run test:functional

Unit Tests

npm run test:unit

Build and Run

npm run start:build

Run with Docker

docker compose -f ./test/func/docker-compose.yml up -d

Tear down Docker

docker compose -f ./test/func/docker-compose.yml down