Download OpenAPI specification:Download
A API de Contas da ONZ foi criada para integrar sistemas corporativos a serviços financeiros, com foco em gestão de contas, pagamentos, movimentações financeiras e notificações operacionais. Por meio desta API REST, sua aplicação pode consultar saldos e extratos, iniciar pagamentos, acompanhar transações, configurar webhooks e operar fluxos financeiros de forma segura, rastreável e escalável.
Esta documentação descreve os recursos disponíveis, os parâmetros obrigatórios e opcionais, os cabeçalhos necessários, os formatos esperados e os exemplos de resposta para cenários de sucesso e erro.
Para endpoints operacionais de conta, como saldos, transações, Pix, TED, boletos, transferências internas, infrações e webhooks, envie o cabeçalho x-account-id com o identificador interno da conta filha que será operada. O cabeçalho é obrigatório apenas para tokens emitidos por credenciais BaaS. Tokens de credenciais de conta continuam operando a própria conta da credencial.
Endpoints de escopo BaaS, como GET /accounts, GET /accounts/{id}, POST /onboarding, POST /onboarding/{id}/images, GET /onboardings e GET /onboardings/{id}, não exigem x-account-id.
Esta seção descreve como obter tokens de acesso OAuth 2.0 para autenticar chamadas corporativas. Cada requisição aos recursos protegidos deve enviar um token válido no cabeçalho Authorization.
O primeiro passo para utilizar a API corporativa é a autenticação. Nesta etapa, o servidor de autorização valida as credenciais do cliente e emite um token de acesso.
A API utiliza tokens Bearer do OAuth 2.0. Toda requisição a recursos protegidos deve incluir o token no cabeçalho HTTP Authorization. Após obter o token, sua aplicação pode acessar os endpoints compatíveis com os escopos concedidos.
Escopos
Os escopos definem quais recursos bancários poderão ser acessados pelo token.
| Recurso | Escopo de leitura | Escopo de escrita | Acessível via |
|---|---|---|---|
| Pix | pix.read | pix.write | Token corporativo |
| Boletos | billets.read | billets.write | Token corporativo |
| Webhook | webhook.read | webhook.write | Token corporativo |
| Transações | transactions.read | Token corporativo | |
| Conta | account.read | Token corporativo | |
| Infrações | infractions.read | infractions.write | Token corporativo |
| Transferências internas | internal-transfer.read | internal-transfer.write | Token corporativo |
| TED | ted.read | ted.write | Token corporativo |
| Contas BaaS | baas.accounts.read | Credencial BaaS | |
| Onboardings BaaS | baas.onboarding.read | baas.onboarding.write | Credencial BaaS |
| Credenciais BaaS | baas.credentials.write | Credencial BaaS |
| clientId required | string Identificador da credencial. Credenciais BaaS usam prefixo |
| clientSecret required | string |
| grantType required | string Default: "client_credentials" |
| scope | string |
{- "clientId": "string",
- "clientSecret": "string",
- "grantType": "client_credentials",
- "scope": "string"
}{- "tokenType": "string",
- "expiresAt": 0,
- "refreshExpiresIn": 0,
- "notBeforePolicy": 0,
- "accessToken": "string",
- "scope": "string"
}Os endpoints de contas permitem consultar saldo, listar transações, obter detalhes de movimentações e gerar extratos consolidados para apoiar conciliação, auditoria e acompanhamento financeiro.
Lista as contas filhas pertencentes ao BaaS da credencial autenticada. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
A conta dona do BaaS não é retornada nesta listagem.
| page | integer >= 1 Default: 1 Número da página para paginação. |
| perPage | integer [ 1 .. 100 ] Default: 20 Quantidade máxima de itens por página. |
| status | integer Status interno da conta. |
| type | string Tipo da conta. |
| document | string Documento do titular da conta. |
| accountNumber | integer Número da conta. |
| createdAtStart | string <date-time> Data inicial de criação da conta (ISO 8601). |
| createdAtEnd | string <date-time> Data final de criação da conta (ISO 8601). |
{- "meta": {
- "total": 100,
- "limit": 10,
- "offset": 1
}, - "data": [
- {
- "id": 0,
- "accountNumber": 0,
- "branchNumber": 0,
- "type": "string",
- "subType": "string",
- "status": 0,
- "nickname": "string",
- "person": {
- "id": 0,
- "name": "string",
- "tradeName": "string",
- "document": "string",
- "type": "string",
- "status": 0
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}Retorna os dados públicos de uma conta filha do BaaS da credencial autenticada. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
| id required | integer <int64> Identificador interno da conta filha. |
{- "data": {
- "id": 0,
- "accountNumber": 0,
- "branchNumber": 0,
- "type": "string",
- "subType": "string",
- "status": 0,
- "nickname": "string",
- "person": {
- "id": 0,
- "name": "string",
- "tradeName": "string",
- "document": "string",
- "type": "string",
- "status": 0
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
}| event_date_start required | string <date-time> Data inicial do período de consulta (ISO 8601). |
| event_date_end required | string <date-time> Data final do período de consulta (ISO 8601). |
| page_offset | integer >= 0 Default: 0 Posição inicial da paginação. |
| page_limit | integer [ 1 .. 100 ] Default: 10 Quantidade máxima de itens por página. |
| sort_by | string Default: "EVENT_DATE" Enum: "EVENT_DATE" "AMOUNT" Campo utilizado para ordenar os dados. |
| sort_order | string Default: "ASC" Enum: "ASC" "DESC" Direção da ordenação. |
| filter | string Filtra transações pelo documento do pagador ou recebedor. |
| x-account-id | integer <int64> Identificador interno da conta filha que será operada. Obrigatório quando o token foi emitido por uma credencial BaaS ( |
{- "meta": {
- "total": 100,
- "limit": 10,
- "offset": 1
}, - "data": [
- {
- "eventDate": "2019-08-24T14:15:22Z",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "status": "CANCELED",
- "endToEndId": "string",
- "txId": "string",
- "creditDebitType": "CREDIT",
- "transactionType": "PIX",
- "transactionAmount": {
- "currency": "BRL",
- "available": 0.1
}
}
]
}| transactionId required | number ID da transação. |
| x-account-id | integer <int64> Identificador interno da conta filha que será operada. Obrigatório quando o token foi emitido por uma credencial BaaS ( |
[- {
- "eventDate": "2019-08-24T14:15:22Z",
- "id": 0,
- "idempotencyKey": "string",
- "endToEndId": "string",
- "txId": "string",
- "status": "CANCELED",
- "transactionType": "PIX",
- "localInstrument": "MANU",
- "debtorAccount": {
- "ispb": "string",
- "issuer": "string",
- "number": "string",
- "accountType": "SLRY",
- "document": "string",
- "name": "string"
}, - "creditorAccount": {
- "ispb": "string",
- "issuer": "string",
- "number": "string",
- "accountType": "SLRY",
- "document": "string",
- "name": "string"
}, - "creditDebitType": "CREDIT",
- "payment": {
- "currency": "BRL",
- "amount": 0.1
}, - "refunds": [
- {
- "endToEndId": "string",
- "status": "CANCELED",
- "errorCode": "AB03",
- "pixRefundAmount": {
- "currency": "BRL",
- "amount": 0.1
}
}
], - "remittanceInformation": "string",
- "errorCode": "AB03",
- "createdAt": "2019-08-24T14:15:22Z"
}
]| x-account-id | integer <int64> Identificador interno da conta filha que será operada. Obrigatório quando o token foi emitido por uma credencial BaaS ( |
{- "data": [
- {
- "eventDate": "2019-08-24T14:15:22Z",
- "balanceAmount": {
- "currency": "BRL",
- "available": 0.1,
- "blocked": 0.1,
- "overdraft": 0.1
}
}
]
}Este endpoint retorna dados consolidados de extrato com base no período e no agrupamento informados. Validações aplicadas:
MONTH.DAY.MONTH.DAY.| x-account-id | integer <int64> Identificador interno da conta filha que será operada. Obrigatório quando o token foi emitido por uma credencial BaaS ( |
| groupBy required | any Value: "DAY" |
| initialDate required | string <date> Formato: YYYY-MM-DD |
| finalDate required | string <date> Formato: YYYY-MM-DD |
{- "groupBy": "DAY",
- "initialDate": "2025-05-01",
- "finalDate": "2025-05-03"
}{- "data": [
- {
- "periodDate": "2025-01",
- "movementCount": 19,
- "creditAmount": 3678.45,
- "debitAmount": -1456.78,
- "diffAmount": 2221.67,
- "initialBalance": 2089.97,
- "finalBalance": 4311.64
}, - {
- "periodDate": "2025-02",
- "movementCount": 49,
- "creditAmount": 0,
- "debitAmount": -1058.67,
- "diffAmount": -1058.67,
- "initialBalance": 4311.64,
- "finalBalance": 3252.97
}, - {
- "periodDate": "2025-03",
- "movementCount": 7,
- "creditAmount": 1253.45,
- "debitAmount": -1000,
- "diffAmount": 253.45,
- "initialBalance": 3252.97,
- "finalBalance": 3506.42
}
]
}Este endpoint retorna dados consolidados de extrato agrupados por hora para uma data específica. A data informada não pode ser posterior à data atual.
| x-account-id | integer <int64> Identificador interno da conta filha que será operada. Obrigatório quando o token foi emitido por uma credencial BaaS ( |
| date required | string <date> Formato: YYYY-MM-DD |
{- "date": "2025-05-01"
}{- "data": [
- {
- "periodDate": "2025-05-01 10:00:00",
- "movementCount": 3,
- "creditAmount": 100,
- "debitAmount": 0,
- "diffAmount": 100,
- "initialBalance": 2165.09,
- "finalBalance": 2265.09
}
]
}Os endpoints de onboardings permitem criar processos de abertura de conta, enviar documentos de identificação e acompanhar o status no contexto de uma credencial BaaS.
Cria um novo processo de abertura de conta vinculado ao BaaS da credencial autenticada. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
O onboarding é criado com status Aguardando aprovação (1). A análise e aprovação são realizadas pelo time operacional da instituição.
A funcionalidade depende da preferência ENABLE_ONBOARDING_API_ENDPOINT estar habilitada no ambiente.
| accountType | string Default: "NATURAL_PERSON" Value: "NATURAL_PERSON" |
required | object (BaasOnboardingPersonInput) |
{- "accountType": "NATURAL_PERSON",
- "person": {
- "name": "João da Silva Santos",
- "document": "12345678901",
- "phone": "11987654321",
- "address": {
- "zipCode": "01310100",
- "address": "Avenida Paulista",
- "number": "1578",
- "complement": "Apto 101",
- "district": "Bela Vista"
}
}
}{- "message": "Onboarding created successfully",
- "id": "4fdd34d2-e9fa-4bb5-bfeb-84281f77f19a",
- "status": 1
}Envia documentos de identificação e selfie para um onboarding previamente criado. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
Tipos aceitos:
FRONT: frente do documentoBACK: verso do documentoSELFIE: selfie do titularO upload só é permitido enquanto o onboarding estiver com status Pendente (0) ou Aguardando aprovação (1). Arquivos devem estar em JPG ou PNG, com tamanho máximo de 10 MB.
A funcionalidade depende da preferência ENABLE_ONBOARDING_API_ENDPOINT estar habilitada no ambiente.
| id required | string <uuid> Identificador do onboarding. |
| type required | string Enum: "FRONT" "BACK" "SELFIE" Tipo da imagem enviada. |
| file required | string <binary> Arquivo de imagem (JPG ou PNG, máximo 10 MB). |
{ "type": "FRONT", "file": "(binary)" }
{- "image": {
- "type": "FRONT",
}
}Lista os processos de abertura de conta vinculados ao BaaS da credencial autenticada. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
| page | integer >= 1 Default: 1 Número da página para paginação. |
| perPage | integer [ 1 .. 100 ] Default: 20 Quantidade máxima de itens por página. |
| status | integer Enum: 0 1 2 3 4 Status do onboarding. Onboardings removidos não são retornados. |
| accountType | string Enum: "NATURAL_PERSON" "LEGAL_PERSON" "SALARY_ACCOUNT" Tipo de conta solicitada no onboarding. |
| document | string Documento da pessoa ou empresa informada no onboarding. |
| createdAtStart | string <date-time> Data inicial de criação do onboarding (ISO 8601). |
| createdAtEnd | string <date-time> Data final de criação do onboarding (ISO 8601). |
{- "meta": {
- "total": 100,
- "limit": 10,
- "offset": 1
}, - "data": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "accountType": "NATURAL_PERSON",
- "status": 0,
- "person": {
- "name": "string",
- "tradeName": "string",
- "document": "string",
- "phone": "string"
}, - "company": {
- "name": "string",
- "tradeName": "string",
- "document": "string",
- "phone": "string"
}, - "address": {
- "zipCode": "string",
- "address": "string",
- "number": "string",
- "complement": "string",
- "district": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}Retorna os dados públicos de um processo de onboarding vinculado ao BaaS da credencial autenticada. Este endpoint é exclusivo para credenciais BaaS e não exige o cabeçalho x-account-id.
| id required | string <uuid> Identificador do onboarding. |