Mono Logo
  • Why Mono
    • Why Choose Mono
      Here's why 250+ Businesses & Developers use Mono APIs
    • Pricing
      Affordable pricing for developers, SMEs, and enterprises
    • See a Demo
      Experience Mono APIs in action
  • Products
    • Connect
      Financial account linking
    • Statement Pages
      No-code bank statement collection
    • DirectPay
      Direct bank payment collection
    • DirectPay Pages
      No-code bank payment collection
    • Portal
      Linked account management
    • Percept
      Corporate finance management
  • Learn
    • About us
    • Blog
    • Tutorials
    • Coverage
  • Developers
    • Overview
    • Documentation
Create free account
Why Mono
  • Why Choose Mono
  • Pricing
  • See a Demo
Products
  • Connect
  • Statement Pages
  • DirectPay
  • DirectPay Pages
  • Portal
  • Percept
Learn
  • About us
  • Blog
  • Tutorials
  • Coverage
Developers
  • Overview
  • Documentation
Create free account
Mono Blog

A Beginner's Guide To Data Sync

10 Sept, 2021Product
  • King Kenway
    Growth
  • Ahmed-Tijani Umar
    Growth
  • On this page
    • What is Data Sync?
    • How does Data Sync Work?
    • The basics
    • A clearer picture of how Data Sync works
    • An edge case
    • How to set up re-authorisation on MFA-enabled accounts
    • How you can build with Mono Data Sync
    • Finance Management
    • Lending
    • Getting started with Data Sync
    • How to activate Data Sync
    • How to set up Data Sync
    • Benefits of using Data sync
    • For businesses/developers:
    • For end-users:
    Share article
    • Twitter
    • LinkedIn

    What is Data Sync?

    Data Sync is a Mono feature that allows you to fetch new data (balance, transactions, and statements) from financial accounts connected to your web or mobile app. This data is retrieved from your customers' financial institution and can be refreshed to retrieve up-to-date information.

    How does Data Sync Work?

    The basics

    You can trigger a request to update the financial data on a connected customer account, through our Data Sync feature. To trigger Data Sync, you can do it via an API call here. With Data Sync, you have a rate limit of one API call per connected account, every two minutes. Also, only accounts connected after Data Sync was enabled for your business, will receive webhook events notifications.

    For accounts that have 2FA/MFA(Multi-Factor Authentication) enabled, they need to be prompted to provide authorization before the Data Sync process can be run.

    How Data Sync works

    A clearer picture of how Data Sync works

    For example, Mr. Adam connects his account to a business named XYZ Ltd, at 1.00 pm on 20th August 2021 with his account balance at NGN 10,000 and thirty minutes later, he performs various transactions worth NGN 5,000. At this point, the current balance in his bank app will be displayed as NGN 5,000, but when XYZ Ltd checks the Information API endpoint, NGN 10,000 will still be displayed as his balance. To get the current balance/transaction history on Mr Adam's account, here’s how XYZ Ltd can do this:

    • XYZ Ltd needs to trigger the Data Sync endpoint. Once triggered successfully, XYZ Ltd can then call the Information endpoint to get the real-time account balance of Mr. Adam. What this means is that XYZ Ltd is able to get the updated account balance on a connected account without requiring the user to reconnect their financial account. We refer to this process as Data Sync.

    An edge case

    There may be cases where a user changes the password to their account(s), so an OTP, security answer, token, CAPTCHA, etc will be required from their bank before such account(s) can be re-synced successfully and new data returned. This is the Re-authorisation or MFA (Multi-Factor Authentication) case.

    When a data sync trigger fails, a failed response will be sent in the status field as "failed", followed by a reauthorisation_required event which contains the Account ID, of the user/customer.

    How to set up re-authorisation on MFA-enabled accounts

    The first thing to do would be to call the Re-authorisation endpoint by passing in the Account ID. A temporary reauth token will be sent which will expire after 10 minutes.

    Next, you will pass this reauth to the connect.reauthorise() handler, which replaces the connect.setup() handler in your Mono Connect frontend (e.g JS, Android, IOS). Now the Mono widget will pop up prompting your user to only re-authorise.

    Reauthorization on data syncOnce this is successful, a webhook notification event will be sent to your business indicating that new data is currently available. You can then proceed to call your desired endpoint for the newly returned data.

    How you can build with Mono Data Sync

    Finance Management

    For personal finance management apps like Trakka, after a user signs up, they would have to connect their bank account to the PFM using Mono. Mono then returns the updated user data from the connected financial institution and provides the requested data at each endpoint.

    If more transactions are carried out after the initial connection via Mono Connect, they aren't returned as part of the data in the desired endpoints. To retrieve the user transactions in real-time, the personal finance management app will need to enable Data Sync.

    When Data Sync is initiated, we pull in up-to-date transaction/balance data from their bank or institutions with the user's account ID as an identifier. This allows the finance management app to track recent transactions and cash flow on a connected account.

    And for a corporate finance management tool or app like Float, that helps SMEs or business owners to micro-track their expenses and manage their finances with ease, it would be necessary to help these businesses to identify their revenues and expenses on the fly, on all their business accounts, for reporting and bookkeeping purposes.

    Each time a business owner logs into the finance management app, Data Sync can be triggered to fetch new transaction data on their connected accounts and then show these insights (be it balances, transactions etc) on their dashboard when it is processed and ready.

    Lending

    For lending companies such as Carbon, one of the important parts of the loan application process is getting access to customers' financial history in order to assess their creditworthiness and decide whether to offer them loans or not. Usually, this means they need to retrieve the customer's bank statement for three or six months, as the case applies.

    Now, what if a customer returns a second time to borrow a much higher loan than the previous amount borrowed. How do you view their past transaction history and re-assess their creditworthiness without putting them through the repetitive process of sharing their statements multiple times?

    This is where Data Sync comes into play. For example, If Ada borrowed NGN50,000 in April 2022 and during the process, connected her bank account through Mono to share her transaction history with the lender.

    When she returns to obtain a loan of NGN150,000 in August 2023, all she simply has to do is log into the lender's app or website, and Data Sync will be triggered to share her updated transaction history with the lender in real-time. With this, the lender can then closely monitor the returned transaction data to underwrite her and determine whether to increase or decrease her credit limit. This also ensures that lenders are able to assess customers' creditworthiness easily and offer loans faster.

    Getting started with Data Sync

    How to activate Data Sync

    1. Log into your Mono dashboard (app.mono.co). Click here to sign up, if you don’t have a Mono account.

    2. Expand the More tab at the sidebar menu and click on Products

    3. Navigate to Add-ons > Data Sync and click the Add to plan button.

    Activating Mono Data Sync

    How to set up Data Sync

    via API integration

    Navigate to the Manual Data Sync section on the API reference page to see the endpoint used to trigger the sync. The parameters required are:

    1. Account ID of the connected account

    2. Mono Secret Key from App created on the dashboard

    via the Mono dashboard

    1. Expand the Financial Data tab and click on Accounts.

    2. On the Accounts page, click on any connected account.

    3. Then click the Sync now button at the top right to fetch their updated data.

    Data sync on the Mono dashboard

    Benefits of using Data sync

    For businesses/developers:

    • Up-to-date data for all connected accounts

    • Ability to monitor updates on connected accounts on demand

    • Perform checks and fact-finding on connected accounts

    For end-users:

    • Your users can easily authorize with their bank when your business needs their recent or updated transaction data.

    • Users can seamlessly connect and provide financial data to businesses and organizations that need it.

    NOTE: Please go through this documentation for more technical insight on how to implement Data Sync to your business solution

    Like what you read?

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

    Next Read

    26 Mar, 2025Product

    Differences between Mono DirectPay and Mono Direct Debit

    Read the story
    Differences between Mono DirectPay and Mono Direct Debit
    14 Aug, 2024Product

    The Mono Income API v2 is live!

    Read the story
    The Mono Income API v2 is live!

    Start building with Mono

    Access high-quality financial data and start processing payments directly from bank accounts in minutes.

    Start now for freeTalk to Sales
    Products
    • Connect
    • Statement Pages
    • DirectPay
    • DirectPay Pages
    • Portal
    • Transactions
    • Income
    • Information
    • Realtime Data
    Resources
    • Developers
    • Documentation
    • API Reference
    • SDKs
    • Demo
    • Join Slack
    • Consumers
    Company
    • About us
    • Partner stories
    • Blog
    • Coverage
    • Careers
    • Contact
    Legal
    • End-User Policy
    • Privacy Policy
    • Developer Policy
    • Terms of Use
    • Cookies
    • Security
    © Mono Technologies Nigeria Limited
    TwitterLinkedIn