NEWIntroducing Mono Prove: Transforming Identity Verification and Customer Onboarding experiences
Mono Blog

Using Mono Without The Connect Widget

Sep 19, 2021Engineering

Share article

What is Mono Connect?

Connect is a Mono-hosted authorization flow that works seamlessly across browsers and devices to make accessing your users' financial accounts secure and easy.

What is the Connect Widget?

The Mono Connect widget is our UI component used to effect account linking.

It allows you to securely authenticate a user's financial account and returns an authentication code for the user. This code is then exchanged (with the Exchange Token endpoint) for an account ID representing the same user.

You can then use this account id with your secret key generated from the app on your Mono dashboard to call Mono financial data APIs like bank statements.

Using Mono without the Connect Widget

Although the Mono Connect widget comes prebuilt by Mono, we also provide access to the API that powers it to generate the same authentication code returned by the widget which you can then use to retrieve an account ID (as seen earlier) and interact with Mono's APIs.

This gives you the ability to create an entirely unique and new experience tailored to your specific needs from simple cases (such as finer control over UI and styling or an extra verification step before final login during onboarding) to more complex cases (such as using Mono's APIs in building a USSD solution).

We've outlined the process for using the Partner's API without the Widget below:

Base URL

1.   Register an account with Mono (https://app.withmono.com/register)

2.  Use your Mono registered email and password to authenticate the partners API. This returns an access token that will be used with the rest of the API calls.

3.  Create an app on the Mono dashboard (https://app.withmono.com/dashboard) or you can send the name of the app(and optionally: a url to the icon and a display name for your users) to the app endpoint. This creates an app in sandbox mode.

Endpoint:

Body:

Response:

  • You can update and delete apps by passing in the app ID, which is returned when an app is created, as a query parameter to the app endpoint during the corresponding call.

Endpoint:

Response:

  • You can also switch to live mode by setting the live boolean which is returned after the app is created to true and sending it to the app endpoint with the app ID passed in as a query parameter.

4.  Set up the institutions you'd like to display by retrieving the list of institutions available from the institution's endpoint and using the UI object returned in the response as a guide for implementing your interface

Endpoint:

Response:

5.  Create a Connect session using the appID, institutionID and also the authentication method. The response includes a session ID and an UI object.

Endpoint:

Body:

Response:

6.  You can then log the user in by passing the session ID in the header and body parameters as specified in the UI object, to the connect/login endpoint.

Endpoint:

Request header:

Body:

Response:

  • If account authorization is successful, the login returns an identification code which can then be exchanged for the account ID.

  • For users with multiple accounts, a list of all accounts is sent back and their selection is confirmed by a session commit and the authorization code is returned.

  • For users with MFA, logging in provides a UI object in the response with the required authentication method. This should be displayed to the users and upon successful authentication, the session is confirmed by a commit, and the authorization code is returned.

To commit:

Body:

Response(success/failure):

Note: This API is restricted to select partners only. To request access to the API, log into the Mono dashboard and navigate to Add-Ons.

Like what you read?

Become a subscriber and receive notifications about blog posts, company events and announcements, products and more.

Next Read

Oct 2, 2024Engineering

Building an automated loan recovery process with Mono Direct Debit APIs

Read the story
Building an automated loan recovery process with Mono Direct Debit APIs
Jul 15, 2024Engineering

How to Implement the Mono Telco Data API

Read the story
How to Implement the Mono Telco Data API
Apr 19, 2024Engineering

How to build a robust credit-decisioning system with Mono Lookup APIs

Read the story
How to build a robust credit-decisioning system with Mono Lookup APIs

Start building with Mono today

a Flutterwave company

2026 © Mono Technologies Nigeria Limited

trust mark NIGtrust mark QR Codeiso-iec27001iso-iec27002iso-iec27003

Disclaimer:
The information provided on this website is intended for general informational purposes only and does not constitute financial, legal, or professional advice. While we strive to ensure that the content presented is accurate and up-to-date, we make no representations or warranties of any kind, express or implied, about the completeness, accuracy, reliability, suitability, or availability with respect to the website or the information, products, services, or related graphics contained on the website for any purpose. Any reliance you place on such information is therefore strictly at your own risk.

Our platform is designed to ensure secure access to financial accounts for the purposes of retrieving statements, monitoring transactions in real-time, and verifying customer identities. Despite our use of advanced security protocols to protect sensitive information, we cannot guarantee the absolute security of your data. Users are advised to independently verify the accuracy and completeness of all information obtained through our services before making any financial or business decisions.

Furthermore, while we endeavor to keep the website running smoothly, we take no responsibility for, and will not be liable for, the website being temporarily unavailable due to technical issues beyond our control. In no event will we be liable for any loss or damage including without limitation, indirect or consequential loss or damage, or any loss or damage whatsoever arising from loss of data or profits arising out of, or in connection with, the use of this website.

This website may contain links to other websites which are not under the control of our company. We have no control over the nature, content, and availability of those sites. The inclusion of any links does not necessarily imply a recommendation or endorse the views expressed within them.

By using this website, you agree to these terms and acknowledge that any reliance on the information provided here is at your own risk. If you have any questions regarding this disclaimer or the website's content, please contact us directly.