Contas bancárias
Listar Transações
Lista as transações bancárias da empresa, paginadas, com filtros por data, valor, tipo e demais campos, ordenação e busca.
Endpoint
Método e URL:
GET /api/v1/companies/:companyId/bank-accounts/transactionsParâmetros da URL:
companyId(uuid, obrigatório): Identificador da empresa
Parâmetros de query:
accountId(uuid, opcional, repetível): Restringe a uma ou mais contas (?accountId=a&accountId=b). Sem o parâmetro, retorna transações de todas as contas da empresa. Contas de outra empresa retornam404from,to(dataYYYY-MM-DDou data-hora ISO 8601, opcionais): Período sobretransactionAt, ambos inclusivos — veja Períodofilters(JSON, opcional): Condições sobre os campos abaixo — formato em Filtros, ordenação e buscajoinOperator(opcional):and(padrão) ouorsort(JSON, opcional): Ordenação portransactionAt. Padrão: mais recente primeirosearch(texto, opcional): Busca em descrição, nome e documento da contraparte, valor e tipopage(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)
Campos filtráveis
| Campo | Tipo | Ordenável | Observação |
|---|---|---|---|
transactionAt | data | sim | data da transação |
amount | número | com sinal: positivo para entradas, negativo para saídas | |
type | enum | CREDIT ou DEBIT | |
operationType | texto | ex.: PIX, TED, BOLETO | |
status | enum | POSTED ou PENDING | |
description | texto | ||
accountId | uuid | ||
id | uuid | ||
providerId | texto | ||
createdAt | data | quando a transação foi registrada na Openi — útil para sincronização incremental | |
updatedAt | data |
Exemplos
Saídas acima de R$ 1.000 em agosto de 2026, da mais antiga para a mais recente:
curl -G "https://api-business.openi.com.br/api/v1/companies/{companyId}/bank-accounts/transactions" \
-H "Authorization: Bearer oak_368ba506f7b2_9f2c..." \
--data-urlencode 'from=2026-08-01' \
--data-urlencode 'to=2026-08-31' \
--data-urlencode 'filters=[{"id":"type","operator":"eq","value":"DEBIT"},{"id":"amount","operator":"lte","value":-1000}]' \
--data-urlencode 'sort=[{"id":"transactionAt","desc":false}]' \
--data-urlencode 'perPage=100'Sincronização incremental — tudo que entrou desde a última execução:
curl -G "https://api-business.openi.com.br/api/v1/companies/{companyId}/bank-accounts/transactions" \
-H "Authorization: Bearer oak_368ba506f7b2_9f2c..." \
--data-urlencode 'filters=[{"id":"createdAt","operator":"gt","value":"2026-08-07T15:00:00Z"}]' \
--data-urlencode 'perPage=500'PIX ou TED de uma conta específica:
curl -G "https://api-business.openi.com.br/api/v1/companies/{companyId}/bank-accounts/transactions" \
-H "Authorization: Bearer oak_368ba506f7b2_9f2c..." \
--data-urlencode 'accountId=6f1c2b3a-8d4e-4a5b-9c0d-1e2f3a4b5c6d' \
--data-urlencode 'filters=[{"id":"operationType","operator":"inArray","value":["PIX","TED"]}]'Resposta
{
"status": "success",
"data": {
"transactions": [
{
"id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
"providerId": "pluggy-tx-889123",
"accountId": "6f1c2b3a-8d4e-4a5b-9c0d-1e2f3a4b5c6d",
"description": "PIX RECEBIDO PADARIA SILVA LTDA",
"descriptionRaw": "PIX RECEBIDO PADARIA SILVA LTDA",
"status": "POSTED",
"type": "CREDIT",
"amount": "1500.00",
"amountInAccountCurrency": null,
"currency": "BRL",
"payer": {
"name": "Padaria Silva Ltda",
"document": "12345678000190",
"documentType": "CNPJ",
"accountNumber": "12345-6",
"branchNumber": "0001",
"routingNumber": null,
"routingNumberIspb": null
},
"receiver": {
"name": null,
"document": null,
"documentType": null,
"accountNumber": null,
"branchNumber": null,
"routingNumber": null,
"routingNumberIspb": null
},
"paymentMethod": "PIX",
"reason": null,
"referenceNumber": "E60701190202608071433abcdef",
"receiverReferenceId": null,
"operationType": "PIX",
"transactionAt": "2026-08-07T14:33:00.000Z",
"createdAt": "2026-08-07T15:00:00.000Z",
"updatedAt": "2026-08-07T15:00:00.000Z",
"balanceAfter": "16730.45"
}
],
"pagination": { "page": 1, "limit": 10, "totalPages": 5 }
}
}type:CREDIT(entrada) ouDEBIT(saída)status:POSTED(efetivada) ouPENDING(pendente)amountebalanceAfter: valores decimais como stringbalanceAfter: saldo da conta após a transação — sempre o saldo real, mesmo com filtros aplicadospagination.totalPagesconsidera os filtros

