Belvo API Docs (1.216.0)

Introduction

Reach new audiences and convert more users by easily and safely connecting to their financial data, understanding their behavior and enabling instant payments with open finance. Through our API, you can access:

Available Information and Payment Methods

Belvo is an open banking API for Latin America that allows companies to access banking and fiscal information in a secure as well as agile way.

Through our API, you can access:

  • Banking Information in Brazil
  • Employment Information in Brazil
  • Employment Information in Mexico
  • Fiscal Information in Mexico
  • Fiscal Information in Chile

You can also use our API to make payments in:

  • Brazil
  • Mexico

Data Dictionaries

If you woud like the response documentation in Excel or CSV form, please download them from our public GitHub Reposiitory: Belvo Open Finance Data Dictionaries.

Our EXCEL and CSV files are additionally localized into Spanish and Portuguese (Brazil).

Environments

We currently offer two environments: sandbox and production.

Sandbox

Available for:

  • 🟢 Aggregation and Enrichment
  • ⚪️ Payment Initiation

Use our Sandbox environment to build your integration. We offer dummy data that mimics that of real-world use cases, which means you can test out all the endpoints, use the widget, and implement webhooks - just as you would with real-world data!

All you need to get started with the Sandbox environment is to get your API keys. We really recommend that you start creating your integration in this environment.

Production

Available for:

  • 🟢 Aggregation and Enrichment
  • 🟢 Payment Initiation

After you have tested your integration in the Sandbox environment and are ready to go live, you'll need to request access to our Production environment. After you request access, our Sales Team will get in contact with you to schedule a meeting just to ensure your needs are met, and then you'll just need to go through a certification process with one of our engineers to make sure that your integration is running optimally. To prepare for the certification meeting, just follow our Integration checklist.

Once your integration is certified, all you'll need to do is:

  • Request Production API keys (and change your Sandbox API keys in the code to these new ones).
  • Change the base URL that you make requests to from sandbox.belvo.com to api.belvo.com.
  • If you're using webhooks, make sure to set a Production URL for your webhooks.

Response codes

We use the following HTTP status code in the response depending on the success or failure:

Status CodeDescription
200Success - The content is available in the response body.
201Success - The content was created successfully on Belvo.
204Success - No content to return.
400Bad Request Error - Request returned an error, detail in the content.
401Unauthorized - The Belvo credentials provided are not valid.
404Not Found - The resource you try to access cannot be found.
405Method Not Allowed - The HTTP method you are using is not accepted for this resource.
408Request Timeout - The request timed out and was terminated by the server.
428MFA Token Required - MFA token was required by the institution to connect.
500Internal Server Error - The detail of the error is available in the response body.

Error handling

Belvo API errors are returned in JSON format. For example, an error might look like this:

[
    {
      "request_id": "a6e1c493d7a29d91aed4338e6fcf077d",
      "message": "This field is required.",
      "code": "required",
      "field": "link"
    }
]

Typically, an error response will have the following parameters:

  • request_id: a unique ID for the request, you should share it with the Belvo support team for investigations.
  • message: human-readable description of the error.
  • code: a unique code for the error. Check the table below to see how to handle each error code.
  • field (optional): The specific field in the request body that has an issue.

Request identifier

When you need help with a specific error, include the request identifier (request_id) in your message to the Belvo support team. This will speed up investigations and get you back up and running in no time at all.

Error codes and troubleshooting

For a full list of errors and how to troubleshoot them, please see our dedicated Error Handling article.

Retry policy

50x errors

Implement an automated exponential backoff of up to five retries. We recommend using a base interval of three seconds with a factor of two. For example, the first retry should be after three seconds, the second retry after six seconds (2 * 3), the third retry after 12 seconds (2 * 6), the fourth retry after 24 seconds (2 * 12), and the fifth retry after 48 seconds (2 * 24).

40x errors

You should not retry making requests if you receive a 40x response, as this is a client error.

The only exception is the “Too Many Sessions” error, as it means that your end-user is accessing the account from another browser at the same time. In this case, please implement the same retry policy as with 50x errors.

Deprecated fields

In our schema, you may see that a field has been marked as deprecated. This means that this field is no longer maintained by the Belvo team. You may still receive data for this field depending on the institution, however, you should not rely on this field.

OpenAPI: required and nullable fields

In our API specification, you'll see that some response parameters will have a required annotation. According to the OpenAPI specification, when a response parameter is marked as required, this means that the response key must be returned. However, the value of that response parameter can be null.

📘 Info

In short, any response parameter marked as required will be returned by our API, but the value can be set to null.

Download OpenAPI description
Languages
Servers
Mock server
https://developers.belvo.com/_mock/apis/belvoopenapispec/
Sandbox
https://sandbox.belvo.com/

Institutions

An institution is an entity that Belvo can access information from. It can be a:

  • bank institution, such as Banamex retail banking or HSBC business banking.
  • fiscal institution, such as the Servicio de Administración Tributaria (SAT) in Mexico.

You can see a complete list of institutions by either consulting our Institutions article or making a List request to this endpoint.

Operations

Widget Access Token

Operations

Consents

Operations

Owners

An owner represents the person who has access to a Link and is the owner of all the accounts inside the Link.

You can use this endpoint in order to get useful information about your client, such as:

  • their full name
  • key contact information
  • information about the ID document they used when opening the account
Operations

List owners

Request

▶️ Usage

With the List Owners method, you can:

  1. List owners related to a specific link.id (using the link query parameter).
  2. Get the details of a specific owners.id (using the id query parameter).
  3. [Not Recommended] List all owners related to your Belvo account (without using any query parameters).

📖 Pagination

This method returns a paginated response (default: 100 items per page). You can use the page_size query parameter to increase the number of items returned to a maximum of 1000 items. You can use the page query parameter to navigate through the results. For more details on how to navigate Belvo's paginated responses, see our Pagination Tips article.

🔦 Filtering Responses

Please see the query list below for a list of fields that you can filter your responses by. For more information on how to use filters, see our Filtering responses article.

🚨 Deprecated Fields

This resource may return deprecated fields. In the response documentation you may see that a field has been marked as deprecated. This means that this field is no longer maintained by the Belvo team. You may still receive data for this field depending on the institution, however, you should not rely on this field.

Query
linkstring(uuid)

The link.id you want to filter by.

ℹ️ We highly recommend adding the link.id filter in order to improve your performance.

Example: link=8848bd0c-9c7e-4f53-a732-ec896b11d4c4
page_sizeinteger(int32)[ 1 .. 1000 ]

Indicates how many results to return per page. By default we return 100 results per page.

ℹ️ The minimum number of results returned per page is 1 and the maximum is 1000. If you enter a value greater than 1000, our API will default to the maximum value (1000).

Default 100
Example: page_size=100
pageinteger(int32)>= 1

A page number within the paginated result set.

Example: page=1
omitstring

Omit certain fields from being returned in the response. For more information, see our Filtering responses DevPortal article.

fieldsstring

Return only the specified fields in the response. For more information, see our Filtering responses DevPortal article.

link__inArray of strings(uuid)

Return results only for these link.ids.

Example: link__in=5722d0ba-69d7-42dc-8ff5-33767b83c5d6
idstring(uuid)

Return information only for this resource id.

Example: id=24ccab1d-3a86-4136-a6eb-e04bf52b356f
id__inArray of strings(uuid)

Return information for these resource ids.

Example: id__in=6b3dea0f-be29-49d1-aabe-1a6d588642e6
created_atstring(date)

Return items that were last updated in Belvo's database on this date (in YYYY-MM-DD format).

Example: created_at=2022-05-05
created_at__gtstring(date)

Return items that were last updated in Belvo's database after this date (in YYYY-MM-DD format).

Example: created_at__gt=2022-05-05
created_at__gtestring(date)

Return items that were last updated in Belvo's database after or on this date (in YYYY-MM-DD format).

Example: created_at__gte=2022-05-04
created_at__ltstring(date)

Return items that were last updated in Belvo's database before this date (in YYYY-MM-DD format).

Example: created_at__lt=2022-04-01
created_at__ltestring(date)

Return items that were last updated in Belvo's database before or on this date (in YYYY-MM-DD format).

Example: created_at__lte=2022-03-30
created_at__rangeArray of strings(date)<= 2 items

Return accounts that were last updated in Belvo's database between two dates (in YYYY-MM-DD format).

Example: created_at__range=2022-03-03
emailstring(email)

Returns owners whose email address match your query.

Example: email=lopes.d@gmail.com
display_name__icontainsstring>= 3 characters

Return owners whose full display name partially matches your query. For example, mar will return results for Mark, Maria, Neymar, Remarque, and so on.

Example: display_name__icontains=Daniela
curl -i -X GET \
  -u <username>:<password> \
  'https://developers.belvo.com/_mock/apis/belvoopenapispec/api/owners/?created_at=2022-05-05&created_at__gt=2022-05-05&created_at__gte=2022-05-04&created_at__lt=2022-04-01&created_at__lte=2022-03-30&created_at__range=2022-03-03&display_name__icontains=Daniela&email=lopes.d%40gmail.com&fields=string&id=24ccab1d-3a86-4136-a6eb-e04bf52b356f&id__in=6b3dea0f-be29-49d1-aabe-1a6d588642e6&link=8848bd0c-9c7e-4f53-a732-ec896b11d4c4&link__in=5722d0ba-69d7-42dc-8ff5-33767b83c5d6&omit=string&page=1&page_size=100'

Responses

Ok

Bodyapplication/json
countinteger(int32)

The total number of results in your Belvo account.

Example: 130
nextstring or null(uri)

The URL to next page of results. Each page consists of up to 100 items. If there are not enough results for an additional page, the value is null.

In our documentation example, we use {endpoint} as a placeholder value. In production, this value will be replaced by the actual endpoint you are currently using (for example, accounts or owners).

Example: "https://sandbox.belvo.com/api/{endpoint}/?link=1bd948f7-245d-4313-b604-34d1044cb908page=2"
previousstring or null(uri)

The URL to the previous page of results. If there is no previous page, the value is null.

Example: null
resultsArray of Owner Individual (OFDA Brazil) (object) or Owner Business (OFDA Brazil) (object) or Owner Standard (Multi-Region) (object)

An array of either:

  • Owner Individual (OFDA Brazil) objects
  • Owner Business (OFDA Brazil) objects
  • Owner Standard (Multi-Region) objects

🚧 One schema type per response

The response will contain an array of one of the schema types described above. In other words, there will not be a mix of schema types in the response.

Response
application/json

Example of an individual (OFDA Brazil).

{ "count": 108, "next": "https://sandbox.belvo.com/api/{endpoint}/?link=1bd948f7-245d-4313-b604-34d1044cb908page=2", "previous": null, "results": [ {} ] }

Retrieve owners for a link

Request

Retrieve owner information from a specific link.

ℹ️ Note: This resource may return deprecated fields. Please check the response documentation for more information.

Query
omitstring

Omit certain fields from being returned in the response. For more information, see our Filtering responses DevPortal article.

fieldsstring

Return only the specified fields in the response. For more information, see our Filtering responses DevPortal article.

Bodyapplication/jsonrequired
linkstring(uuid)required

The link.id you want to retrieve information for.

Example: "c81a1dea-6dd6-4999-8b9f-541ee8197058"
tokenstring

The MFA token generated by the institution which is required to continue a session.

Example: "1234ab"
save_databoolean

Indicates whether or not to persist the data in Belvo. By default, this is set to true and we return a 201 Created response.

When set to false, the data won't be persisted and we return a 200 OK response.

Default true
Example: true
curl -i -X POST \
  -u <username>:<password> \
  'https://developers.belvo.com/_mock/apis/belvoopenapispec/api/owners/?fields=string&omit=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "link": "c81a1dea-6dd6-4999-8b9f-541ee8197058",
    "token": "1234ab",
    "save_data": true
  }'

Responses

Ok (when save_data=false)

Bodyapplication/jsonArray [
One of:
idstring(uuid)required

Belvo's unique identifier for the current item.

Example: "0d3ffb69-f83b-456e-ad8e-208d0998d71d"
linkstring or null(uuid)required

The link.id the data belongs to.

Example: "30cb4806-6e00-48a4-91c9-ca55968576c8"
internal_identificationstring or nullrequired

The institution's internal identifier for the owner.

Example: "7e5838e4"
collected_atstring(date-time)required

The ISO-8601 timestamp when the data point was collected.

Example: "2022-02-09T08:45:50.406032Z"
created_atstring(date-time)required

The ISO-8601 timestamp of when the data point was created in Belvo's database.

Example: "2022-02-09T08:45:50.406032Z"
display_namestring<= 128 characters^[\w\W]{0,128}$required

The full name of the individual, as provided by the institution.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Jack Oswald White"
social_namestring or null<= 128 characters^[\w\W]{0,128}$required

The social name of the individual, as generally accepted by the country.

Example: "O Piadista"
birth_datestring(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The individual's date of birth, in YYYY-MM-DD format.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "1988-07-15"
marital_statusstring or nullrequired

The individual's marital status. We return one of the following values:

  • SINGLE
  • MARRIED
  • WIDOWED
  • SEPARATED
  • DIVORCED
  • CIVIL_UNION
  • OTHER
Enum"SINGLE""MARRIED""WIDOWED""SEPARATED""DIVORCED""CIVIL_UNION""OTHER"
Example: "SINGLE"
marital_status_additional_infostring or null<= 50 characters^[\w\W]{0,50}$required

Additional information about the individual's marital status.

Example: "It's complicated"
genderstring or nullrequired

The individual's gender. We return on of the following values:

  • FEMALE
  • MALE
  • OTHER
Enum"FEMALE""MALE""OTHER"
Example: "FEMALE"
companies_idArray of stringsnon-emptyrequired

The institutions responsible for the creation and verification of the owner.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: ["01773247000103"]
is_local_residentbooleanrequired

Boolean to indicate if the individual is a local resident of the country.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
document_idobjectrequired

Information regarding the identification document the owner provided to the bank.

Non-nullable: A value must be returned by Brazil's open finance network.

document_typestringrequired

The type of document the owner provided to the institution to open the account. Common document types are:

🇧🇷 Brazil

  • CPF (Cadastro de Pessoas Físicas)
  • CNPJ(Cadastro Nacional de Pessoas Jurídicas)

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "CPF"
document_numberstringrequired

The document's identification number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "235578435-S"
additional_documentsArray of objects or nullnon-emptyrequired

Detailed information regarding additional documents provided to prove the individuals ID.

Non-nullable: A value must be returned by Brazil's open finance network.

typestring or nullrequired

The type of ID document. We return one of the following values:

  • DRIVERS_LICENSE
  • PASSPORT
  • ID_CARD
  • FISCAL_ID
  • FOREIGNER_REGISTRATION_CARD
  • OTHER
  • null
Enum"DRIVERS_LICENSE""PASSPORT""ID_CARD""FISCAL_ID""FOREIGNER_REGISTRATION_CARD""OTHER"null
Example: "DRIVERS_LICENSE"
type_additional_infostring or null<= 70 characters^[\w\W\s]{0,70}$required

Additional information regarding the document type.

Note: For Business ID documents, this field must return a value from Brazil's open finance network.

Example: "Learner's licence"
numberstring<= 40 characters^[\w\W\s]{0,40}$required

The ID document's number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "DL-7896829-7"
check_digitstring<= 2 characters^[\w\W\s]{0,2}$required

The check digit of the ID document.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "7"
issue_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document was issued, in YYYY-MM-DD format.

Example: "2019-01-01"
expiration_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document expires, in YYYY-MM-DD format.

Example: "2019-01-01"
country_of_issuancestring or null<= 3 characters^[\w]{3}$required

The three-letter country code that issued the document (in ISO-3166 Alpha 3 format).

This field must be returned when the type is PASSPORT.

Example: "CAN"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the ID document.

Example: "The document has water damage"
nationalitiesArray of objects or nullnon-emptyrequired

Detailed information regarding the individual's nationalities.

Only required to be returned when is_local_resident is set to false.

infostring or null<= 40 characters^\S[\s\S]*$required

The nationality of the individual.

Example: "CAN"
documentsArray of objects or nullrequired
typestring or nullrequired

The type of ID document. We return one of the following values:

  • DRIVERS_LICENSE
  • PASSPORT
  • ID_CARD
  • FISCAL_ID
  • FOREIGNER_REGISTRATION_CARD
  • OTHER
  • null
Enum"DRIVERS_LICENSE""PASSPORT""ID_CARD""FISCAL_ID""FOREIGNER_REGISTRATION_CARD""OTHER"null
Example: "DRIVERS_LICENSE"
numberstring<= 40 characters^[\w\W\s]{0,40}$required

The ID document's number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "DL-7896829-7"
issue_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document was issued, in YYYY-MM-DD format.

Example: "2019-01-01"
expiration_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document expires, in YYYY-MM-DD format.

Example: "2019-01-01"
country_of_issuancestring or null<= 3 characters^[\w]{3}$required

The three-letter country code that issued the document (in ISO-3166 Alpha 3 format).

This field must be returned when the type is PASSPORT.

Example: "CAN"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the ID document.

Example: "The document has water damage"
emailstring or null(email)<= 320 charactersrequired

The account owner's registered email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "johndoe@belvo.com"
emailsArray of objects or null>= 0 itemsrequired

Additional list of emails the owner provided.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
emailstring<= 320 characters^[\w\W\s]{0,320}$required

The user's email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "homen_morcego@gmail.com"
addressstring or nullrequired

The account owner's registered address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Carrer de la Llacuna, 162, 08018 Barcelona"
addressesArray of objects or nullnon-emptyrequired

Detailed information regarding the owner's addresses.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
addressstring<= 150 characters^[\w\W\s]{0,150}$required

The user's address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Av Naburo Ykesaki, 1270"
additional_infostring or null<= 150 characters^[\w\W\s]{0,150}$required

Additional information regarding the user's address.

Example: "In between two palm trees"
district_namestring or null<= 50 characters^[\w\W\s]{0,50}$required

The distrct of the address.

Example: "CENTRO"
townstring<= 50 characters^[\w\W\s]{0,50}$required

The user's town.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Brasilia"
town_codestring or null<= 7 characters\d{7}$required

The seven-digit code for the town, if applicable.

For Brazil, this is the IBGE town code.

Example: "3550308"
statestring or null<= 2 characters^[\w\W\s]{0,2}$required

The state that the address is located in.

Example: "SP"
postcodestring<= 8 characters^\d{8}$required

The postcode of the address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "17500001"
country_namestring<= 80 characters^[\w\W\s]{0,80}$required

The name of the country.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Brasil"
country_codestring or null<= 3 characters^([A-Z]{3})$required

The three-letter country code (ISO-3166 Alpha 3 compliant).

Example: "BRA"
latitudestring or null<= 13 characters^-?\d{1,2}\.\d{1,9}$required

The geographic latitude coordinate.

Example: "-23.5475000"
longitudestring or null<= 13 characters^-?\d{1,3}\.\d{1,8}$required

The geographic longitude coordinate.

Example: "-46.6361100"
phone_numberstring or nullrequired

The account owner's registered phone number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "+52-XXX-XXX-XXXX"
phone_numbersArray of objects or null>= 0 itemsrequired

Detailed information regarding the owner's phone numbers.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main phone number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
typestring or nullrequired

The type of phone number. We return one of the following values:

  • LANDLINE
  • MOBILE
  • OTHER
  • null
Enum"LANDLINE""MOBILE""OTHER"null
Example: "MOBILE"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the phone number.

Example: "This is their work mobile number."
numberstring<= 11 characters^([0-9]{8,11})$required

The phone number (not including the country, area, or extension codes).

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "29875132"
country_codestring or null<= 4 characters^\d{1,4}$required

The country dialling code. For example: 351 (no +).

Example: "351"
area_codestring or null<= 2 characters^\d{1,2}$required

The area dialling code.

Example: "21"
extensionstring or null<= 5 characters^\d{1,5}$required

The extension code.

Example: "932"
filiationsArray of objectsnon-emptyrequired

Information regarding any familial relationships of the individual.

Non-nullable: A value must be returned by Brazil's open finance network.

typestring or nullrequired

The familial relationship. We return one of the following values:

  • MOTHER
  • FATHER
  • null
Enum"MOTHER""FATHER"null
Example: "MOTHER"
civil_namestring<= 70 characters^[\w\W\s]{0,70}$required

The person's full name.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Bruce Wayne"
social_namestring or null<= 70 characters^[\w\W\s]{0,70}$required

The person's social name.

Example: "The Dark Knight"
financial_profileobject or nullrequired

Information regarding the financial profile of the individual.

company_idstring or null<= 14 characters^\d{14}$required

The identifier of the company where the individual is employed.

Example: "50685362000135"
occuptation_codestring or null

The area of employment of the individual. We return one of the following values:

  • BRAZIL_PUBLIC_OFFICE
  • BRAZIL_OCCUPATION_CODE
  • OTHER
  • null
Enum"BRAZIL_PUBLIC_OFFICE""BRAZIL_OCCUPATION_CODE""OTHER"null
Example: "BRAZIL_OCCUPATION_CODE"
occupation_descriptionstring or null<= 100 characters[\w\W\s]*required

Information regarding the individual's occupation.

Example: "01"
informed_incomeobjectrequired

Information regarding the individual's reported income.

Non-nullable: A value must be returned by Brazil's open finance network.

frequencystring or nullrequired

Indicates how often the individual receives their salary. We return one of the following values:

  • DAILY
  • WEEKLY
  • FORTNIGHTLY
  • MONTHLY
  • BIMONTHLY
  • QUARTERLY
  • BIANNUALLY
  • ANNUALLY
  • OTHERS
Enum"DAILY""WEEKLY""FORTNIGHTLY""MONTHLY""BIMONTHLY""QUARTERLY""BIANNUALLY""ANNUALLY""OTHERS"
Example: "MONTHLY"
amountnumber(float)[ 1 .. 20 ] characters^\d{1,15}\.\d{2,4}$required

The reported income that the individual receives.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: 45391.89
currencystring<= 3 characters^[A-Z]{3}$required

The three-letter currency code (ISO-4217).

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "BRL"
datestring(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

Date when the individual last received their salary.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "2020-03-19"
patrimonyobject or nullrequired

Information regarding the individual's reported assets (if available).

amountnumber(float)^\d{1,15}\.\d{2,4}$required

The reported assets of the individual.

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: 45391.89
currencystring<= 3 characters^[A-Z]{3}$required

The three-letter currency code (ISO-4217).

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: "BRL"
yearinteger(int32)[ 1700 .. 2090 ]required

The year that the reported assets applied.

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: 2020
financial_relationobject or nullrequired

Details regarding any additional relationship the individual has with the institution (for example, other accounts or products they have with the institution).

start_datestring(date-time)<= 20 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The ISO-8601 timestamp when the financial relationship between the individual and the institution started.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "2021-05-21T08:30:00Z"
product_servicesArray of stringsnon-emptyrequired

A list of products that the individual has with the institution.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: ["CONTA_DEPOSITO_A_VISTA"]
product_services_additional_infostring or null<= 100 characters^[\w\W]*$required

Additional information regarding the products that the individual has.

Example: "Joint account with Robin"
procuratorsArray of objects or nullrequired

Information regarding any individuals or companies that can act on behalf of the owner.

typestring or nullrequired

The type of representative that can access and make changes to the account. We return one of the following values:

  • LEGAL_REPRESENTATIVE
  • ATTORNEY
  • null
Enum"LEGAL_REPRESENTATIVE""ATTORNEY"null
Example: "LEGAL_REPRESENTATIVE"
civil_namestring<= 70 characters^[\w\W]*$required

The representatives's full name.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "Alfred Thaddeus Pennyworth"
social_namestring or null<= 70 characters^[\w\W]*$required

The person's social name.

Example: "Alfred Pennyworth"
document_numberstring<= 11 characters^\d{11}$required

The document number of the representative.

Note: For individuals, this is Brazil's CPF number. For businesses, this is Brazil's CNPJ number.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "73677831148"
productsArray of objects or nullrequired

Details regarding any additional products that the individual has with the institution.

typestring or nullrequired

The additional products the individual has at the institution. We return one of the following values:

  • SAVINGS_ACCOUNT
  • CHECKING_ACCOUNT
  • null
Enum"SAVINGS_ACCOUNT""CHECKING_ACCOUNT"null
Example: "SAVINGS_ACCOUNT"
subtypestring or nullrequired

The subtype of the product that the individual has at the institution.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "CONJUNTA_SIMPLES"
agencystring or null<= 4 characters^\d{1,4}$required

The branch code where the product was opened.

Example: "6272"
clearing_codestring<= 3 characters^\d{3}$required

The banking clearing code for the product.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "001"
numberstring<= 20 characters^\d{8,20}$required

The account number of the product.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "24550245"
check_digitstring<= 2 characters[\w\W\s]*required

The check digit of the product's number.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "7"
salary_portability_requestsArray of objects

Details regarding any salary portability requests that the individual has made with the institution.

A salary portability is a request to transfer the individual's salary from their employer's 'payroll' bank account to another bank account.

📘

Please note that the receiving bank account cannot terminate a salary portability (or be informed that it has been termnated). Only the employer's payroll bank is able to provide this information. As such, the portabilities listed here may not be up-to-date.

payroll_accountsArray of objects

Details regarding any payroll bank accounts that are associated with the individual. That is, each time the indivudal has a new employer that they receive a salary from, it should be listed here.

📘

Past employers may not close the payroll account for the indiviual. As such, the payroll accounts listed here may not be up-to-date.

]
Response
application/json

Example of an individual (OFDA Brazil).

[ { "id": "c749315b-eec2-435d-a458-06912878564f", "link": "30cb4806-6e00-48a4-91c9-ca55968576c8", "internal_identification": "7e5838e4", "collected_at": "2019-09-27T13:01:41.941Z", "created_at": "2022-02-09T08:45:50.406032Z", "display_name": "Jack Oswald White", "social_name": "O Piadista", "birth_date": "1988-07-15", "marital_status": "SINGLE", "marital_status_additional_info": "It's complicated", "gender": "MALE", "companies_id": [], "is_local_resident": true, "document_id": {}, "additional_documents": [], "nationalities": [], "email": "johndoe@belvo.com", "emails": [], "address": "Carrer de la Llacuna, 162, 08018 Barcelona", "addresses": [], "phone_number": "+52-XXX-XXX-XXXX", "phone_numbers": [], "filiations": [], "financial_profile": {}, "financial_relation": {} } ]

Complete an owners request

Request

Used to resume an Owner retrieve session that was paused because an MFA token was required by the institution.

ℹ️ Note: This resource may return deprecated fields. Please check the response documentation for more information.

Query
omitstring

Omit certain fields from being returned in the response. For more information, see our Filtering responses DevPortal article.

fieldsstring

Return only the specified fields in the response. For more information, see our Filtering responses DevPortal article.

Bodyapplication/jsonrequired
sessionstring[a-f0-9]{32}required

The session you want to resume. You need to use the session value that is provided in the 428 Token Required response that you receive after you make your POST request.

Example: "6e7b283c6efa449c9c028a16b5c249fa"
tokenstring

The MFA token generated by the institution which is required to continue a session.

Example: "1234ab"
linkstring(uuid)required

The link.id you want to resume. Must be the same link.id as the one you receive in the 428 Token Required response that contains the session ID.

Example: "683005d6-f45c-4adb-b289-f1a12f50f80c"
save_databoolean

Indicates whether or not to persist the data in Belvo. By default, this is set to true and we return a 201 Created response.

When set to false, the data won't be persisted and we return a 200 OK response.

Default true
Example: true
curl -i -X PATCH \
  -u <username>:<password> \
  'https://developers.belvo.com/_mock/apis/belvoopenapispec/api/owners/?fields=string&omit=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "session": "6e7b283c6efa449c9c028a16b5c249fa",
    "token": "1234ab",
    "link": "683005d6-f45c-4adb-b289-f1a12f50f80c",
    "save_data": true
  }'

Responses

Ok (when save_data=false)

Bodyapplication/jsonArray [
One of:
idstring(uuid)required

Belvo's unique identifier for the current item.

Example: "0d3ffb69-f83b-456e-ad8e-208d0998d71d"
linkstring or null(uuid)required

The link.id the data belongs to.

Example: "30cb4806-6e00-48a4-91c9-ca55968576c8"
internal_identificationstring or nullrequired

The institution's internal identifier for the owner.

Example: "7e5838e4"
collected_atstring(date-time)required

The ISO-8601 timestamp when the data point was collected.

Example: "2022-02-09T08:45:50.406032Z"
created_atstring(date-time)required

The ISO-8601 timestamp of when the data point was created in Belvo's database.

Example: "2022-02-09T08:45:50.406032Z"
display_namestring<= 128 characters^[\w\W]{0,128}$required

The full name of the individual, as provided by the institution.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Jack Oswald White"
social_namestring or null<= 128 characters^[\w\W]{0,128}$required

The social name of the individual, as generally accepted by the country.

Example: "O Piadista"
birth_datestring(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The individual's date of birth, in YYYY-MM-DD format.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "1988-07-15"
marital_statusstring or nullrequired

The individual's marital status. We return one of the following values:

  • SINGLE
  • MARRIED
  • WIDOWED
  • SEPARATED
  • DIVORCED
  • CIVIL_UNION
  • OTHER
Enum"SINGLE""MARRIED""WIDOWED""SEPARATED""DIVORCED""CIVIL_UNION""OTHER"
Example: "SINGLE"
marital_status_additional_infostring or null<= 50 characters^[\w\W]{0,50}$required

Additional information about the individual's marital status.

Example: "It's complicated"
genderstring or nullrequired

The individual's gender. We return on of the following values:

  • FEMALE
  • MALE
  • OTHER
Enum"FEMALE""MALE""OTHER"
Example: "FEMALE"
companies_idArray of stringsnon-emptyrequired

The institutions responsible for the creation and verification of the owner.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: ["01773247000103"]
is_local_residentbooleanrequired

Boolean to indicate if the individual is a local resident of the country.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
document_idobjectrequired

Information regarding the identification document the owner provided to the bank.

Non-nullable: A value must be returned by Brazil's open finance network.

document_typestringrequired

The type of document the owner provided to the institution to open the account. Common document types are:

🇧🇷 Brazil

  • CPF (Cadastro de Pessoas Físicas)
  • CNPJ(Cadastro Nacional de Pessoas Jurídicas)

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "CPF"
document_numberstringrequired

The document's identification number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "235578435-S"
additional_documentsArray of objects or nullnon-emptyrequired

Detailed information regarding additional documents provided to prove the individuals ID.

Non-nullable: A value must be returned by Brazil's open finance network.

typestring or nullrequired

The type of ID document. We return one of the following values:

  • DRIVERS_LICENSE
  • PASSPORT
  • ID_CARD
  • FISCAL_ID
  • FOREIGNER_REGISTRATION_CARD
  • OTHER
  • null
Enum"DRIVERS_LICENSE""PASSPORT""ID_CARD""FISCAL_ID""FOREIGNER_REGISTRATION_CARD""OTHER"null
Example: "DRIVERS_LICENSE"
type_additional_infostring or null<= 70 characters^[\w\W\s]{0,70}$required

Additional information regarding the document type.

Note: For Business ID documents, this field must return a value from Brazil's open finance network.

Example: "Learner's licence"
numberstring<= 40 characters^[\w\W\s]{0,40}$required

The ID document's number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "DL-7896829-7"
check_digitstring<= 2 characters^[\w\W\s]{0,2}$required

The check digit of the ID document.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "7"
issue_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document was issued, in YYYY-MM-DD format.

Example: "2019-01-01"
expiration_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document expires, in YYYY-MM-DD format.

Example: "2019-01-01"
country_of_issuancestring or null<= 3 characters^[\w]{3}$required

The three-letter country code that issued the document (in ISO-3166 Alpha 3 format).

This field must be returned when the type is PASSPORT.

Example: "CAN"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the ID document.

Example: "The document has water damage"
nationalitiesArray of objects or nullnon-emptyrequired

Detailed information regarding the individual's nationalities.

Only required to be returned when is_local_resident is set to false.

infostring or null<= 40 characters^\S[\s\S]*$required

The nationality of the individual.

Example: "CAN"
documentsArray of objects or nullrequired
typestring or nullrequired

The type of ID document. We return one of the following values:

  • DRIVERS_LICENSE
  • PASSPORT
  • ID_CARD
  • FISCAL_ID
  • FOREIGNER_REGISTRATION_CARD
  • OTHER
  • null
Enum"DRIVERS_LICENSE""PASSPORT""ID_CARD""FISCAL_ID""FOREIGNER_REGISTRATION_CARD""OTHER"null
Example: "DRIVERS_LICENSE"
numberstring<= 40 characters^[\w\W\s]{0,40}$required

The ID document's number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "DL-7896829-7"
issue_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document was issued, in YYYY-MM-DD format.

Example: "2019-01-01"
expiration_datestring or null(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The date the the ID document expires, in YYYY-MM-DD format.

Example: "2019-01-01"
country_of_issuancestring or null<= 3 characters^[\w]{3}$required

The three-letter country code that issued the document (in ISO-3166 Alpha 3 format).

This field must be returned when the type is PASSPORT.

Example: "CAN"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the ID document.

Example: "The document has water damage"
emailstring or null(email)<= 320 charactersrequired

The account owner's registered email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "johndoe@belvo.com"
emailsArray of objects or null>= 0 itemsrequired

Additional list of emails the owner provided.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
emailstring<= 320 characters^[\w\W\s]{0,320}$required

The user's email address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "homen_morcego@gmail.com"
addressstring or nullrequired

The account owner's registered address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Carrer de la Llacuna, 162, 08018 Barcelona"
addressesArray of objects or nullnon-emptyrequired

Detailed information regarding the owner's addresses.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
addressstring<= 150 characters^[\w\W\s]{0,150}$required

The user's address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Av Naburo Ykesaki, 1270"
additional_infostring or null<= 150 characters^[\w\W\s]{0,150}$required

Additional information regarding the user's address.

Example: "In between two palm trees"
district_namestring or null<= 50 characters^[\w\W\s]{0,50}$required

The distrct of the address.

Example: "CENTRO"
townstring<= 50 characters^[\w\W\s]{0,50}$required

The user's town.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Brasilia"
town_codestring or null<= 7 characters\d{7}$required

The seven-digit code for the town, if applicable.

For Brazil, this is the IBGE town code.

Example: "3550308"
statestring or null<= 2 characters^[\w\W\s]{0,2}$required

The state that the address is located in.

Example: "SP"
postcodestring<= 8 characters^\d{8}$required

The postcode of the address.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "17500001"
country_namestring<= 80 characters^[\w\W\s]{0,80}$required

The name of the country.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Brasil"
country_codestring or null<= 3 characters^([A-Z]{3})$required

The three-letter country code (ISO-3166 Alpha 3 compliant).

Example: "BRA"
latitudestring or null<= 13 characters^-?\d{1,2}\.\d{1,9}$required

The geographic latitude coordinate.

Example: "-23.5475000"
longitudestring or null<= 13 characters^-?\d{1,3}\.\d{1,8}$required

The geographic longitude coordinate.

Example: "-46.6361100"
phone_numberstring or nullrequired

The account owner's registered phone number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "+52-XXX-XXX-XXXX"
phone_numbersArray of objects or null>= 0 itemsrequired

Detailed information regarding the owner's phone numbers.

Non-nullable: A value must be returned by Brazil's open finance network.

is_mainbooleanrequired

Boolean to indicate if this is the user's main phone number.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: true
typestring or nullrequired

The type of phone number. We return one of the following values:

  • LANDLINE
  • MOBILE
  • OTHER
  • null
Enum"LANDLINE""MOBILE""OTHER"null
Example: "MOBILE"
additional_infostring or null<= 100 characters^[\w\W\s]{0,100}$required

Additional information about the phone number.

Example: "This is their work mobile number."
numberstring<= 11 characters^([0-9]{8,11})$required

The phone number (not including the country, area, or extension codes).

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "29875132"
country_codestring or null<= 4 characters^\d{1,4}$required

The country dialling code. For example: 351 (no +).

Example: "351"
area_codestring or null<= 2 characters^\d{1,2}$required

The area dialling code.

Example: "21"
extensionstring or null<= 5 characters^\d{1,5}$required

The extension code.

Example: "932"
filiationsArray of objectsnon-emptyrequired

Information regarding any familial relationships of the individual.

Non-nullable: A value must be returned by Brazil's open finance network.

typestring or nullrequired

The familial relationship. We return one of the following values:

  • MOTHER
  • FATHER
  • null
Enum"MOTHER""FATHER"null
Example: "MOTHER"
civil_namestring<= 70 characters^[\w\W\s]{0,70}$required

The person's full name.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "Bruce Wayne"
social_namestring or null<= 70 characters^[\w\W\s]{0,70}$required

The person's social name.

Example: "The Dark Knight"
financial_profileobject or nullrequired

Information regarding the financial profile of the individual.

company_idstring or null<= 14 characters^\d{14}$required

The identifier of the company where the individual is employed.

Example: "50685362000135"
occuptation_codestring or null

The area of employment of the individual. We return one of the following values:

  • BRAZIL_PUBLIC_OFFICE
  • BRAZIL_OCCUPATION_CODE
  • OTHER
  • null
Enum"BRAZIL_PUBLIC_OFFICE""BRAZIL_OCCUPATION_CODE""OTHER"null
Example: "BRAZIL_OCCUPATION_CODE"
occupation_descriptionstring or null<= 100 characters[\w\W\s]*required

Information regarding the individual's occupation.

Example: "01"
informed_incomeobjectrequired

Information regarding the individual's reported income.

Non-nullable: A value must be returned by Brazil's open finance network.

frequencystring or nullrequired

Indicates how often the individual receives their salary. We return one of the following values:

  • DAILY
  • WEEKLY
  • FORTNIGHTLY
  • MONTHLY
  • BIMONTHLY
  • QUARTERLY
  • BIANNUALLY
  • ANNUALLY
  • OTHERS
Enum"DAILY""WEEKLY""FORTNIGHTLY""MONTHLY""BIMONTHLY""QUARTERLY""BIANNUALLY""ANNUALLY""OTHERS"
Example: "MONTHLY"
amountnumber(float)[ 1 .. 20 ] characters^\d{1,15}\.\d{2,4}$required

The reported income that the individual receives.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: 45391.89
currencystring<= 3 characters^[A-Z]{3}$required

The three-letter currency code (ISO-4217).

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "BRL"
datestring(date)<= 10 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

Date when the individual last received their salary.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "2020-03-19"
patrimonyobject or nullrequired

Information regarding the individual's reported assets (if available).

amountnumber(float)^\d{1,15}\.\d{2,4}$required

The reported assets of the individual.

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: 45391.89
currencystring<= 3 characters^[A-Z]{3}$required

The three-letter currency code (ISO-4217).

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: "BRL"
yearinteger(int32)[ 1700 .. 2090 ]required

The year that the reported assets applied.

Non-nullable: A value must be returned by Brazil's open finance network when the patrimony object is available.

Example: 2020
financial_relationobject or nullrequired

Details regarding any additional relationship the individual has with the institution (for example, other accounts or products they have with the institution).

start_datestring(date-time)<= 20 characters^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?...required

The ISO-8601 timestamp when the financial relationship between the individual and the institution started.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: "2021-05-21T08:30:00Z"
product_servicesArray of stringsnon-emptyrequired

A list of products that the individual has with the institution.

Non-nullable: A value must be returned by Brazil's open finance network.

Example: ["CONTA_DEPOSITO_A_VISTA"]
product_services_additional_infostring or null<= 100 characters^[\w\W]*$required

Additional information regarding the products that the individual has.

Example: "Joint account with Robin"
procuratorsArray of objects or nullrequired

Information regarding any individuals or companies that can act on behalf of the owner.

typestring or nullrequired

The type of representative that can access and make changes to the account. We return one of the following values:

  • LEGAL_REPRESENTATIVE
  • ATTORNEY
  • null
Enum"LEGAL_REPRESENTATIVE""ATTORNEY"null
Example: "LEGAL_REPRESENTATIVE"
civil_namestring<= 70 characters^[\w\W]*$required

The representatives's full name.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "Alfred Thaddeus Pennyworth"
social_namestring or null<= 70 characters^[\w\W]*$required

The person's social name.

Example: "Alfred Pennyworth"
document_numberstring<= 11 characters^\d{11}$required

The document number of the representative.

Note: For individuals, this is Brazil's CPF number. For businesses, this is Brazil's CNPJ number.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "73677831148"
productsArray of objects or nullrequired

Details regarding any additional products that the individual has with the institution.

typestring or nullrequired

The additional products the individual has at the institution. We return one of the following values:

  • SAVINGS_ACCOUNT
  • CHECKING_ACCOUNT
  • null
Enum"SAVINGS_ACCOUNT""CHECKING_ACCOUNT"null
Example: "SAVINGS_ACCOUNT"
subtypestring or nullrequired

The subtype of the product that the individual has at the institution.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "CONJUNTA_SIMPLES"
agencystring or null<= 4 characters^\d{1,4}$required

The branch code where the product was opened.

Example: "6272"
clearing_codestring<= 3 characters^\d{3}$required

The banking clearing code for the product.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "001"
numberstring<= 20 characters^\d{8,20}$required

The account number of the product.

Non-nullable: A value must be returned by Brazil's open finance network if the procurators field is available.

Example: "24550245"
check_digitstring<= 2 characters[\w\W\s]*required

The check digit of the product's number.

Non-nullable: A value must be returned by Brazil's open finance network if the products field is available.

Example: "7"
salary_portability_requestsArray of objects

Details regarding any salary portability requests that the individual has made with the institution.

A salary portability is a request to transfer the individual's salary from their employer's 'payroll' bank account to another bank account.

📘

Please note that the receiving bank account cannot terminate a salary portability (or be informed that it has been termnated). Only the employer's payroll bank is able to provide this information. As such, the portabilities listed here may not be up-to-date.

payroll_accountsArray of objects

Details regarding any payroll bank accounts that are associated with the individual. That is, each time the indivudal has a new employer that they receive a salary from, it should be listed here.

📘

Past employers may not close the payroll account for the indiviual. As such, the payroll accounts listed here may not be up-to-date.

]
Response
application/json

Example of an individual (OFDA Brazil).

[ { "id": "c749315b-eec2-435d-a458-06912878564f", "link": "30cb4806-6e00-48a4-91c9-ca55968576c8", "internal_identification": "7e5838e4", "collected_at": "2019-09-27T13:01:41.941Z", "created_at": "2022-02-09T08:45:50.406032Z", "display_name": "Jack Oswald White", "social_name": "O Piadista", "birth_date": "1988-07-15", "marital_status": "SINGLE", "marital_status_additional_info": "It's complicated", "gender": "MALE", "companies_id": [], "is_local_resident": true, "document_id": {}, "additional_documents": [], "nationalities": [], "email": "johndoe@belvo.com", "emails": [], "address": "Carrer de la Llacuna, 162, 08018 Barcelona", "addresses": [], "phone_number": "+52-XXX-XXX-XXXX", "phone_numbers": [], "filiations": [], "financial_profile": {}, "financial_relation": {} } ]

Accounts

An account is the representation of a bank account inside a financial institution. A user can have one or more accounts in an institution.

For example, one user (or link) can have a checking account, several credit cards, and a loan account.

Querying for a user's account information is useful as you can get information regarding:

  • what types of accounts the user has.
  • the balance for each account (savings, checking, credit card, loan, and so on).
  • detailed information regarding their credit card spending.
  • the current situation of any loans they may have.
Operations

Balances

Operations

Transactions

A transaction contains the detailed information of each movement inside an account. For example, a purchase at a store or a restaurant.

Operations

Bills

A bill refers to the credit card bill a user receives for given account.

Note: Only available for OFDA.

Operations

Investments Brazil

Operations

Investment Transactions Brazil

Operations

Employments Brazil

Our employments resource for Brazil lets you get a comprehensive view of your user's current employment history and salary information.

For each user, we return the:

  • work history (including occupations and employer data)
  • historical and current salary information (per employer)

At the moment, the employments resource is available for:

  • 🇧🇷 Brazil (INSS)
Operations

Employment Records Mexico

Our employment records resource for Mexico lets you get a comprehensive view of your user’s current social security contributions and employment history.

With Belvo's employment records resource for Mexico, you can access information about your user's current social security contributions and employment history. For the each user, we return the:

  • personal data
  • work history
  • historical and current daily base salary
  • and more!

At the moment, the employment records resource is available for:

  • 🇲🇽 Mexico (IMSS)
  • 🇲🇽 Mexico (ISSSTE)
Operations

Invoices

Operations

Tax compliance status

Operations

Tax returns

Operations

Tax retentions

Operations

Tax status

Operations

Financial Statements

Operations

Invoices Chile

Operations

Tax Status Chile

Operations

Debt Reports Chile

Operations

Incomes

Use the Incomes endpoint to gather insights on an account's income sources for the past 365 days. The endpoint is particularly useful when you want to verify a person's income.

📘 Info

The incomes resource is only available for Checking and Savings accounts associated with banking links.

Operations

Recurring Expenses

Belvo's Recurring Expenses API allows you to identify a user's regular payments for subscription services, such as Netflix or gym memberships, as well as utility payments, such as electricity or phone bills. We return information for up to 365 days.

📘 Info

The recurring expenses resource is only available for Checking, Savings and Credit Card accounts associated with banking links.

Operations

Risk Insights

Operations

Employment Metrics

Operations

Payment Institutions (Brazil)

A payment institution is an entity that Belvo can access information from. You can see a complete list of institutions available for payments by making a List request to this endpoint.

Operations

Customers (Brazil)

A customer is the payer that's going to push funds into your bank account. You need to create a customer in order to receive inflow payments to your organization's bank account.

Operations

Bank Accounts (Brazil)

To receive inflow payments to your organization's bank account, you must register the bank accounts (individual and business) using Belvo's Payments API.

  • Individual bank accounts must be created for each payer (your customer).
  • Business bank accounts need to be created for the beneficiary of the payment (your organization).
Operations

Payment Intents (Brazil)

A payment intent is a single point of access to create payments using any payment method offered by Belvo.

A payment intent captures all payment information (such as the amount to be charged, the description of the payment, the provider, and so on) and guides your customers through the payment flow.

Note: For institutions that require the username_type in the form_fields array, you must send through this value in your PATCH request.

Operations

Biometric Pix Widget Access Token (Brazil)

Use the Biometric Pix Widget Token requests to create a access token for Biometric Payments.

Operations

Payment Transactions (Brazil)

Each time you receive an inflow payment from your customer, a transaction is created in the Belvo database.

You can use the Payment Transactions resource in order to get useful information about a transaction as well as the specific charge associated with it.

Operations