Webhook Events
Last updated March 10th, 2026
Account Update (Balance)
The account updated webhook event gets fired based on the following cases provided below:
Request
123
1. **Initial Account Linking**: This event is triggered shortly after a user successfully links their account. It confirms that the financial data status is known (indicated via `meta.data_status`). Once received, you can proceed to call other Connect APIs such as Transactions, Statements, or Income for data retrieval.
2. **Real-time Data Sync**: This event is also fired when a Real-time Data refresh completes successfully, implying that all recent financial transaction data has been updated. You can then call the relevant Connect APIs to fetch the most recent data.
mono.events.account_updated
Request
1234567891011121314151617181920212223242526272829303132
{
"event": "mono.events.account_updated",
"data": {
"account": {
"_id": "5f171a530295e231abca1153",
"name": "Samuel Olamide",
"accountNumber": "0131883461",
"currency": "NGN",
"balance": 22644,
"type": "Tier 3 Savings Account",
"bvn": "9422",
"authMethod": "internet_banking",
"institution": {
"name": "ALAT by WEMA",
"bankCode": "035",
"type": "PERSONAL_BANKING"
},
"created_at": "2024-04-30T17:16:01.171Z",
"updated_at": "2024-04-30T17:16:05.463Z"
},
"meta": {
"data_status": "AVAILABLE | PARTIAL | UNAVAILABLE",
"auth_method": "internet_banking",
"ref": "180400887A",
"retrieved_data": [
"identity",
"balance",
"transactions"
]
}
}
}
Fields for balance webhooks
| Field | Description | Type |
| event | The webhook event action that triggered the webhook, e.g. mono.events.account_updated. | string |
| data | All information related to this specific webhook. | object |
| data.meta | An event object containing the account data and the current status. | object |
| data.meta.data_status | The status of the current connected data, if it is AVAILABLE, PROCESSING, FAILED. | string |
| data.meta.auth_method | This refers to the authentication method used by user. It returns either mobile_banking or internet_banking. | string |
| data.account | An object with all account data. | object |
| data.account._id | The unique identifier for the member which has new or updated transaction data. | string |
| data.account.institution | All data related to the financial institution of the connected user. | object |
| data.account.institution.name | The institution name of the connected account. | string |
| data.account.institution.bankCode | The bank code of the institution name connected to this account. | string |
| data.account.institution.type | The type of banking method for this connected user. E.g PERSONAL_BANKING, BUSINESS_BANKING etc | string |
| data.account.accountNumber | The account number of the connected user. data. | string |
| data.account.name | The account name of the connected user. | string |
| data.account.type | The account type of the connected user E.g SAVINGS ACCOUNT, CURRENT ACCOUNT. | string |
| data.account.currency | The currency of the connected user. | string |
| data.account.bvn | The BVN of the connected user. | string |
| data.account.balance | The current account balance of the connected user. | string |
| data.account.created_at | The date the webhook object was created. | string |
| data.account.updated_at | The date the webhook object was updated. | string |
