Data sync


Data sync or auto refresh gives you the ability to automatically refresh accounts and send the results to your Webhook URL so you do not have to do this manually.

Depending on your product's use case(balance, transactions, and statements), Okra allows you to leverage the data sync capability by:

Automatic Refresh

Okra automatically refreshes all connected accounts to your business on a daily basis. After the automatic refresh, the data of all connected accounts will be automatically updated.



Before their data can be updated, several banks ask users to re-authorize data-sync if they have Multi-Factor Authentication (MFA) (i.e., OTP, security question, or CAPTCHA) activated.

How Does it work?

You can implement the data sync feature in two ways.

Via Widget

During the process of setting up your widget, you can send refresh as an option to the widget, which is set to true by default.
The refresh option is usually set by default to a daily interval for balance and transaction services.
Another way this can be done via the widget is to send an object to the refresh option, with the following format {interval, products, webhook_url}

Via an API

If using an API is what works best for you, we've got you covered!
To get started, follow the steps below;


Make a POST request to with the payload below

"customer": customerId, // required
"products": ["balance"], // required options are balance and transactions or both
"bank": bankId, //optional defaults to set refreshes for all banks for customer
"interval": interval //optional.. defaults to "daily",
"webhook_url": URL // where webhook's should be sent



The available options for the interval are -
['one_minute', 'five_minute', 'fifteen_minute', 'thirty_minute', 'one_hour', 'six_hours', 'twelve_hours', 'daily']

If you follow the above steps carefully, from our end we would ensure that we will continue to send the webhooks for refreshes (and all general webhooks).



If your API does not respond with a 200 status code, it will retry 1 minute after. It stops once it gets a 200 or exceeds our 150-minute time range.

Conclusion: By default, all associated accounts are updated once every 24 hours. If you wish to adjust the update frequency, please email us at [email protected]