A standard banking integration flow with Belvo looks like this:
- Register a link using the Connect Widget
Your end user connects to their account using our Connect Widget. After they've successfully connected, you'll receive a Link ID that you'll need to use in order to make further requests about the end user.
- Wait for historical webhook event
As soon as your user connects their account, Belvo retrieves historical data about the user and sends a webhook once the information is loaded. Once you receive the webhook, you can make a GET request to the appropriate endpoint to retrieve the information.
- Receive update webhook
Depending on the recurrent link update frequency you set, Belvo retrieves updated information and sends a webhook indicating new information is available for the link. When you receive the webhook, just send a GET request to the appropriate endpoint.
As soon as you register a link, you will not have to do it again. You can use the
link.detail to access it in the future.
Same for the accounts, transactions, and owners. As soon as you have pulled the data from the institution, you can keep accessing it directly from Belvo through the
Finally, you can delete any data from Belvo by calling the
destroy endpoint on links, accounts, transactions, and owners. Note that deleting a link will also delete all the related accounts, transactions, and owners, while deleting an account will also delete all the related transactions
All our endpoints are associated with an HTTP Method with the following standard:
|Access data from Belvo.|
|Connect to the institution to register or retrieve data. Retrieved data will be stored by Belvo so that you can access it in the future.|
|Resume a previous connection request (POST) to the institution to add a 2FA token.|
|Delete data from Belvo.|
Save the request_id!
Make sure that when you receive an error you log the
request_id. This will allow Belvo to debug the issue more swiftly and get back up and running as quickly as possible.
Errors are annoying - we know. That's why we have dedicated articles for each error in our DevPortal to help you solve them. Have a look at our API and Widget errors page, or just search for the error code you are encountering to go straight to the causes as well as solutions.
Updated about 2 months ago