Developers

Money Transfer Application Documentation

Developers > Workflow

Workflow

MTA provides a comprehensive solution to manage and automate every aspect of a money transfer business. It provides various services and there are different Api endpoints for the services provided. The services include:

Find below some of the services, with their description, Api endpoints and the flow:

User Management Workflow

The User Management service has Api endpoints for registering a new user, updating user profile amongst other services. Below is a sequence diagram for registering a customer and editing customer’s profile;

Security Management Workflow

The Security service has api endpoints for logging in and changing passwords amongst others. The login Api is important because it gives the already registered user access to their account. On login, a token is generated; this token is needed to access a lot of services.

 

There are two login channels (1) API login (2) Web Page login (Login via web site) For building websites, the second login channel is used. In this case, all you need to do is to post to a Login Servlet using url https://test.themoneytransferapplication.com/external_login Sample Code for the second login channel;

<form action="https://test.themoneytransferapplication.com/external_login" class="clearfix" 
id="loginForm" target='_top'> 
      <!--- For Send Money Only --> 
      <input id="action" name="action" value="send_money" type="hidden"> 
      <input type="hidden" id="destination_country" name="destination_country" value="" /> 
      <input type="hidden" id="delivery_method" name="delivery_method" value="" /> 
      <input type="hidden" id="sending_currency" name="sending_currency" value="" /> 
      <input type="hidden" id="receiving_currency" name="receiving_currency" value="" /> 
      <input type="hidden" id="send_amount" name="send_amount" value="" /> 
      <input type="hidden" id="receiving_amount" name="receiving_amount" value="" /> 

      <!--- For Wallet Only --> 
      <input type="hidden" id="receiver_wallet_account_number" name="receiver_
      wallet_account_number" value="" /> 
      <input type="hidden" id="receiving_wallet_currency" name="receiving_
      wallet_currency" value="" /> 
      <input type="hidden" id="receiving_wallet_amount" name="receiving_
      wallet_amount" value="" /> 

      <!-- END Hidden Fields --> 
      <div class="message"> </div> 
      <div class="form-group">
</form>

Below is a sequence diagram for the first user login channel and change of password;

Bill Payment Workflow

The Bill payment service can be used for bill payment transactions; it can be used to view billers, products and to select a product to be paid for. Below is a sequence diagram for the bill payment process;

The Api Endpoints

Get a list of services available in a country

Endpoint

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Bill%20payment%20web%20service/callFetchServicesByCountryStep1

For Example

https://test.themoneytransferapplication.com/web services/api/v6/services/billpayment/fetchservicesbycountry1/NGA

This above endpoint returns the list of services in a specific country

Get the list of operators linked to a service

Endpoint

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Bill%20payment%20web%20service/callFetchOperatorsByCountryStep2

For Example

https://test.themoneytransferapplication.com/web services/api/v6/services/billpayment/fetchoperatorsbycountry1/data

This above endpoint returns the list of operators under a specific service in a country. The service_id is obtained from the request in step 1.

Get a list of products linked to an operator

Endpoint

https://test.themoneytransferapplication.com/api-doc/index.xhtml#/Bill%20payment%20web%20service/callFetchCountrysProductsStep3

For Example

https://test.themoneytransferapplication.com/web-services/api/v6/services/billpayment/fetchcountrysproducts3/data/airtel

This above endpoint returns the list of products under service and operator in a specific country. The service_id and operator_id are gotten from the request in step

Order for a product

Endpoint

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Bill%20payment%20web%20service/orderProduct

For Example

https://test.themoneytransferapplication.com/web services/api/v6/services/billpayment/orderproduct

Transaction Management

The transaction management service is a gateway service used to manage transactions such as bank transfer and mobile money transactions. Below is a sequence diagram for the transaction process

Merchant Products Web Service

The Merchant Products Service is a gateway service used to manage merchant payment product platform. Below is a sequence diagram for the merchant product process;

The Api Endpoints

Initiate Merchant Payment

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Merchant %20Products%20Web%20Service/addMerchantProductToDatabase

For Example

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Merchant %20Products%20Web%20Service/addMerchantProductToDatabase

The above endpoint is used to initiate a merchant payment

View Payment Request

Endpoint

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Merchant%20Products%20Web%20Service/paymentRequestget

For Example

http://test.themoneytransferapplication.com/web services/api/v6/services/merchantpayment/paymentreq/11

The above endpoint is called to view payment request on the web and payment request details

Get list of merchant payments

Endpoint

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Merchant%20Products%20Web%20Service/getMyMerchantPayments

For Example

http://test.themoneytransferapplication.com/web services/api/v6/services/merchantpayment/listmymerchantpayments?from_date=2001-02 06T09%3A54%3A23.911Z&to_date=2020-02-18T19%3A54%3A23.911Z

The above endpoint is called to view a list of merchant payments

Wallet Management Service

The Wallet Management Service is a gateway service used to manage wallet transaction such as wallet to wallet transfer, wallet to bank transfer etc. Below is a sequence diagram for the wallet management process;

The Api Endpoints

Get list of wallet supported currencies

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Wallet%20account%20management%20service/listSupportedWalletAccou ntCurrenciesService

For Example

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Wallet%20account%20management%20service/ listSupportedWalletAccountCurrenciesService

The above endpoint is used to get the list of supported wallet account currencies

Create Wallet Account

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Wallet%20account%20management%20service/createNewWalletAccount

For Example

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Wallet% 20account%20management%20service/createNewWalletAccount

The above endpoint is used to create new wallet account

Initiate fund wallet

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Wallet%20account%20management%20service/initateFundMyWalletAccount

For Example

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Wallet% 20account%20management%20service/initateFundMyWalletAccount

The above endpoint is used to fund wallet account

Wallet to wallet account payment

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Wallet%20 account%20management%20service/walletToWalletAccountPa ymentViaBeneficiaryPhoneNumber

For Example

https://test.themoneytransferapplication.com//api doc/index.xhtml#/Wallet%20account%20management%20service/ walletToWalletAccountPaymentViaBeneficiaryPhoneNumber

The above endpoint is used for wallet to wallet transfer

Quote Service

The Quote Service can be used to get the quote for a transaction. To get a quote you need to pass in the amount, destination country, sending, receiving currency and delivery method.

Sequence Diagram to get Quote for Bank Transfer, Mobile Money

Sequence Diagram to get Quote for Bill Payment

Activity Diagram to get Quote for Airtime

The Api Endpoints

Get supported origin countries; these origin countries have been set up on our system.

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Quote%20management%20service/callFetchSupportedOriginCountries

For Example

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Quote%20 management%20service/callFetchSupportedOriginCountries

The above endpoint can be used to get the list of supported origin countries

Get a list of destination countries supported by the system

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Quote%20management%20service/callFetchSupportedDestinationCountries

For Example

http://test.themoneytransferapplication.com/web-services/api/v6/services/ quote/supporteddestination-countries/GBR

The above endpoint can be used to get the list of supported destination countries by using the
trade_origin_iso3country

Get a list of delivery methods supported by our system

Endpoint

https://test.themoneytransferapplication.com/api-doc/index.xhtml#/Quote%20management%20service/callFetchSupportedDeliveryMethod

For Example

http://test.themoneytransferapplication.com/web-services/api/v6/services/quote/supported-delivery-methods/GBR/NGA

The above endpoint can be used to find the supported delivery methods by using the trade_origin_iso3country and trade_destination_iso3country (i.e. origin country isocode3 and destination country isocode 3)

Get a list of delivery methods supported by our system

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Quote %20management%20service/callFetchSupportedCurrencies

For Example

http://test.themoneytransferapplication.com/web-services/api/v6/services/quote /supportedcurrencies/GBR/NGA/ACCOUNTPAYMENT

The above endpoint can be used to find the supported currencies by using the trade_origin_iso3country, trade_destination_iso3country and delivery method (i.e. origin country isocode3. destination country isocode3 and delivery method)

Get a list of delivery currencies supported by our system

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Quote%20 management%20service/callFetchSupportedDeliveryCurrencies

For Example

http://test.themoneytransferapplication.com/web-services/api/v6/services/ quote/supporteddelivery-currencies/GBR/NGA/ACCOUNTPAYMENT/GBP

The above endpoint can be used to find the supported-delivery-currencies by using the trade_origin_iso3country, trade_destination_iso3country, delivery method and trade_origin_iso3currency (i.e. origin country isocode3. destination country isocode3, delivery method and origin currency isocode3)

Get a list of services supported by our system

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Quote% 20management%20service/supportedServices

For Example

http://test.themoneytransferapplication.com/web-services/api/v6/services/ quote/supportedservices/GBR

The above endpoint can be used to find the supported services using the trade_origin_iso3country (i.e. origin country isocode3)

Call Quote

Endpoint

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/Quote%20 management%20service/callQuote

For Example

https://test.themoneytransferapplication.com//apidoc/index.xhtml#/ Quote%20management%20service/callQuote

The above endpoint can be used to call a quote using.