Pular para o conteúdo

Contas bancárias (bank-accounts)

O recurso bank-accounts expõe as contas bancárias cadastradas no financeiro da sua conta: nome, banco, agência, número, tipo, moeda, saldo inicial e saldo atual calculado. Caixas de loja e carteiras em dinheiro também aparecem aqui, com account_type igual a cash.

Módulocontas_bancarias
Escoposbank-accounts:read (também concedido por *:read e por *:write)
Operaçõessomente leitura
MétodoEndpointDescrição
GET/v1/bank-accountsLista contas bancárias, com paginação por cursor
GET/v1/bank-accounts/{id}Retorna uma conta bancária pelo id
CampoTipoDescrição
iduuidIdentificador da conta bancária
account_namestringNome da conta, como aparece no aplicativo
bank_namestring | nullNome do banco
agency_numberstring | nullNúmero da agência
account_numberstring | nullNúmero da conta
account_typestring | nullTipo da conta, por exemplo checking, savings ou cash
currencystring | nullMoeda da conta, por exemplo BRL
initial_balancenumber | nullSaldo inicial cadastrado
current_balancenumber | nullSaldo atual calculado
is_activeboolean | nullSe a conta está ativa
archivedbooleanSe a conta foi arquivada
notesstring | nullObservações livres
created_atstring (ISO 8601) | nullData de criação
updated_atstring (ISO 8601) | nullData da última atualização

Use fields para receber só um subconjunto das colunas: ?fields=id,account_name,current_balance.

A sintaxe do filtro é filter[campo][operador]=valor. Os campos filtráveis de bank-accounts são:

CampoExemplo
account_namefilter[account_name][ilike]=Nubank%
is_activefilter[is_active][eq]=true
archivedfilter[archived][eq]=false

Os operadores aceitos são eq, neq, gt, gte, lt, lte, in, nin, ilike e is_null. Um campo fora da lista acima responde 422 validation.

A ordenação usa sort=campo para crescente e sort=-campo para decrescente. Os campos ordenáveis são created_at, updated_at e account_name. O padrão é -created_at.

A listagem também aceita limit (de 1 a 100, padrão 20) e cursor. Veja Paginação, filtros e ordenação.

Contas não arquivadas, da mais recente para a mais antiga:

Terminal window
curl -G "$LIGGA_BASE/v1/bank-accounts" \
-H "Authorization: Bearer $LIGGA_API_KEY" \
--data-urlencode "limit=2" \
--data-urlencode "sort=-created_at" \
--data-urlencode "filter[archived][eq]=false"
{
"data": [
{
"id": "0d4f2c9a-1b7e-4c3d-9a52-8e6f1b2c3d4e",
"account_name": "Conta PJ Principal",
"bank_name": "Nu Pagamentos S.A.",
"agency_number": "0001",
"account_number": "1234567-8",
"account_type": "checking",
"currency": "BRL",
"initial_balance": 5000,
"current_balance": 18432.75,
"is_active": true,
"archived": false,
"notes": "Conta usada para recebimentos de vendas.",
"created_at": "2026-03-12T14:22:05.000Z",
"updated_at": "2026-07-01T09:10:44.000Z"
},
{
"id": "7a1e5d3b-9c2f-4e8a-b6d1-2f3a4b5c6d7e",
"account_name": "Caixinha da loja",
"bank_name": null,
"agency_number": null,
"account_number": null,
"account_type": "cash",
"currency": "BRL",
"initial_balance": 300,
"current_balance": 512.4,
"is_active": true,
"archived": false,
"notes": null,
"created_at": "2026-01-05T11:00:00.000Z",
"updated_at": "2026-06-28T17:45:12.000Z"
}
],
"pagination": {
"next_cursor": "eyJpZCI6IjdhMWU1ZDNiLi4uIiwidiI6IjIwMjYtMDEtMDVUMTE6MDA6MDBaIn0",
"has_more": true,
"limit": 2
},
"meta": { "request_id": "req_01JZXQ8V2K5M7N9P0R1S2T3U4V" }
}

Enquanto pagination.has_more for true, repita a chamada passando cursor=<pagination.next_cursor>.

Para um painel de saldos, peça só as contas em uso e em ordem alfabética:

Terminal window
curl -G "$LIGGA_BASE/v1/bank-accounts" \
-H "Authorization: Bearer $LIGGA_API_KEY" \
--data-urlencode "fields=id,account_name,current_balance,currency" \
--data-urlencode "filter[is_active][eq]=true" \
--data-urlencode "filter[archived][eq]=false" \
--data-urlencode "sort=account_name"
Terminal window
curl "$LIGGA_BASE/v1/bank-accounts/0d4f2c9a-1b7e-4c3d-9a52-8e6f1b2c3d4e" \
-H "Authorization: Bearer $LIGGA_API_KEY"
{
"data": {
"id": "0d4f2c9a-1b7e-4c3d-9a52-8e6f1b2c3d4e",
"account_name": "Conta PJ Principal",
"bank_name": "Nu Pagamentos S.A.",
"agency_number": "0001",
"account_number": "1234567-8",
"account_type": "checking",
"currency": "BRL",
"initial_balance": 5000,
"current_balance": 18432.75,
"is_active": true,
"archived": false,
"notes": "Conta usada para recebimentos de vendas.",
"created_at": "2026-03-12T14:22:05.000Z",
"updated_at": "2026-07-01T09:10:44.000Z"
},
"meta": { "request_id": "req_01JZXQ8V2K5M7N9P0R1S2T3U4V" }
}
HTTPtypeQuando acontece
401invalid_tokenCabeçalho Authorization ausente ou chave inexistente
403api_disabledA conta ainda não tem a API habilitada
403module_not_enabledMódulo contas_bancarias fora do contrato
403insufficient_scopeChave sem bank-accounts:read
404not_foundid inexistente ou pertencente a outra conta
422validationCampo de filtro, operador, sort ou cursor não aceito
429rate-limit-exceededLimite de requisições do plano excedido