Openi DeveloperDeveloper
Contabilidade

Listar Lançamentos de Investimentos

Lista os lançamentos de investimentos (aplicações, resgates, rendimentos, impostos...), paginados, com filtros por qualquer campo (inclusive campos personalizados), ordenação e busca.

Endpoint

Método e URL:

GET /api/v1/companies/:companyId/accounting/investments/entries

Parâmetros da URL:

  • companyId (uuid, obrigatório): Identificador da empresa

Parâmetros de query:

  • investmentId (uuid, obrigatório, repetível): Investimentos a consultar — todos devem pertencer à empresa, caso contrário 404. Os ids vêm de Listar Investimentos. Para listas longas, use Buscar Lançamentos de Investimentos
  • from, to (data YYYY-MM-DD ou data-hora ISO 8601, opcionais): Período sobre placedAt, ambos inclusivos — veja Período
  • filters (JSON, opcional): Condições sobre os campos abaixo — formato em Filtros, ordenação e busca
  • joinOperator (opcional): and (padrão) ou or. investmentId, from e to sempre restringem o resultado, mesmo com or
  • sort (JSON, opcional): Qualquer campo abaixo ou id de campo personalizado. Padrão: criados mais recentemente primeiro
  • search (texto, opcional): Busca nos campos de texto do lançamento
  • page (number, opcional): Página, a partir de 1 (padrão: 1)
  • perPage (number, opcional): Itens por página, de 1 a 500 (padrão: 10)

Os totais do resultado filtrado ficam em Totais dos Lançamentos de Investimentos.

Campos filtráveis

Todos os campos abaixo também são ordenáveis.

CampoTipoObservação
placedAtdatadata da operação
confirmedAtdatadata de liquidação
grossValuevalor
netValuevalor
quantitynúmero
typeenumBUY, SELL, TRANSFER, TAX, INTEREST_ACCRUAL, MATURITY, COME_COTAS, AMORTIZATION, INTEREST_PAYMENT, DIVIDEND, JCP, RENT, OTHER, IR, IOF, PROVISION_IR, PROVISION_IOF, MARK_TO_MARKET
originenumTRANSACTION, SYNTHETIC_EVENT ou MANUAL
descriptiontexto
investmentIduuid
bankAccountIduuidconta bancária vinculada ao lançamento, quando houver
investmentNametexto
investmentTypeenumFIXED_INCOME, SECURITY, MUTUAL_FUND, EQUITY, ETF, COE ou OTHER
investmentSubtypeenumsubtipos por tipo — veja subtype em Listar Investimentos
statusenumACTIVE, LOCKED ou DESPISED (descartados nunca são listados)
classificationStatusenumNOT_CLASSIFIED, CLASSIFIED_PARTIAL ou CLASSIFIED
transactionIduuid
syntheticEventIduuid
presetIduuid
iduuid
createdAtdata
updatedAtdata
id de campo personalizadocampo personalizadoids em Atributos dos Lançamentos de Investimentos

Exemplo

Aplicações e resgates acima de R$ 10.000 no primeiro semestre, por data:

curl -G "https://api-business.openi.com.br/api/v1/companies/{companyId}/accounting/investments/entries" \
  -H "Authorization: Bearer oak_368ba506f7b2_9f2c..." \
  --data-urlencode 'investmentId=9e8d7c6b-5a4f-4e3d-2c1b-0a9f8e7d6c5b' \
  --data-urlencode 'from=2026-01-01' \
  --data-urlencode 'to=2026-06-30' \
  --data-urlencode 'filters=[{"id":"type","operator":"inArray","value":["BUY","SELL"]},{"id":"netValue","operator":"gte","value":10000}]' \
  --data-urlencode 'sort=[{"id":"placedAt","desc":false}]'

Resposta

{
  "status": "success",
  "data": {
    "data": [
      {
        "id": "c3d4e5f6-a7b8-4c9d-0e1f-2a3b4c5d6e7f",
        "companyId": "3f2e1d0c-9b8a-4c7d-8e6f-5a4b3c2d1e0f",
        "presetId": null,
        "investmentId": "9e8d7c6b-5a4f-4e3d-2c1b-0a9f8e7d6c5b",
        "bankAccountId": null,
        "transactionId": "d4e5f6a7-b8c9-4d0e-1f2a-3b4c5d6e7f8a",
        "syntheticEventId": null,
        "origin": "TRANSACTION",
        "placedAt": "2026-07-01T00:00:00.000Z",
        "confirmedAt": "2026-07-01T00:00:00.000Z",
        "description": "Aplicação CDB Banco Inter",
        "grossValue": "10000.00",
        "netValue": "10000.00",
        "quantity": "10000.00000000",
        "type": "BUY",
        "investmentName": "CDB Banco Inter 110% CDI",
        "investmentType": "FIXED_INCOME",
        "investmentSubtype": "CDB",
        "createdAt": "2026-07-01T12:00:00.000Z",
        "updatedAt": "2026-07-01T12:00:00.000Z",
        "status": "ACTIVE",
        "classificationStatus": "NOT_CLASSIFIED",
        "dismemberOrigin": null,
        "customFields": {
          "0d9e1f2a-3b4c-4d5e-6f7a-8b9c0d1e2f3a": "Tesouraria"
        }
      }
    ],
    "pagination": { "totalRecords": 42, "totalPages": 5, "hasMore": true }
  }
}
  • grossValue e netValue são strings decimais com ponto e duas casas ("10000.00"), sem símbolo de moeda
  • customFields: mapa { fieldId: valor } dos campos personalizados do lançamento
  • quantity vem null nos lançamentos gerados pela plataforma (origin: SYNTHETIC_EVENT — rendimentos, marcação a mercado, provisões e impostos), que não têm quantidade associada — exceto MATURITY e COME_COTAS, que trazem as cotas envolvidas. Nos lançamentos TRANSACTION, é a quantidade enviada pela instituição via Open Finance, e vem null quando ela não informa (comum em renda fixa)
  • pagination.hasMore indica se existe próxima página; totalRecords e totalPages vêm null em conjuntos grandes — veja Paginação

On this page