Belvo Recurring Expenses API

Regular subscription and utility payments.

Operations 2

GET /api/recurring-expenses/ List all recurring expenses #
POST /api/recurring-expenses/ Retrieve recurring expenses for a Link #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/belvo-recurring-expenses-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

belvo-recurring-expenses-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Belvo Accounts Recurring Expenses API
  description: The Belvo API is a RESTful open-finance API for Latin America. It lets you connect to bank, fiscal, and employment institutions across Mexico, Brazil, and Colombia through Links, then retrieve accounts, balances, transactions, owners, incomes, and recurring expenses. The Payments (Brazil) surface initiates account-to-account payments over Pix and the Open Finance network. All requests use HTTP Basic authentication with your Secret Key ID as the username and Secret Key Password as the password.
  termsOfService: https://belvo.com/terms-and-conditions/
  contact:
    name: Belvo Support
    email: support@belvo.com
    url: https://developers.belvo.com
  version: '1.0'
servers:
- url: https://api.belvo.com
  description: Production
- url: https://sandbox.belvo.com
  description: Sandbox
security:
- basicAuth: []
tags:
- name: Recurring Expenses
  description: Regular subscription and utility payments.
paths:
  /api/recurring-expenses/:
    get:
      operationId: listRecurringExpenses
      tags:
      - Recurring Expenses
      summary: List all recurring expenses
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/Page'
      responses:
        '200':
          description: A paginated list of recurring expense records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedRecurringExpenses'
    post:
      operationId: retrieveRecurringExpenses
      tags:
      - Recurring Expenses
      summary: Retrieve recurring expenses for a Link
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetrieveRequest'
      responses:
        '200':
          description: The recurring expenses found for the Link.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RecurringExpense'
        '201':
          description: The recurring expenses were retrieved.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RecurringExpense'
components:
  parameters:
    Page:
      name: page
      in: query
      description: The page number of results to return.
      schema:
        type: integer
        default: 1
    PageSize:
      name: page_size
      in: query
      description: Number of items per page (max 1000).
      schema:
        type: integer
        default: 100
        maximum: 1000
  schemas:
    PaginatedRecurringExpenses:
      allOf:
      - $ref: '#/components/schemas/Pagination'
      - type: object
        properties:
          results:
            type: array
            items:
              $ref: '#/components/schemas/RecurringExpense'
    Account:
      type: object
      properties:
        id:
          type: string
          format: uuid
        link:
          type: string
          format: uuid
        institution:
          type: object
          properties:
            name:
              type: string
            type:
              type: string
        category:
          type: string
          example: CHECKING_ACCOUNT
        type:
          type: string
        name:
          type: string
        number:
          type: string
        currency:
          type: string
          example: MXN
        balance:
          type: object
          properties:
            current:
              type: number
            available:
              type: number
        created_at:
          type: string
          format: date-time
    Pagination:
      type: object
      properties:
        count:
          type: integer
        next:
          type:
          - string
          - 'null'
        previous:
          type:
          - string
          - 'null'
    RetrieveRequest:
      type: object
      required:
      - link
      properties:
        link:
          type: string
          format: uuid
          description: The Link UUID to retrieve data for.
        save_data:
          type: boolean
          default: true
    RecurringExpense:
      type: object
      properties:
        id:
          type: string
          format: uuid
        account:
          $ref: '#/components/schemas/Account'
        name:
          type: string
        category:
          type: string
        frequency:
          type: string
          enum:
          - WEEKLY
          - BIMONTHLY
          - MONTHLY
          - BIWEEKLY
          - QUARTERLY
          - SEMESTRALLY
          - YEARLY
        average_transaction_amount:
          type: number
        currency:
          type: string
        transactions:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              amount:
                type: number
              value_date:
                type: string
                format: date
        collected_at:
          type: string
          format: date-time
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication using your Secret Key ID as the username and your Secret Key Password as the password.