From ae373b660557e856ed9d004370edb06de249ef44 Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 17:43:49 -0300 Subject: [PATCH 1/7] feat(Accounts): EOF-1245 - Realizar ajuste no Path do endpoint reserved_balances --- ...ntsGetAccountsAccountIdBalances_v2.5.0.csv | 2 +- ...ntsAccountIdTransactionsCurrent_v2.5.0.csv | 11 +- ...etAccountsAccountIdTransactions_v2.5.0.csv | 11 +- swagger-apis/accounts/2.5.0-beta.2.yml | 1699 +++++++++++++++++ swagger-apis/accounts/index.html | 3 +- 5 files changed, 1710 insertions(+), 16 deletions(-) create mode 100644 swagger-apis/accounts/2.5.0-beta.2.yml diff --git a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv index 77c4ef180..3f3e3dcfe 100644 --- a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv @@ -20,7 +20,7 @@ Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimai De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. ";Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2021-05-21T08:30:00Z; /data/hasReservedBalance;hasReservedBalance;"Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. -Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` +Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. diff --git a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv index 2e0ce25c2..7ec0e8cac 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv @@ -66,16 +66,13 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). - -[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. -";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. -";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. +";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv index 2e0ce25c2..7ec0e8cac 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv @@ -66,16 +66,13 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). - -[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. -";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. -";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. +";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/swagger-apis/accounts/2.5.0-beta.2.yml b/swagger-apis/accounts/2.5.0-beta.2.yml new file mode 100644 index 000000000..5ef91bf94 --- /dev/null +++ b/swagger-apis/accounts/2.5.0-beta.2.yml @@ -0,0 +1,1699 @@ +openapi: 3.0.0 +info: + title: API Accounts - Open Finance Brasil + description: | + API de contas de depósito à vista, contas de poupança e contas pré-pagas do Open Finance Brasil – Fase 2. + API que retorna informações de contas de depósito à vista, contas de poupança e contas de pagamento pré-pagas mantidas nas instituições transmissoras por seus clientes, + incluindo dados de identificação da conta, saldos, limites e transações.\ + Não possui segregação entre pessoa natural e pessoa jurídica.\ + Requer consentimento do cliente para todos os `endpoints`. + + # Orientações + A `Role` do diretório de participantes relacionada à presente API é a `DADOS`.\ + Para todos os `endpoints` desta API é previsto o envio de um `token` através do header `Authorization`.\ + Este token deverá estar relacionado ao consentimento (`consentId`) mantido na instituição transmissora dos dados, o qual permitirá a pesquisa e retorno, na API em questão, dos + dados relacionados ao `consentId` específico relacionado.\ + Os dados serão devolvidos na consulta desde que o `consentId` relacionado corresponda a um consentimento válido e com o status `AUTHORISED`.\ + É também necessário que o recurso em questão (conta, contrato, etc) esteja disponível na instituição transmissora (ou seja, sem boqueios de qualquer natureza e com todas as autorizações/consentimentos já autorizados).\ + Além disso as `permissions` necessárias deverão ter sido solicitadas quando da criação do consentimento relacionado (`consentId`).\ + Relacionamos a seguir as `permissions` necessárias para a consulta de dados em cada `endpoint` da presente API. + + ## Permissions necessárias para a API Accounts + + Para cada um dos paths desta API, além dos escopos (`scopes`) indicados existem `permissions` que deverão ser observadas: + + ### `/accounts` + - permissions: + - GET: **ACCOUNTS_READ** + ### `/accounts/{accountId}` + - permissions: + - GET: **ACCOUNTS_READ** + ### `/accounts/{accountId}/balances` + - permissions: + - GET: **ACCOUNTS_BALANCES_READ** + ### `/accounts/{accountId}/transactions` + - permissions: + - GET: **ACCOUNTS_TRANSACTIONS_READ** + ### `/accounts/{accountId}/transactions-current` + - permissions: + - GET: **ACCOUNTS_TRANSACTIONS_READ** + ### `/accounts/{accountId}/overdraft-limits` + - permissions: + - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** + ### `/accounts/{accountId}/reserved-balances` + - permissions: + - GET: **ACCOUNTS_BALANCES_READ** + + ## Data de imutabilidade por tipo de transação​ + O identificador de transações de contas é de envio obrigatório no Open Finance Brasil. De acordo com o tipo da transação deve haver o envio de um identificador único, estável e imutável em D0 ou D+1, conforme tabela abaixo + ``` + |---------------------------------------|-------------------------|-----------------------| + | Tipo de Transação | Data da Obrigatoriedade | Data da Imutabilidade | + |---------------------------------------|-------------------------|-----------------------| + | TED | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | PIX | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | TRANSFERENCIA MESMA INSTITUIÇÃO (TEF) | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | TARIFA SERVIÇOS AVULSOS | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | FOLHA DE PAGAMENTO | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | DOC | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | BOLETO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | CONVÊNIO ARRECADAÇÃO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | PACOTE TARIFA SERVIÇOS | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | DEPÓSITO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | SAQUE | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | CARTÃO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | ENCARGOS JUROS CHEQUE ESPECIAL | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | RENDIMENTO APLICAÇÃO FINANCEIRA | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | PORTABILIDADE SALÁRIO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | RESGATE APLICAÇÃO FINANCEIRA | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | OPERAÇÃO DE CRÉDITO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | OUTROS | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + ``` + + Para consultar as regras aplicáveis ao comportamento do transacionID de acordo com o status da transação, consultar a página [Orientações - Contas](https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/193658890) + version: 2.5.0-beta.2 + license: + name: Apache 2.0 + url: 'https://www.apache.org/licenses/LICENSE-2.0' + contact: + name: Governança do Open Finance Brasil – Especificações + email: gt-interfaces@openbankingbr.org + url: 'https://openbanking-brasil.github.io/areadesenvolvedor/' +servers: + - url: 'https://api.banco.com.br/open-banking/accounts/v2' + description: Servidor de Produção + - url: 'https://apih.banco.com.br/open-banking/accounts/v2' + description: Servidor de Homologação +tags: + - name: Accounts + description: Operações para listagem das informações da Conta do Cliente +paths: + /accounts: + get: + tags: + - Accounts + summary: Obtém a lista de contas consentidas pelo cliente. + operationId: accountsGetAccounts + description: 'Método para obter a lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento.' + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/accountType' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountList' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}': + get: + tags: + - Accounts + summary: Obtém os dados de identificação da conta identificada por accountId. + description: 'Método para obter os dados de identificação da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' + operationId: accountsGetAccountsAccountId + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountIdentification' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/balances': + get: + tags: + - Accounts + summary: Obtém os saldos da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdBalances + description: 'Método para obter os saldos da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountBalances' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/transactions': + get: + tags: + - Accounts + summary: Obtém a lista de transações da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdTransactions + description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 12 meses no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/fromBookingDate' + - $ref: '#/components/parameters/toBookingDate' + - $ref: '#/components/parameters/creditDebitIndicator' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountTransactions' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/transactions-current': + get: + tags: + - Accounts + summary: Obtém a lista de transações recentes (últimos 7 dias) da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdTransactionsCurrent + description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 7 dias no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/fromBookingDateMaxLimited' + - $ref: '#/components/parameters/toBookingDateMaxLimited' + - $ref: '#/components/parameters/creditDebitIndicator' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountTransactions' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/overdraft-limits': + get: + tags: + - Accounts + summary: Obtém os limites da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdOverdraftLimits + description: Método para obter os limites da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora. Para as instituições financeiras transmissoras que possuam contas sem limites associados devem retornar HTTP Status 200 com o objeto “data” vazio, sem nenhum atributo interno. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountOverdraftLimits' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/reserved-balances': + get: + tags: + - Accounts + summary: Obtém os saldos reservados em produtos caixinhas/reserva. + operationId: accountsGetAccountsAccountIdReservedBalances + description: Método para obter os saldos reservados em produtos caixinhas/reserva. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountReservedBalances' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts +components: + headers: + X-V: + description: | + Cabeçalho que indica a versão implementada da API pela instituição. Deve ser preenchido de forma completa, por exemplo: x-v: 1.0.2 + required: true + schema: + $ref: '#/components/schemas/X-V' + schemas: + AccountBalancesDataAutomaticallyInvestedAmount: + type: object + description: Saldo disponível com aplicação automática - corresponde a soma do saldo disponível acrescido do valor obtido a partir da aplicação automática. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^-?\d{1,15}\.\d{2,4}$' + maxLength: 21 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataOverdraftContractedLimit: + type: object + description: Valor do limite contratado do cheque especial. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataOverdraftUsedLimit: + type: object + description: Valor utilizado total do limite do cheque especial e o adiantamento a depositante. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataUnarrangedOverdraftAmount: + type: object + description: Valor de operação contratada em caráter emergencial para cobertura de saldo devedor em conta de depósitos à vista e de excesso sobre o limite pactuado de cheque especial. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesDataBlockedAmount: + type: object + description: 'Saldo bloqueado, não disponível para utilização imediata, por motivo de bloqueio apresentado para o cliente nos canais eletrônicos. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais.' + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesDataAvailableAmount: + type: object + description: | + Saldo disponível para utilização imediata. Não considera cheque especial, investimentos automáticos atrelados a conta e nem reserva de saldo. + Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesData: + type: object + description: | + Conjunto de informações das Contas de: depósito à vista, poupança e de pagamento pré-paga + required: + - availableAmount + - blockedAmount + - automaticallyInvestedAmount + - updateDateTime + properties: + availableAmount: + $ref: '#/components/schemas/AccountBalancesDataAvailableAmount' + blockedAmount: + $ref: '#/components/schemas/AccountBalancesDataBlockedAmount' + automaticallyInvestedAmount: + $ref: '#/components/schemas/AccountBalancesDataAutomaticallyInvestedAmount' + updateDateTime: + type: string + format: date-time + maxLength: 20 + pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' + example: '2021-05-21T08:30:00Z' + description: | + Data e hora da última atualização do saldo. É esperado que a instituição informe a última vez que capturou o saldo para compartilhamento no Open Finance. Dessa forma, é possível que: + - Caso a instituição capture dados de forma síncrona essa informação seja de poucos momentos; + - Caso a instituição capture dados de forma assíncrona essa informação seja de horas ou dias no passado; + - Quando não existente uma data vinculada especificamente ao bloco, se assume a data e hora de atualização do cadastro como um todo. + + De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. + hasReservedBalance: + type: boolean + description: | + Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` + + [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. + Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. + Produtos de investimentos devem ser reportados nas APIs de Investimentos. + example: true + AccountReservedBalancesData: + type: array + description: Lista de caixinhas/reservas + minItems: 0 + items: + type: object + required: + - reservedIndentification + - availableAmount + properties: + reservedName: + type: string + description: Nome dado pelo usuário para a reserva + pattern: '^[^\s][\w\W\s]*[^\s]$' + maxLength: 248 + minLength: 5 + example: Caixinha Paras Férias + reservedIndentification: + type: string + description: Identificador único da reserva + format: uuid + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + maxLength: 36 + minLength: 1 + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + availableAmount: + type: array + description: Saldo que se encontra disponível na reserva + minLength: 1 + items: + type: object + required: + - amount + - currency + properties: + amount: + type: string + description: Valor relacionado ao objeto. + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + currency: + type: string + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + pattern: '^[A-Z]{3}$' + maxLength: 3 + example: BRL + remuneration: + type: object + description: Remuneração aplicada a reserva + required: + - rateType + - indexer + - calculation + - ratePeriodicity + properties: + preFixedRate: + type: string + description: | + Taxa de remuneração pré fixada para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `postFixedIndexerPercentage` não for preenchido + format: double + pattern: '^\d{1}\.\d{6}$' + minLength: 8 + maxLength: 8 + example: '0.300000' + postFixedIndexerPercentage: + type: string + description: | + Percentual do indexador pós fixado para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `preFixedRate` não for preenchido + format: double + pattern: '^\d{1}\.\d{6}$' + minLength: 8 + maxLength: 8 + example: '0.300000' + rateType: + type: string + description: Tipo da taxa de remuneração (linear ou exponencial) + enum: + - LINEAR + - EXPONENCIAL + example: LINEAR + indexer: + type: string + description: Índice utilizado como referência para remuneração da reserva + enum: + - CDI + - DI + - TR + - IPCA + - IGP_M + - IGP_DI + - INPC + - BCP + - TLC + - SELIC + - PRE_FIXADO + - OUTROS + example: CDI + calculation: + type: string + description: Base de cálculo (dias úteis ou dias corridos) + enum: + - DIAS_UTEIS + - DIAS_CORRIDOS + example: DIAS_UTEIS + ratePeriodicity: + type: string + description: Periodicidade da taxa de remuneração (mensal, anual, diário, semestral) + enum: + - MENSAL + - ANUAL + - DIARIO + - SEMESTRAL + example: MENSAL + indexerAdditionalInfo: + type: string + description: | + Informações adicionais do indexador + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando houver `Outros` no campo `indexer` + pattern: '[\w\W\s]*' + maxLength: 50 + example: Dólar + AccountData: + type: object + required: + - brandName + - companyCnpj + - type + - compeCode + - number + - accountId + properties: + brandName: + type: string + description: 'Nome da Marca reportada pelo participante no Open Finance. Recomenda-se utilizar, sempre que possível, o mesmo nome de marca atribuído no campo do diretório Customer Friendly Server Name (Authorisation Server).' + maxLength: 80 + pattern: '[\w\W\s]*' + example: Organização A + companyCnpj: + type: string + maxLength: 14 + pattern: '^[0-9A-Z]{12}[0-9]{2}$' + description: 'Registro completo do CNPJ da instituição responsável pelo Cadastro - o CNPJ corresponde a representação alfanumérica da inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os caracteres do CNPJ, sem máscara.' + example: '21128159000166' + type: + $ref: '#/components/schemas/EnumAccountType' + compeCode: + type: string + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas).O Compe (Sistema de Compensação de Cheques e Outros Papéis) é um sistema que identifica e processa as compensações bancárias. Ele é representado por um código de três dígitos que serve como identificador de bancos, sendo assim, cada instituição bancária possui um número exclusivo' + pattern: '^\d{3}$' + maxLength: 3 + example: '001' + branchCode: + type: string + description: | + Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de CONTA_PAGAMENTO_PRE_PAGA. + pattern: '^\d{4}$' + maxLength: 4 + example: '6272' + number: + type: string + description: Número da conta + pattern: '^\d{8,20}$' + maxLength: 20 + example: '94088392' + checkDigit: + type: string + description: | + Dígito da conta + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo `type` for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório. + pattern: '[\w\W\s]*' + maxLength: 1 + example: '4' + accountId: + type: string + description: 'Identifica de forma única a conta do cliente, mantendo as regras de imutabilidade dentro da instituição transmissora.' + pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' + maxLength: 100 + minLength: 1 + example: '92792126019929279212650822221989319252576' + AccountIdentificationData: + type: object + description: | + Conjunto dos atributos que caracterizam as Contas de: depósito à vista, poupança e de pagamento pré-paga + required: + - compeCode + - number + - type + - subtype + - currency + properties: + compeCode: + type: string + maxLength: 3 + pattern: '^\d{3}$' + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas). O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' + example: '001' + branchCode: + type: string + maxLength: 4 + pattern: '^\d{4}$' + description: | + Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. + example: '6272' + number: + type: string + maxLength: 20 + pattern: '^\d{8,20}$' + description: | + Número da conta + example: '24550245' + checkDigit: + type: string + maxLength: 1 + pattern: '[\w\W\s]*' + description: | + Dígito da conta. + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório + example: '4' + type: + $ref: '#/components/schemas/EnumAccountType' + subtype: + $ref: '#/components/schemas/EnumAccountSubType' + currency: + type: string + pattern: '^(\w{3}){1}$' + maxLength: 3 + description: | + Moeda referente ao valor da transação, segundo modelo ISO-4217. p.ex. 'BRL' + Todos os saldos informados estão representados com a moeda vigente do Brasil + example: BRL + AccountOverdraftLimitsData: + type: object + description: | + Conjunto de informações da Conta de: depósito à vista + properties: + overdraftContractedLimit: + $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftContractedLimit' + overdraftUsedLimit: + $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftUsedLimit' + unarrangedOverdraftAmount: + $ref: '#/components/schemas/AccountOverdraftLimitsDataUnarrangedOverdraftAmount' + AccountTransactionsData: + type: object + required: + - transactionId + - completedAuthorisedPaymentType + - creditDebitType + - transactionName + - type + - transactionAmount + - transactionDateTime + properties: + transactionId: + type: string + description: | + Código ou identificador único prestado pela instituição que mantém a conta para representar a transação individual. + O ideal é que o `transactionId` seja imutável. + No entanto, o `transactionId` deve obedecer, no mínimo, as regras de imutabilidade propostas conforme tabela “Data de imutabilidade por tipo de transação” presente nas orientações desta API. + maxLength: 100 + minLength: 1 + pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' + example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl + completedAuthorisedPaymentType: + $ref: '#/components/schemas/EnumCompletedAuthorisedPaymentIndicator' + creditDebitType: + $ref: '#/components/schemas/EnumCreditDebitIndicator' + transactionName: + type: string + maxLength: 200 + pattern: '[\w\W\s]*' + description: | + Literal usada na instituição financeira para identificar a transação. + A informação apresentada precisa ser a mesma utilizada nos canais digitais da instituição (assim como o histórico de transações apresentado na tela do aplicativo ou do navegador). + Caso a instituição possua mais de um canal digital, a informação compartilhada deve ser a do canal que apresenta a descrição mais completa possível da transação. + Em casos onde a descrição da transação é apresentada com múltiplas linhas, todas as linhas devem ser enviadas (concatenadas) neste atributo, não sendo obrigatória a concatenação das informações já enviadas em outros atributos (ex: valor, data) do mesmo endpoint. + Adicionalmente, o Banco Central pode determinar o formato de compartilhamento a ser adotado por uma instituição participante específica. + example: Transferencia Enviada Lima Santos + type: + $ref: '#/components/schemas/EnumTransactionTypes' + typeAdditionalInfo: + type: string + pattern: '[\w\W\s]*' + description: | + Informações complementares para tipo de transação. + + [Restrição] Este campo é de envio obrigatório caso o campo `type` seja definido como `OUTROS`. + example: 'APLIC_FINANCEIRA' + transactionAmount: + $ref: '#/components/schemas/AccountTransactionsDataAmount' + transactionDateTime: + type: string + maxLength: 24 + pattern: '(^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)\.(?:[0-9]){3}Z$)' + description: | + Data e hora original da transação que é informada nos canais digitais. Para lançamentos Futuros a data informada deve ser a data prevista de efetivação informada nos canais digitais. Caso a instituição não saiba o horário certo da efetivação, os valores hora, minuto, segundo e milissegundo, podem ser preenchidos com zero. Após a efetivação da transação, o campo deve ser preenchido com a data e a hora da efetivação da transação. + example: '2016-01-29T12:29:03.374Z' + partieCnpjCpf: + type: string + maxLength: 14 + pattern: '^([0-9]{11}|[0-9A-Z]{12}[0-9]{2})$' + description: | + Identificação da pessoa envolvida na transação: pagador ou recebedor (Preencher com o CPF ou CNPJ, sem formatação). Com a IN BCB nº 371, a partir de 02/05/23, o envio das informações de identificação de contraparte tornou-se obrigatória para transações de pagamento. Para maiores detalhes, favor consultar a página `Orientações - Contas`. + + [Restrição] Quando o "type“ for preenchido com valor FOLHA_PAGAMENTO e a transmissora for a responsável pelo pagamento de salário (banco-folha), o partieCnpjCpf informado deve ser do empregador relacionado. + example: '43908445778' + partiePersonType: + $ref: '#/components/schemas/EnumPartiePersonType' + partieCompeCode: + type: string + maxLength: 3 + pattern: '^\d{3}$' + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' + example: '001' + partieBranchCode: + type: string + maxLength: 4 + pattern: '^\d{4}$' + description: 'Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória)' + example: '6272' + partieNumber: + type: string + maxLength: 20 + pattern: '^\d{8,20}$' + description: Número da conta da pessoa envolvida na transação + example: '67890854360' + partieCheckDigit: + type: string + maxLength: 1 + pattern: '[\w\W\s]*' + description: Dígito da conta da pessoa envolvida na transação + example: '4' + codeISPB: + type: string + pattern: '^\d{8}$' + description: | + Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. + + Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: + - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. + example: '00300300' + AccountTransactionsDataAmount: + type: object + description: Valor da transação. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + EnumAccountSubType: + type: string + enum: + - INDIVIDUAL + - CONJUNTA_SIMPLES + - CONJUNTA_SOLIDARIA + description: | + Subtipo de conta (vide Enum): + Conta individual - possui um único titular + Conta conjunta simples - onde as movimentações financeiras só podem serem realizadas mediante autorização de TODOS os correntistas da conta. + Conta conjunta solidária - é a modalidade cujos titulares podem realizar movimentações de forma isolada, isto é, sem que seja necessária a autorização dos demais titulares + example: INDIVIDUAL + EnumAccountType: + type: string + enum: + - CONTA_DEPOSITO_A_VISTA + - CONTA_POUPANCA + - CONTA_PAGAMENTO_PRE_PAGA + description: | + Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum + Conta de depósito à vista ou Conta corrente - é o tipo mais comum. Nela, o dinheiro fica à sua disposição para ser sacado a qualquer momento. Essa conta não gera rendimentos para o depositante + Conta poupança - foi criada para estimular as pessoas a pouparem. O dinheiro que ficar na conta por trinta dias passa a gerar rendimentos, com isenção de imposto de renda para quem declara. Ou seja, o dinheiro “cresce” (rende) enquanto ficar guardado na conta. Cada depósito terá rendimentos de mês em mês, sempre no dia do mês em que o dinheiro tiver sido depositado + Conta de pagamento pré-paga: segundo CIRCULAR Nº 3.680, BCB de 2013, é a 'destinada à execução de transações de pagamento em moeda eletrônica realizadas com base em fundos denominados em reais previamente aportados' + example: CONTA_DEPOSITO_A_VISTA + EnumCompletedAuthorisedPaymentIndicator: + type: string + description: | + Indicador da transação: + - Transação efetivada: a transação atinge esse status quando o `transactionId` torna-se imutável; + - Lançamento futuro: a transação será efetivada em momento futuro, ou seja, o `transactionId` pode mudar; + - Transação processando: a transação está em processamento, ou seja, o `transactionId` pode mudar. + enum: + - TRANSACAO_EFETIVADA + - LANCAMENTO_FUTURO + - TRANSACAO_PROCESSANDO + example: TRANSACAO_EFETIVADA + EnumCreditDebitIndicator: + type: string + description: | + Indicador do tipo de lançamento: + Débito (no extrato) Em um extrato bancário, os débitos, marcados com a letra “D” ao lado do valor registrado, informam as saídas de dinheiro na conta-corrente. + Crédito (no extrato) Em um extrato bancário, os créditos, marcados com a letra “C” ao lado do valor registrado, informam as entradas de dinheiro na conta-corrente. + enum: + - CREDITO + - DEBITO + example: DEBITO + EnumPartiePersonType: + type: string + enum: + - PESSOA_NATURAL + - PESSOA_JURIDICA + example: PESSOA_NATURAL + description: | + Identificação do Tipo de Pessoa da pessoa envolvida na transação. + Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. + Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. + EnumTransactionTypes: + type: string + description: | + O campo deve classificar a transação em um dos tipos descritos. + O transmissor deve classificar as transações disponíveis associando-a a um dos itens do Enum listado neste campo. + A opção OUTROS só deve ser utilizada para os casos em que de fato a transação compartilhada não possa ser classificada como um dos itens deste Enum. + Por exemplo no caso de recebimento de pensão alimentícia. + enum: + - TED + - DOC + - PIX + - TRANSFERENCIA_MESMA_INSTITUICAO + - BOLETO + - CONVENIO_ARRECADACAO + - PACOTE_TARIFA_SERVICOS + - TARIFA_SERVICOS_AVULSOS + - FOLHA_PAGAMENTO + - DEPOSITO + - SAQUE + - CARTAO + - ENCARGOS_JUROS_CHEQUE_ESPECIAL + - RENDIMENTO_APLIC_FINANCEIRA + - PORTABILIDADE_SALARIO + - RESGATE_APLIC_FINANCEIRA + - OPERACAO_CREDITO + - TRANSFERENCIA_SALDO_RESERVADO + - OUTROS + example: PIX + Links: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + last: + type: string + format: url + maxLength: 4048 + description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + LinksAccountId: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + last: + type: string + format: url + maxLength: 4048 + description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + TransactionsLinks: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + Meta: + type: object + description: Meta informações referente à API requisitada. + required: + - totalRecords + - totalPages + - requestDateTime + properties: + totalRecords: + type: integer + format: int32 + description: Número total de registros no resultado + example: 1 + totalPages: + type: integer + format: int32 + description: Número total de páginas no resultado + example: 1 + requestDateTime: + description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' + type: string + maxLength: 20 + format: date-time + example: '2021-05-21T08:30:00Z' + MetaOnlyRequestDateTime: + type: object + description: Meta informações referente à API requisitada. + required: + - requestDateTime + properties: + requestDateTime: + description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' + type: string + maxLength: 20 + format: date-time + example: '2021-05-21T08:30:00Z' + ResponseAccountList: + type: object + required: + - data + - links + - meta + properties: + data: + type: array + description: 'Lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento' + minItems: 0 + items: + $ref: '#/components/schemas/AccountData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountBalances: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountBalancesData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseReservedBalances: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountReservedBalancesData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountIdentification: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountIdentificationData' + links: + $ref: '#/components/schemas/LinksAccountId' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountOverdraftLimits: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountOverdraftLimitsData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountTransactions: + type: object + required: + - data + - links + - meta + properties: + data: + type: array + description: | + Lista dos lançamentos referentes às transações realizadas e de lançamentos futuros para as contas de: depósito à vista, poupança e de pagamento pré-paga + minItems: 0 + items: + $ref: '#/components/schemas/AccountTransactionsData' + links: + $ref: '#/components/schemas/TransactionsLinks' + meta: + $ref: '#/components/schemas/MetaOnlyRequestDateTime' + ResponseErrorMetaSingle: + type: object + required: + - errors + properties: + errors: + type: array + minItems: 1 + maxItems: 13 + items: + type: object + required: + - code + - title + - detail + properties: + code: + description: Código de erro específico do endpoint + type: string + pattern: '[\w\W\s]*' + maxLength: 255 + title: + description: Título legível por humanos deste erro específico + type: string + pattern: '[\w\W\s]*' + maxLength: 255 + detail: + description: Descrição legível por humanos deste erro específico + type: string + pattern: '[\w\W\s]*' + maxLength: 2048 + meta: + $ref: '#/components/schemas/MetaOnlyRequestDateTime' + XFapiInteractionId: + type: string + format: uuid + maxLength: 36 + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + X-V: + type: string + pattern: '^\d+\.\d+\.\d+$' + example: 1.0.0 + parameters: + accountId: + name: accountId + in: path + description: 'Identificador da conta de depósito à vista, de poupança ou de pagamento pré-paga.' + required: true + schema: + type: string + pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' + maxLength: 100 + accountType: + name: accountType + description: 'Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum.' + required: false + in: query + schema: + $ref: '#/components/schemas/EnumAccountType' + Authorization: + name: Authorization + in: header + description: Cabeçalho HTTP padrão. Permite que as credenciais sejam fornecidas dependendo do tipo de recurso solicitado + required: true + schema: + type: string + pattern: '[\w\W\s]*' + maxLength: 2048 + creditDebitIndicator: + name: creditDebitIndicator + description: Indicador do tipo de lançamento + required: false + in: query + schema: + $ref: '#/components/schemas/EnumCreditDebitIndicator' + fromBookingDate: + name: fromBookingDate + description: 'Data inicial de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' + required: false + in: query + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + fromBookingDateMaxLimited: + in: query + name: fromBookingDate + description: | + Data inicial de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). + [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. + Caso não seja informado, deve ser assumido o dia atual. + required: false + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + toBookingDateMaxLimited: + in: query + name: toBookingDate + description: | + Data final de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). + [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. + Caso não seja informado, deve ser assumido o dia atual. + required: false + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + pagination-key: + name: pagination-key + in: query + description: 'Identificador de rechamada, utilizado para evitar a contagem de chamadas ao endpoint durante a paginação.' + schema: + type: string + maxLength: 2048 + pattern: '[\w\W\s]*' + page: + name: page + in: query + description: Número da página que está sendo requisitada (o valor da primeira página é 1). + schema: + type: integer + default: 1 + minimum: 1 + maximum: 2147483647 + format: int32 + pageSize: + name: page-size + in: query + description: Quantidade total de registros por páginas. + schema: + type: integer + default: 25 + minimum: 1 + format: int32 + maximum: 1000 + toBookingDate: + name: toBookingDate + description: 'Data final de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' + required: false + in: query + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + xCustomerUserAgent: + name: x-customer-user-agent + in: header + description: Indica o user-agent que o usuário utiliza. + required: false + schema: + type: string + pattern: '[\w\W\s]*' + minLength: 1 + maxLength: 100 + xFapiAuthDate: + name: x-fapi-auth-date + in: header + description: 'Data em que o usuário logou pela última vez com o receptor. Representada de acordo com a [RFC7231](https://tools.ietf.org/html/rfc7231).Exemplo: Sun, 10 Sep 2017 19:43:31 UTC' + required: false + schema: + type: string + pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$' + minLength: 29 + maxLength: 29 + xFapiCustomerIpAddress: + name: x-fapi-customer-ip-address + in: header + description: O endereço IP do usuário se estiver atualmente logado com o receptor. + required: false + schema: + type: string + pattern: '[\w\W\s]*' + minLength: 1 + maxLength: 100 + xFapiInteractionId: + name: x-fapi-interaction-id + in: header + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + required: true + schema: + type: string + format: uuid + minLength: 1 + maxLength: 36 + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + securitySchemes: + OpenId: + type: openIdConnect + openIdConnectUrl: 'https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration' + OAuth2Security: + type: oauth2 + description: Fluxo OAuth necessário para que a receptora tenha acesso aos dados na instituição transmissora. Requer o processo de redirecionamento e autenticação do usuário a que se referem os dados. + flows: + authorizationCode: + authorizationUrl: 'https://authserver.example/authorization' + tokenUrl: 'https://authserver.example/token' + scopes: + accounts: Escopo necessário para acesso à API Accounts. O controle dos endpoints específicos é feito via permissions. + responses: + OKResponseAccountList: + description: Dados de identificação das contas obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountList' + OKResponseAccountIdentification: + description: Dados de identificação da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountIdentification' + OKResponseAccountBalances: + description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountBalances' + OKResponseAccountReservedBalances: + description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseReservedBalances' + OKResponseAccountTransactions: + description: Dados da lista de transações da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountTransactions' + OKResponseAccountOverdraftLimits: + description: Dados de limites da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountOverdraftLimits' + BadRequestMetaSingle: + description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + ForbiddenMetaSingle: + description: O token tem escopo incorreto ou uma política de segurança foi violada + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + GatewayTimeoutMetaSingle: + description: GATEWAY TIMEOUT - A requisição não foi atendida dentro do tempo limite estabelecido + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + InternalServerErrorMetaSingle: + description: Ocorreu um erro no gateway da API ou no microsserviço + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + LockedMetaSingle: + description: Locked + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + MethodNotAllowedMetaSingle: + description: O consumidor tentou acessar o recurso com um método não suportado + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + NotAcceptableMetaSingle: + description: A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8 + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + NotFoundMetaSingle: + description: O recurso solicitado não existe ou não foi implementado + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + TooManyRequestsMetaSingle: + description: 'A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + UnauthorizedMetaSingle: + description: Cabeçalho de autenticação ausente/inválido ou token inválido + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + UnprocessableEntityMetaSingle: + description: 'A sintaxe da requisição esta correta, mas não foi possível processar as instruções presentes.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + DefaultMetaSingle: + description: Erro inesperado. + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + SiteIsOverloadedMetaSingle: + description: 'O site está sobrecarregado e a operação foi recusada, pois foi atingido o limite máximo de TPS global, neste momento.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + diff --git a/swagger-apis/accounts/index.html b/swagger-apis/accounts/index.html index b5a109f85..0fee0000d 100644 --- a/swagger-apis/accounts/index.html +++ b/swagger-apis/accounts/index.html @@ -70,8 +70,9 @@ {"name": "2.4.1", "url": "./2.4.1.yml"}, {"name": "2.4.2", "url": "./2.4.2.yml"}, {"name": "2.5.0-beta.1", "url": "./2.5.0-beta.1.yml"}, + {"name": "2.5.0-beta.2", "url": "./2.5.0-beta.2.yml"}, {"name": "2.5.0-rc.1", "url": "./2.5.0-rc.1.yml"}], - "urls.primaryName": "2.5.0-rc.1", // default spec + "urls.primaryName": "2.5.0-beta.2", // default spec dom_id: '#swagger-ui', deepLinking: true, supportedSubmitMethods:[], From cd241e68223b75571ab12889a459d04c729e54ab Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 17:48:49 -0300 Subject: [PATCH 2/7] feat(Accounts): EOF-1245 - Ajuste no Path do endpoint reserved_balances --- ...GetAccountsAccountIdTransactionsCurrent_v2.5.0.csv | 11 +++++++---- ...ccountsGetAccountsAccountIdTransactions_v2.5.0.csv | 11 +++++++---- swagger-apis/accounts/2.5.0-rc.1.yml | 6 +++--- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv index 7ec0e8cac..2e0ce25c2 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv @@ -66,13 +66,16 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). + +[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. +";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. -";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. +";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv index 7ec0e8cac..2e0ce25c2 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv @@ -66,13 +66,16 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). + +[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. +";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. -";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. +";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/swagger-apis/accounts/2.5.0-rc.1.yml b/swagger-apis/accounts/2.5.0-rc.1.yml index 0c37a8c9a..19c88cfa6 100644 --- a/swagger-apis/accounts/2.5.0-rc.1.yml +++ b/swagger-apis/accounts/2.5.0-rc.1.yml @@ -40,7 +40,7 @@ info: ### `/accounts/{accountId}/overdraft-limits` - permissions: - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** - ### `/accounts/{accountId}/reserved_balances` + ### `/accounts/{accountId}/reserved-balances` - permissions: - GET: **ACCOUNTS_BALANCES_READ** @@ -415,7 +415,7 @@ paths: OAuth2Security: - 'consent:consentId' - accounts - '/accounts/{accountId}/reserved_balances': + '/accounts/{accountId}/reserved-balances': get: tags: - Accounts @@ -636,7 +636,7 @@ components: type: boolean description: | Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. - Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. From 2531cebdc5cb75336f93c718226636316ad8a769 Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 17:58:24 -0300 Subject: [PATCH 3/7] Revert "feat(Accounts): EOF-1245 - Ajuste no Path do endpoint reserved_balances" This reverts commit cd241e68223b75571ab12889a459d04c729e54ab. --- ...GetAccountsAccountIdTransactionsCurrent_v2.5.0.csv | 11 ++++------- ...ccountsGetAccountsAccountIdTransactions_v2.5.0.csv | 11 ++++------- swagger-apis/accounts/2.5.0-rc.1.yml | 6 +++--- 3 files changed, 11 insertions(+), 17 deletions(-) diff --git a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv index 2e0ce25c2..7ec0e8cac 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv @@ -66,16 +66,13 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). - -[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. -";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. -";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. +";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv index 2e0ce25c2..7ec0e8cac 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv @@ -66,16 +66,13 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). - -[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. -";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. -";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. +";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/swagger-apis/accounts/2.5.0-rc.1.yml b/swagger-apis/accounts/2.5.0-rc.1.yml index 19c88cfa6..0c37a8c9a 100644 --- a/swagger-apis/accounts/2.5.0-rc.1.yml +++ b/swagger-apis/accounts/2.5.0-rc.1.yml @@ -40,7 +40,7 @@ info: ### `/accounts/{accountId}/overdraft-limits` - permissions: - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** - ### `/accounts/{accountId}/reserved-balances` + ### `/accounts/{accountId}/reserved_balances` - permissions: - GET: **ACCOUNTS_BALANCES_READ** @@ -415,7 +415,7 @@ paths: OAuth2Security: - 'consent:consentId' - accounts - '/accounts/{accountId}/reserved-balances': + '/accounts/{accountId}/reserved_balances': get: tags: - Accounts @@ -636,7 +636,7 @@ components: type: boolean description: | Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. - Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. From c237f73042f162f5f628b765ed71891fe5ee6e1f Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 18:06:37 -0300 Subject: [PATCH 4/7] Revert "feat(Accounts): EOF-1245 - Realizar ajuste no Path do endpoint reserved_balances" This reverts commit ae373b660557e856ed9d004370edb06de249ef44. --- ...ntsGetAccountsAccountIdBalances_v2.5.0.csv | 2 +- ...ntsAccountIdTransactionsCurrent_v2.5.0.csv | 11 +- ...etAccountsAccountIdTransactions_v2.5.0.csv | 11 +- swagger-apis/accounts/2.5.0-beta.2.yml | 1699 ----------------- swagger-apis/accounts/index.html | 3 +- 5 files changed, 16 insertions(+), 1710 deletions(-) delete mode 100644 swagger-apis/accounts/2.5.0-beta.2.yml diff --git a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv index 3f3e3dcfe..77c4ef180 100644 --- a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv @@ -20,7 +20,7 @@ Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimai De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. ";Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2021-05-21T08:30:00Z; /data/hasReservedBalance;hasReservedBalance;"Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. -Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` +Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. diff --git a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv index 7ec0e8cac..2e0ce25c2 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactionsCurrent_v2.5.0.csv @@ -66,13 +66,16 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). + +[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. +";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. -";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. +";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv index 7ec0e8cac..2e0ce25c2 100644 --- a/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdTransactions_v2.5.0.csv @@ -66,13 +66,16 @@ Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. ";Texto;;Opcional;;"PESSOA_NATURAL PESSOA_JURIDICA";0;1;"";Não permitido;string;PESSOA_NATURAL; -/data/partieCompeCode;partieCompeCode;Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).;Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; +/data/partieCompeCode;partieCompeCode;"Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe). + +[RESTRIÇÃO] É de preenchimento obrigatório quando a instituição possuir o número-código. +";Texto;3;Opcional;^\d{3}$;;0;1;"";Não permitido;string;001; /data/partieBranchCode;partieBranchCode;Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória);Texto;4;Opcional;^\d{4}$;;0;1;"";Não permitido;string;6272; /data/partieNumber;partieNumber;Número da conta da pessoa envolvida na transação;Texto;20;Opcional;^\d{8,20}$;;0;1;"";Não permitido;string;67890854360; /data/partieCheckDigit;partieCheckDigit;Dígito da conta da pessoa envolvida na transação;Texto;1;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;4; -/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. +/data/codeISPB;codeISPB;"Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. -";Texto;;Opcional;^\d{8}$;;0;1;"";Não permitido;string;00300300; + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. [RESTRIÇÃO] É de preenchimento obrigatório quando existir informação de contraparte. +";Texto;;Opcional;^[0-9A-Z]{8}$;;0;1;"";Não permitido;string;00300300; diff --git a/swagger-apis/accounts/2.5.0-beta.2.yml b/swagger-apis/accounts/2.5.0-beta.2.yml deleted file mode 100644 index 5ef91bf94..000000000 --- a/swagger-apis/accounts/2.5.0-beta.2.yml +++ /dev/null @@ -1,1699 +0,0 @@ -openapi: 3.0.0 -info: - title: API Accounts - Open Finance Brasil - description: | - API de contas de depósito à vista, contas de poupança e contas pré-pagas do Open Finance Brasil – Fase 2. - API que retorna informações de contas de depósito à vista, contas de poupança e contas de pagamento pré-pagas mantidas nas instituições transmissoras por seus clientes, - incluindo dados de identificação da conta, saldos, limites e transações.\ - Não possui segregação entre pessoa natural e pessoa jurídica.\ - Requer consentimento do cliente para todos os `endpoints`. - - # Orientações - A `Role` do diretório de participantes relacionada à presente API é a `DADOS`.\ - Para todos os `endpoints` desta API é previsto o envio de um `token` através do header `Authorization`.\ - Este token deverá estar relacionado ao consentimento (`consentId`) mantido na instituição transmissora dos dados, o qual permitirá a pesquisa e retorno, na API em questão, dos - dados relacionados ao `consentId` específico relacionado.\ - Os dados serão devolvidos na consulta desde que o `consentId` relacionado corresponda a um consentimento válido e com o status `AUTHORISED`.\ - É também necessário que o recurso em questão (conta, contrato, etc) esteja disponível na instituição transmissora (ou seja, sem boqueios de qualquer natureza e com todas as autorizações/consentimentos já autorizados).\ - Além disso as `permissions` necessárias deverão ter sido solicitadas quando da criação do consentimento relacionado (`consentId`).\ - Relacionamos a seguir as `permissions` necessárias para a consulta de dados em cada `endpoint` da presente API. - - ## Permissions necessárias para a API Accounts - - Para cada um dos paths desta API, além dos escopos (`scopes`) indicados existem `permissions` que deverão ser observadas: - - ### `/accounts` - - permissions: - - GET: **ACCOUNTS_READ** - ### `/accounts/{accountId}` - - permissions: - - GET: **ACCOUNTS_READ** - ### `/accounts/{accountId}/balances` - - permissions: - - GET: **ACCOUNTS_BALANCES_READ** - ### `/accounts/{accountId}/transactions` - - permissions: - - GET: **ACCOUNTS_TRANSACTIONS_READ** - ### `/accounts/{accountId}/transactions-current` - - permissions: - - GET: **ACCOUNTS_TRANSACTIONS_READ** - ### `/accounts/{accountId}/overdraft-limits` - - permissions: - - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** - ### `/accounts/{accountId}/reserved-balances` - - permissions: - - GET: **ACCOUNTS_BALANCES_READ** - - ## Data de imutabilidade por tipo de transação​ - O identificador de transações de contas é de envio obrigatório no Open Finance Brasil. De acordo com o tipo da transação deve haver o envio de um identificador único, estável e imutável em D0 ou D+1, conforme tabela abaixo - ``` - |---------------------------------------|-------------------------|-----------------------| - | Tipo de Transação | Data da Obrigatoriedade | Data da Imutabilidade | - |---------------------------------------|-------------------------|-----------------------| - | TED | DO | DO | - |---------------------------------------|-------------------------|-----------------------| - | PIX | DO | DO | - |---------------------------------------|-------------------------|-----------------------| - | TRANSFERENCIA MESMA INSTITUIÇÃO (TEF) | DO | DO | - |---------------------------------------|-------------------------|-----------------------| - | TARIFA SERVIÇOS AVULSOS | DO | DO | - |---------------------------------------|-------------------------|-----------------------| - | FOLHA DE PAGAMENTO | DO | DO | - |---------------------------------------|-------------------------|-----------------------| - | DOC | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | BOLETO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | CONVÊNIO ARRECADAÇÃO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | PACOTE TARIFA SERVIÇOS | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | DEPÓSITO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | SAQUE | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | CARTÃO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | ENCARGOS JUROS CHEQUE ESPECIAL | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | RENDIMENTO APLICAÇÃO FINANCEIRA | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | PORTABILIDADE SALÁRIO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | RESGATE APLICAÇÃO FINANCEIRA | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | OPERAÇÃO DE CRÉDITO | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - | OUTROS | DO | D+1 | - |---------------------------------------|-------------------------|-----------------------| - ``` - - Para consultar as regras aplicáveis ao comportamento do transacionID de acordo com o status da transação, consultar a página [Orientações - Contas](https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/193658890) - version: 2.5.0-beta.2 - license: - name: Apache 2.0 - url: 'https://www.apache.org/licenses/LICENSE-2.0' - contact: - name: Governança do Open Finance Brasil – Especificações - email: gt-interfaces@openbankingbr.org - url: 'https://openbanking-brasil.github.io/areadesenvolvedor/' -servers: - - url: 'https://api.banco.com.br/open-banking/accounts/v2' - description: Servidor de Produção - - url: 'https://apih.banco.com.br/open-banking/accounts/v2' - description: Servidor de Homologação -tags: - - name: Accounts - description: Operações para listagem das informações da Conta do Cliente -paths: - /accounts: - get: - tags: - - Accounts - summary: Obtém a lista de contas consentidas pelo cliente. - operationId: accountsGetAccounts - description: 'Método para obter a lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento.' - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/page' - - $ref: '#/components/parameters/pageSize' - - $ref: '#/components/parameters/accountType' - - $ref: '#/components/parameters/pagination-key' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountList' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}': - get: - tags: - - Accounts - summary: Obtém os dados de identificação da conta identificada por accountId. - description: 'Método para obter os dados de identificação da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' - operationId: accountsGetAccountsAccountId - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountIdentification' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}/balances': - get: - tags: - - Accounts - summary: Obtém os saldos da conta identificada por accountId. - operationId: accountsGetAccountsAccountIdBalances - description: 'Método para obter os saldos da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountBalances' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}/transactions': - get: - tags: - - Accounts - summary: Obtém a lista de transações da conta identificada por accountId. - operationId: accountsGetAccountsAccountIdTransactions - description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 12 meses no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - - $ref: '#/components/parameters/page' - - $ref: '#/components/parameters/pageSize' - - $ref: '#/components/parameters/fromBookingDate' - - $ref: '#/components/parameters/toBookingDate' - - $ref: '#/components/parameters/creditDebitIndicator' - - $ref: '#/components/parameters/pagination-key' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountTransactions' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}/transactions-current': - get: - tags: - - Accounts - summary: Obtém a lista de transações recentes (últimos 7 dias) da conta identificada por accountId. - operationId: accountsGetAccountsAccountIdTransactionsCurrent - description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 7 dias no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - - $ref: '#/components/parameters/page' - - $ref: '#/components/parameters/pageSize' - - $ref: '#/components/parameters/fromBookingDateMaxLimited' - - $ref: '#/components/parameters/toBookingDateMaxLimited' - - $ref: '#/components/parameters/creditDebitIndicator' - - $ref: '#/components/parameters/pagination-key' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountTransactions' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}/overdraft-limits': - get: - tags: - - Accounts - summary: Obtém os limites da conta identificada por accountId. - operationId: accountsGetAccountsAccountIdOverdraftLimits - description: Método para obter os limites da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora. Para as instituições financeiras transmissoras que possuam contas sem limites associados devem retornar HTTP Status 200 com o objeto “data” vazio, sem nenhum atributo interno. - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountOverdraftLimits' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts - '/accounts/{accountId}/reserved-balances': - get: - tags: - - Accounts - summary: Obtém os saldos reservados em produtos caixinhas/reserva. - operationId: accountsGetAccountsAccountIdReservedBalances - description: Método para obter os saldos reservados em produtos caixinhas/reserva. - parameters: - - $ref: '#/components/parameters/Authorization' - - $ref: '#/components/parameters/xFapiAuthDate' - - $ref: '#/components/parameters/xFapiCustomerIpAddress' - - $ref: '#/components/parameters/xFapiInteractionId' - - $ref: '#/components/parameters/xCustomerUserAgent' - - $ref: '#/components/parameters/accountId' - - $ref: '#/components/parameters/page' - - $ref: '#/components/parameters/pageSize' - responses: - '200': - $ref: '#/components/responses/OKResponseAccountReservedBalances' - '400': - $ref: '#/components/responses/BadRequestMetaSingle' - '401': - $ref: '#/components/responses/UnauthorizedMetaSingle' - '403': - $ref: '#/components/responses/ForbiddenMetaSingle' - '404': - $ref: '#/components/responses/NotFoundMetaSingle' - '405': - $ref: '#/components/responses/MethodNotAllowedMetaSingle' - '406': - $ref: '#/components/responses/NotAcceptableMetaSingle' - '422': - $ref: '#/components/responses/UnprocessableEntityMetaSingle' - '423': - $ref: '#/components/responses/LockedMetaSingle' - '429': - $ref: '#/components/responses/TooManyRequestsMetaSingle' - '500': - $ref: '#/components/responses/InternalServerErrorMetaSingle' - '504': - $ref: '#/components/responses/GatewayTimeoutMetaSingle' - '529': - $ref: '#/components/responses/SiteIsOverloadedMetaSingle' - default: - $ref: '#/components/responses/DefaultMetaSingle' - security: - - OpenId: - - openid - OAuth2Security: - - 'consent:consentId' - - accounts -components: - headers: - X-V: - description: | - Cabeçalho que indica a versão implementada da API pela instituição. Deve ser preenchido de forma completa, por exemplo: x-v: 1.0.2 - required: true - schema: - $ref: '#/components/schemas/X-V' - schemas: - AccountBalancesDataAutomaticallyInvestedAmount: - type: object - description: Saldo disponível com aplicação automática - corresponde a soma do saldo disponível acrescido do valor obtido a partir da aplicação automática. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^-?\d{1,15}\.\d{2,4}$' - maxLength: 21 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountOverdraftLimitsDataOverdraftContractedLimit: - type: object - description: Valor do limite contratado do cheque especial. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountOverdraftLimitsDataOverdraftUsedLimit: - type: object - description: Valor utilizado total do limite do cheque especial e o adiantamento a depositante. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountOverdraftLimitsDataUnarrangedOverdraftAmount: - type: object - description: Valor de operação contratada em caráter emergencial para cobertura de saldo devedor em conta de depósitos à vista e de excesso sobre o limite pactuado de cheque especial. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountBalancesDataBlockedAmount: - type: object - description: 'Saldo bloqueado, não disponível para utilização imediata, por motivo de bloqueio apresentado para o cliente nos canais eletrônicos. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais.' - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountBalancesDataAvailableAmount: - type: object - description: | - Saldo disponível para utilização imediata. Não considera cheque especial, investimentos automáticos atrelados a conta e nem reserva de saldo. - Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - AccountBalancesData: - type: object - description: | - Conjunto de informações das Contas de: depósito à vista, poupança e de pagamento pré-paga - required: - - availableAmount - - blockedAmount - - automaticallyInvestedAmount - - updateDateTime - properties: - availableAmount: - $ref: '#/components/schemas/AccountBalancesDataAvailableAmount' - blockedAmount: - $ref: '#/components/schemas/AccountBalancesDataBlockedAmount' - automaticallyInvestedAmount: - $ref: '#/components/schemas/AccountBalancesDataAutomaticallyInvestedAmount' - updateDateTime: - type: string - format: date-time - maxLength: 20 - pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' - example: '2021-05-21T08:30:00Z' - description: | - Data e hora da última atualização do saldo. É esperado que a instituição informe a última vez que capturou o saldo para compartilhamento no Open Finance. Dessa forma, é possível que: - - Caso a instituição capture dados de forma síncrona essa informação seja de poucos momentos; - - Caso a instituição capture dados de forma assíncrona essa informação seja de horas ou dias no passado; - - Quando não existente uma data vinculada especificamente ao bloco, se assume a data e hora de atualização do cadastro como um todo. - - De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. - hasReservedBalance: - type: boolean - description: | - Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. - Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` - - [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. - Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. - Produtos de investimentos devem ser reportados nas APIs de Investimentos. - example: true - AccountReservedBalancesData: - type: array - description: Lista de caixinhas/reservas - minItems: 0 - items: - type: object - required: - - reservedIndentification - - availableAmount - properties: - reservedName: - type: string - description: Nome dado pelo usuário para a reserva - pattern: '^[^\s][\w\W\s]*[^\s]$' - maxLength: 248 - minLength: 5 - example: Caixinha Paras Férias - reservedIndentification: - type: string - description: Identificador único da reserva - format: uuid - pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' - maxLength: 36 - minLength: 1 - example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 - availableAmount: - type: array - description: Saldo que se encontra disponível na reserva - minLength: 1 - items: - type: object - required: - - amount - - currency - properties: - amount: - type: string - description: Valor relacionado ao objeto. - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - currency: - type: string - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - pattern: '^[A-Z]{3}$' - maxLength: 3 - example: BRL - remuneration: - type: object - description: Remuneração aplicada a reserva - required: - - rateType - - indexer - - calculation - - ratePeriodicity - properties: - preFixedRate: - type: string - description: | - Taxa de remuneração pré fixada para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). - - [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `postFixedIndexerPercentage` não for preenchido - format: double - pattern: '^\d{1}\.\d{6}$' - minLength: 8 - maxLength: 8 - example: '0.300000' - postFixedIndexerPercentage: - type: string - description: | - Percentual do indexador pós fixado para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). - - [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `preFixedRate` não for preenchido - format: double - pattern: '^\d{1}\.\d{6}$' - minLength: 8 - maxLength: 8 - example: '0.300000' - rateType: - type: string - description: Tipo da taxa de remuneração (linear ou exponencial) - enum: - - LINEAR - - EXPONENCIAL - example: LINEAR - indexer: - type: string - description: Índice utilizado como referência para remuneração da reserva - enum: - - CDI - - DI - - TR - - IPCA - - IGP_M - - IGP_DI - - INPC - - BCP - - TLC - - SELIC - - PRE_FIXADO - - OUTROS - example: CDI - calculation: - type: string - description: Base de cálculo (dias úteis ou dias corridos) - enum: - - DIAS_UTEIS - - DIAS_CORRIDOS - example: DIAS_UTEIS - ratePeriodicity: - type: string - description: Periodicidade da taxa de remuneração (mensal, anual, diário, semestral) - enum: - - MENSAL - - ANUAL - - DIARIO - - SEMESTRAL - example: MENSAL - indexerAdditionalInfo: - type: string - description: | - Informações adicionais do indexador - - [Restrição] Campo de preenchimento obrigatório pelas participantes quando houver `Outros` no campo `indexer` - pattern: '[\w\W\s]*' - maxLength: 50 - example: Dólar - AccountData: - type: object - required: - - brandName - - companyCnpj - - type - - compeCode - - number - - accountId - properties: - brandName: - type: string - description: 'Nome da Marca reportada pelo participante no Open Finance. Recomenda-se utilizar, sempre que possível, o mesmo nome de marca atribuído no campo do diretório Customer Friendly Server Name (Authorisation Server).' - maxLength: 80 - pattern: '[\w\W\s]*' - example: Organização A - companyCnpj: - type: string - maxLength: 14 - pattern: '^[0-9A-Z]{12}[0-9]{2}$' - description: 'Registro completo do CNPJ da instituição responsável pelo Cadastro - o CNPJ corresponde a representação alfanumérica da inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os caracteres do CNPJ, sem máscara.' - example: '21128159000166' - type: - $ref: '#/components/schemas/EnumAccountType' - compeCode: - type: string - description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas).O Compe (Sistema de Compensação de Cheques e Outros Papéis) é um sistema que identifica e processa as compensações bancárias. Ele é representado por um código de três dígitos que serve como identificador de bancos, sendo assim, cada instituição bancária possui um número exclusivo' - pattern: '^\d{3}$' - maxLength: 3 - example: '001' - branchCode: - type: string - description: | - Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) - - [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de CONTA_PAGAMENTO_PRE_PAGA. - pattern: '^\d{4}$' - maxLength: 4 - example: '6272' - number: - type: string - description: Número da conta - pattern: '^\d{8,20}$' - maxLength: 20 - example: '94088392' - checkDigit: - type: string - description: | - Dígito da conta - - [Restrição] Obrigatoriamente deve ser preenchido quando o campo `type` for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório. - pattern: '[\w\W\s]*' - maxLength: 1 - example: '4' - accountId: - type: string - description: 'Identifica de forma única a conta do cliente, mantendo as regras de imutabilidade dentro da instituição transmissora.' - pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' - maxLength: 100 - minLength: 1 - example: '92792126019929279212650822221989319252576' - AccountIdentificationData: - type: object - description: | - Conjunto dos atributos que caracterizam as Contas de: depósito à vista, poupança e de pagamento pré-paga - required: - - compeCode - - number - - type - - subtype - - currency - properties: - compeCode: - type: string - maxLength: 3 - pattern: '^\d{3}$' - description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas). O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' - example: '001' - branchCode: - type: string - maxLength: 4 - pattern: '^\d{4}$' - description: | - Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) - - [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. - example: '6272' - number: - type: string - maxLength: 20 - pattern: '^\d{8,20}$' - description: | - Número da conta - example: '24550245' - checkDigit: - type: string - maxLength: 1 - pattern: '[\w\W\s]*' - description: | - Dígito da conta. - - [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório - example: '4' - type: - $ref: '#/components/schemas/EnumAccountType' - subtype: - $ref: '#/components/schemas/EnumAccountSubType' - currency: - type: string - pattern: '^(\w{3}){1}$' - maxLength: 3 - description: | - Moeda referente ao valor da transação, segundo modelo ISO-4217. p.ex. 'BRL' - Todos os saldos informados estão representados com a moeda vigente do Brasil - example: BRL - AccountOverdraftLimitsData: - type: object - description: | - Conjunto de informações da Conta de: depósito à vista - properties: - overdraftContractedLimit: - $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftContractedLimit' - overdraftUsedLimit: - $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftUsedLimit' - unarrangedOverdraftAmount: - $ref: '#/components/schemas/AccountOverdraftLimitsDataUnarrangedOverdraftAmount' - AccountTransactionsData: - type: object - required: - - transactionId - - completedAuthorisedPaymentType - - creditDebitType - - transactionName - - type - - transactionAmount - - transactionDateTime - properties: - transactionId: - type: string - description: | - Código ou identificador único prestado pela instituição que mantém a conta para representar a transação individual. - O ideal é que o `transactionId` seja imutável. - No entanto, o `transactionId` deve obedecer, no mínimo, as regras de imutabilidade propostas conforme tabela “Data de imutabilidade por tipo de transação” presente nas orientações desta API. - maxLength: 100 - minLength: 1 - pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' - example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl - completedAuthorisedPaymentType: - $ref: '#/components/schemas/EnumCompletedAuthorisedPaymentIndicator' - creditDebitType: - $ref: '#/components/schemas/EnumCreditDebitIndicator' - transactionName: - type: string - maxLength: 200 - pattern: '[\w\W\s]*' - description: | - Literal usada na instituição financeira para identificar a transação. - A informação apresentada precisa ser a mesma utilizada nos canais digitais da instituição (assim como o histórico de transações apresentado na tela do aplicativo ou do navegador). - Caso a instituição possua mais de um canal digital, a informação compartilhada deve ser a do canal que apresenta a descrição mais completa possível da transação. - Em casos onde a descrição da transação é apresentada com múltiplas linhas, todas as linhas devem ser enviadas (concatenadas) neste atributo, não sendo obrigatória a concatenação das informações já enviadas em outros atributos (ex: valor, data) do mesmo endpoint. - Adicionalmente, o Banco Central pode determinar o formato de compartilhamento a ser adotado por uma instituição participante específica. - example: Transferencia Enviada Lima Santos - type: - $ref: '#/components/schemas/EnumTransactionTypes' - typeAdditionalInfo: - type: string - pattern: '[\w\W\s]*' - description: | - Informações complementares para tipo de transação. - - [Restrição] Este campo é de envio obrigatório caso o campo `type` seja definido como `OUTROS`. - example: 'APLIC_FINANCEIRA' - transactionAmount: - $ref: '#/components/schemas/AccountTransactionsDataAmount' - transactionDateTime: - type: string - maxLength: 24 - pattern: '(^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)\.(?:[0-9]){3}Z$)' - description: | - Data e hora original da transação que é informada nos canais digitais. Para lançamentos Futuros a data informada deve ser a data prevista de efetivação informada nos canais digitais. Caso a instituição não saiba o horário certo da efetivação, os valores hora, minuto, segundo e milissegundo, podem ser preenchidos com zero. Após a efetivação da transação, o campo deve ser preenchido com a data e a hora da efetivação da transação. - example: '2016-01-29T12:29:03.374Z' - partieCnpjCpf: - type: string - maxLength: 14 - pattern: '^([0-9]{11}|[0-9A-Z]{12}[0-9]{2})$' - description: | - Identificação da pessoa envolvida na transação: pagador ou recebedor (Preencher com o CPF ou CNPJ, sem formatação). Com a IN BCB nº 371, a partir de 02/05/23, o envio das informações de identificação de contraparte tornou-se obrigatória para transações de pagamento. Para maiores detalhes, favor consultar a página `Orientações - Contas`. - - [Restrição] Quando o "type“ for preenchido com valor FOLHA_PAGAMENTO e a transmissora for a responsável pelo pagamento de salário (banco-folha), o partieCnpjCpf informado deve ser do empregador relacionado. - example: '43908445778' - partiePersonType: - $ref: '#/components/schemas/EnumPartiePersonType' - partieCompeCode: - type: string - maxLength: 3 - pattern: '^\d{3}$' - description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' - example: '001' - partieBranchCode: - type: string - maxLength: 4 - pattern: '^\d{4}$' - description: 'Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória)' - example: '6272' - partieNumber: - type: string - maxLength: 20 - pattern: '^\d{8,20}$' - description: Número da conta da pessoa envolvida na transação - example: '67890854360' - partieCheckDigit: - type: string - maxLength: 1 - pattern: '[\w\W\s]*' - description: Dígito da conta da pessoa envolvida na transação - example: '4' - codeISPB: - type: string - pattern: '^\d{8}$' - description: | - Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. - - Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: - - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. - - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. - example: '00300300' - AccountTransactionsDataAmount: - type: object - description: Valor da transação. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. - required: - - amount - - currency - properties: - amount: - type: string - format: double - pattern: '^\d{1,15}\.\d{2,4}$' - maxLength: 20 - minLength: 4 - example: '1000.0400' - description: Valor relacionado ao objeto. - currency: - type: string - pattern: '^[A-Z]{3}$' - maxLength: 3 - description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' - example: BRL - EnumAccountSubType: - type: string - enum: - - INDIVIDUAL - - CONJUNTA_SIMPLES - - CONJUNTA_SOLIDARIA - description: | - Subtipo de conta (vide Enum): - Conta individual - possui um único titular - Conta conjunta simples - onde as movimentações financeiras só podem serem realizadas mediante autorização de TODOS os correntistas da conta. - Conta conjunta solidária - é a modalidade cujos titulares podem realizar movimentações de forma isolada, isto é, sem que seja necessária a autorização dos demais titulares - example: INDIVIDUAL - EnumAccountType: - type: string - enum: - - CONTA_DEPOSITO_A_VISTA - - CONTA_POUPANCA - - CONTA_PAGAMENTO_PRE_PAGA - description: | - Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum - Conta de depósito à vista ou Conta corrente - é o tipo mais comum. Nela, o dinheiro fica à sua disposição para ser sacado a qualquer momento. Essa conta não gera rendimentos para o depositante - Conta poupança - foi criada para estimular as pessoas a pouparem. O dinheiro que ficar na conta por trinta dias passa a gerar rendimentos, com isenção de imposto de renda para quem declara. Ou seja, o dinheiro “cresce” (rende) enquanto ficar guardado na conta. Cada depósito terá rendimentos de mês em mês, sempre no dia do mês em que o dinheiro tiver sido depositado - Conta de pagamento pré-paga: segundo CIRCULAR Nº 3.680, BCB de 2013, é a 'destinada à execução de transações de pagamento em moeda eletrônica realizadas com base em fundos denominados em reais previamente aportados' - example: CONTA_DEPOSITO_A_VISTA - EnumCompletedAuthorisedPaymentIndicator: - type: string - description: | - Indicador da transação: - - Transação efetivada: a transação atinge esse status quando o `transactionId` torna-se imutável; - - Lançamento futuro: a transação será efetivada em momento futuro, ou seja, o `transactionId` pode mudar; - - Transação processando: a transação está em processamento, ou seja, o `transactionId` pode mudar. - enum: - - TRANSACAO_EFETIVADA - - LANCAMENTO_FUTURO - - TRANSACAO_PROCESSANDO - example: TRANSACAO_EFETIVADA - EnumCreditDebitIndicator: - type: string - description: | - Indicador do tipo de lançamento: - Débito (no extrato) Em um extrato bancário, os débitos, marcados com a letra “D” ao lado do valor registrado, informam as saídas de dinheiro na conta-corrente. - Crédito (no extrato) Em um extrato bancário, os créditos, marcados com a letra “C” ao lado do valor registrado, informam as entradas de dinheiro na conta-corrente. - enum: - - CREDITO - - DEBITO - example: DEBITO - EnumPartiePersonType: - type: string - enum: - - PESSOA_NATURAL - - PESSOA_JURIDICA - example: PESSOA_NATURAL - description: | - Identificação do Tipo de Pessoa da pessoa envolvida na transação. - Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. - Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. - EnumTransactionTypes: - type: string - description: | - O campo deve classificar a transação em um dos tipos descritos. - O transmissor deve classificar as transações disponíveis associando-a a um dos itens do Enum listado neste campo. - A opção OUTROS só deve ser utilizada para os casos em que de fato a transação compartilhada não possa ser classificada como um dos itens deste Enum. - Por exemplo no caso de recebimento de pensão alimentícia. - enum: - - TED - - DOC - - PIX - - TRANSFERENCIA_MESMA_INSTITUICAO - - BOLETO - - CONVENIO_ARRECADACAO - - PACOTE_TARIFA_SERVICOS - - TARIFA_SERVICOS_AVULSOS - - FOLHA_PAGAMENTO - - DEPOSITO - - SAQUE - - CARTAO - - ENCARGOS_JUROS_CHEQUE_ESPECIAL - - RENDIMENTO_APLIC_FINANCEIRA - - PORTABILIDADE_SALARIO - - RESGATE_APLIC_FINANCEIRA - - OPERACAO_CREDITO - - TRANSFERENCIA_SALDO_RESERVADO - - OUTROS - example: PIX - Links: - type: object - description: Referências para outros recusos da API requisitada. - required: - - self - properties: - self: - type: string - format: url - maxLength: 4048 - description: URI completo que gerou a resposta atual. - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - first: - type: string - format: url - maxLength: 4048 - description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - prev: - type: string - format: url - maxLength: 4048 - description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - next: - type: string - format: url - maxLength: 4048 - description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - last: - type: string - format: url - maxLength: 4048 - description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - LinksAccountId: - type: object - description: Referências para outros recusos da API requisitada. - required: - - self - properties: - self: - type: string - format: url - maxLength: 4048 - description: URI completo que gerou a resposta atual. - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - first: - type: string - format: url - maxLength: 4048 - description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - prev: - type: string - format: url - maxLength: 4048 - description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - next: - type: string - format: url - maxLength: 4048 - description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - last: - type: string - format: url - maxLength: 4048 - description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - TransactionsLinks: - type: object - description: Referências para outros recusos da API requisitada. - required: - - self - properties: - self: - type: string - format: url - maxLength: 4048 - description: URI completo que gerou a resposta atual. - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - first: - type: string - format: url - maxLength: 4048 - description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - prev: - type: string - format: url - maxLength: 4048 - description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - next: - type: string - format: url - maxLength: 4048 - description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta - example: 'https://api.banco.com.br/open-banking/api/v2/resource' - Meta: - type: object - description: Meta informações referente à API requisitada. - required: - - totalRecords - - totalPages - - requestDateTime - properties: - totalRecords: - type: integer - format: int32 - description: Número total de registros no resultado - example: 1 - totalPages: - type: integer - format: int32 - description: Número total de páginas no resultado - example: 1 - requestDateTime: - description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' - type: string - maxLength: 20 - format: date-time - example: '2021-05-21T08:30:00Z' - MetaOnlyRequestDateTime: - type: object - description: Meta informações referente à API requisitada. - required: - - requestDateTime - properties: - requestDateTime: - description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' - type: string - maxLength: 20 - format: date-time - example: '2021-05-21T08:30:00Z' - ResponseAccountList: - type: object - required: - - data - - links - - meta - properties: - data: - type: array - description: 'Lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento' - minItems: 0 - items: - $ref: '#/components/schemas/AccountData' - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Meta' - ResponseAccountBalances: - type: object - required: - - data - - links - - meta - properties: - data: - $ref: '#/components/schemas/AccountBalancesData' - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Meta' - ResponseReservedBalances: - type: object - required: - - data - - links - - meta - properties: - data: - $ref: '#/components/schemas/AccountReservedBalancesData' - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Meta' - ResponseAccountIdentification: - type: object - required: - - data - - links - - meta - properties: - data: - $ref: '#/components/schemas/AccountIdentificationData' - links: - $ref: '#/components/schemas/LinksAccountId' - meta: - $ref: '#/components/schemas/Meta' - ResponseAccountOverdraftLimits: - type: object - required: - - data - - links - - meta - properties: - data: - $ref: '#/components/schemas/AccountOverdraftLimitsData' - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Meta' - ResponseAccountTransactions: - type: object - required: - - data - - links - - meta - properties: - data: - type: array - description: | - Lista dos lançamentos referentes às transações realizadas e de lançamentos futuros para as contas de: depósito à vista, poupança e de pagamento pré-paga - minItems: 0 - items: - $ref: '#/components/schemas/AccountTransactionsData' - links: - $ref: '#/components/schemas/TransactionsLinks' - meta: - $ref: '#/components/schemas/MetaOnlyRequestDateTime' - ResponseErrorMetaSingle: - type: object - required: - - errors - properties: - errors: - type: array - minItems: 1 - maxItems: 13 - items: - type: object - required: - - code - - title - - detail - properties: - code: - description: Código de erro específico do endpoint - type: string - pattern: '[\w\W\s]*' - maxLength: 255 - title: - description: Título legível por humanos deste erro específico - type: string - pattern: '[\w\W\s]*' - maxLength: 255 - detail: - description: Descrição legível por humanos deste erro específico - type: string - pattern: '[\w\W\s]*' - maxLength: 2048 - meta: - $ref: '#/components/schemas/MetaOnlyRequestDateTime' - XFapiInteractionId: - type: string - format: uuid - maxLength: 36 - pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' - example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - X-V: - type: string - pattern: '^\d+\.\d+\.\d+$' - example: 1.0.0 - parameters: - accountId: - name: accountId - in: path - description: 'Identificador da conta de depósito à vista, de poupança ou de pagamento pré-paga.' - required: true - schema: - type: string - pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' - maxLength: 100 - accountType: - name: accountType - description: 'Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum.' - required: false - in: query - schema: - $ref: '#/components/schemas/EnumAccountType' - Authorization: - name: Authorization - in: header - description: Cabeçalho HTTP padrão. Permite que as credenciais sejam fornecidas dependendo do tipo de recurso solicitado - required: true - schema: - type: string - pattern: '[\w\W\s]*' - maxLength: 2048 - creditDebitIndicator: - name: creditDebitIndicator - description: Indicador do tipo de lançamento - required: false - in: query - schema: - $ref: '#/components/schemas/EnumCreditDebitIndicator' - fromBookingDate: - name: fromBookingDate - description: 'Data inicial de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' - required: false - in: query - schema: - type: string - maxLength: 10 - format: date - example: '2021-05-21' - fromBookingDateMaxLimited: - in: query - name: fromBookingDate - description: | - Data inicial de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). - [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. - Caso não seja informado, deve ser assumido o dia atual. - required: false - schema: - type: string - maxLength: 10 - format: date - example: '2021-05-21' - toBookingDateMaxLimited: - in: query - name: toBookingDate - description: | - Data final de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). - [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. - Caso não seja informado, deve ser assumido o dia atual. - required: false - schema: - type: string - maxLength: 10 - format: date - example: '2021-05-21' - pagination-key: - name: pagination-key - in: query - description: 'Identificador de rechamada, utilizado para evitar a contagem de chamadas ao endpoint durante a paginação.' - schema: - type: string - maxLength: 2048 - pattern: '[\w\W\s]*' - page: - name: page - in: query - description: Número da página que está sendo requisitada (o valor da primeira página é 1). - schema: - type: integer - default: 1 - minimum: 1 - maximum: 2147483647 - format: int32 - pageSize: - name: page-size - in: query - description: Quantidade total de registros por páginas. - schema: - type: integer - default: 25 - minimum: 1 - format: int32 - maximum: 1000 - toBookingDate: - name: toBookingDate - description: 'Data final de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' - required: false - in: query - schema: - type: string - maxLength: 10 - format: date - example: '2021-05-21' - xCustomerUserAgent: - name: x-customer-user-agent - in: header - description: Indica o user-agent que o usuário utiliza. - required: false - schema: - type: string - pattern: '[\w\W\s]*' - minLength: 1 - maxLength: 100 - xFapiAuthDate: - name: x-fapi-auth-date - in: header - description: 'Data em que o usuário logou pela última vez com o receptor. Representada de acordo com a [RFC7231](https://tools.ietf.org/html/rfc7231).Exemplo: Sun, 10 Sep 2017 19:43:31 UTC' - required: false - schema: - type: string - pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$' - minLength: 29 - maxLength: 29 - xFapiCustomerIpAddress: - name: x-fapi-customer-ip-address - in: header - description: O endereço IP do usuário se estiver atualmente logado com o receptor. - required: false - schema: - type: string - pattern: '[\w\W\s]*' - minLength: 1 - maxLength: 100 - xFapiInteractionId: - name: x-fapi-interaction-id - in: header - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - required: true - schema: - type: string - format: uuid - minLength: 1 - maxLength: 36 - pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' - example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 - securitySchemes: - OpenId: - type: openIdConnect - openIdConnectUrl: 'https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration' - OAuth2Security: - type: oauth2 - description: Fluxo OAuth necessário para que a receptora tenha acesso aos dados na instituição transmissora. Requer o processo de redirecionamento e autenticação do usuário a que se referem os dados. - flows: - authorizationCode: - authorizationUrl: 'https://authserver.example/authorization' - tokenUrl: 'https://authserver.example/token' - scopes: - accounts: Escopo necessário para acesso à API Accounts. O controle dos endpoints específicos é feito via permissions. - responses: - OKResponseAccountList: - description: Dados de identificação das contas obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseAccountList' - OKResponseAccountIdentification: - description: Dados de identificação da conta identificada por accountId obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseAccountIdentification' - OKResponseAccountBalances: - description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseAccountBalances' - OKResponseAccountReservedBalances: - description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseReservedBalances' - OKResponseAccountTransactions: - description: Dados da lista de transações da conta identificada por accountId obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseAccountTransactions' - OKResponseAccountOverdraftLimits: - description: Dados de limites da conta identificada por accountId obtidos com sucesso. - headers: - x-fapi-interaction-id: - required: true - description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' - schema: - $ref: '#/components/schemas/XFapiInteractionId' - x-v: - $ref: '#/components/headers/X-V' - content: - application/json: - schema: - $ref: '#/components/schemas/ResponseAccountOverdraftLimits' - BadRequestMetaSingle: - description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - ForbiddenMetaSingle: - description: O token tem escopo incorreto ou uma política de segurança foi violada - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - GatewayTimeoutMetaSingle: - description: GATEWAY TIMEOUT - A requisição não foi atendida dentro do tempo limite estabelecido - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - InternalServerErrorMetaSingle: - description: Ocorreu um erro no gateway da API ou no microsserviço - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - LockedMetaSingle: - description: Locked - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - MethodNotAllowedMetaSingle: - description: O consumidor tentou acessar o recurso com um método não suportado - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - NotAcceptableMetaSingle: - description: A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8 - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - NotFoundMetaSingle: - description: O recurso solicitado não existe ou não foi implementado - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - TooManyRequestsMetaSingle: - description: 'A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - UnauthorizedMetaSingle: - description: Cabeçalho de autenticação ausente/inválido ou token inválido - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - UnprocessableEntityMetaSingle: - description: 'A sintaxe da requisição esta correta, mas não foi possível processar as instruções presentes.' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - DefaultMetaSingle: - description: Erro inesperado. - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - SiteIsOverloadedMetaSingle: - description: 'O site está sobrecarregado e a operação foi recusada, pois foi atingido o limite máximo de TPS global, neste momento.' - content: - application/json; charset=utf-8: - schema: - $ref: '#/components/schemas/ResponseErrorMetaSingle' - diff --git a/swagger-apis/accounts/index.html b/swagger-apis/accounts/index.html index 0fee0000d..b5a109f85 100644 --- a/swagger-apis/accounts/index.html +++ b/swagger-apis/accounts/index.html @@ -70,9 +70,8 @@ {"name": "2.4.1", "url": "./2.4.1.yml"}, {"name": "2.4.2", "url": "./2.4.2.yml"}, {"name": "2.5.0-beta.1", "url": "./2.5.0-beta.1.yml"}, - {"name": "2.5.0-beta.2", "url": "./2.5.0-beta.2.yml"}, {"name": "2.5.0-rc.1", "url": "./2.5.0-rc.1.yml"}], - "urls.primaryName": "2.5.0-beta.2", // default spec + "urls.primaryName": "2.5.0-rc.1", // default spec dom_id: '#swagger-ui', deepLinking: true, supportedSubmitMethods:[], From fe7ec91932ceb0c4420dc50935facd1ce3d8ebe4 Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 18:15:03 -0300 Subject: [PATCH 5/7] =?UTF-8?q?feat(Accounts):=20EOF-1245=20-=20Cria=C3=A7?= =?UTF-8?q?=C3=A3o=20da=20vers=C3=A3o=202.5.0-beta.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- swagger-apis/accounts/2.5.0-beta.2.yml | 1699 ++++++++++++++++++++++++ swagger-apis/accounts/index.html | 3 +- 2 files changed, 1701 insertions(+), 1 deletion(-) create mode 100644 swagger-apis/accounts/2.5.0-beta.2.yml diff --git a/swagger-apis/accounts/2.5.0-beta.2.yml b/swagger-apis/accounts/2.5.0-beta.2.yml new file mode 100644 index 000000000..7067fc536 --- /dev/null +++ b/swagger-apis/accounts/2.5.0-beta.2.yml @@ -0,0 +1,1699 @@ +openapi: 3.0.0 +info: + title: API Accounts - Open Finance Brasil + description: | + API de contas de depósito à vista, contas de poupança e contas pré-pagas do Open Finance Brasil – Fase 2. + API que retorna informações de contas de depósito à vista, contas de poupança e contas de pagamento pré-pagas mantidas nas instituições transmissoras por seus clientes, + incluindo dados de identificação da conta, saldos, limites e transações.\ + Não possui segregação entre pessoa natural e pessoa jurídica.\ + Requer consentimento do cliente para todos os `endpoints`. + + # Orientações + A `Role` do diretório de participantes relacionada à presente API é a `DADOS`.\ + Para todos os `endpoints` desta API é previsto o envio de um `token` através do header `Authorization`.\ + Este token deverá estar relacionado ao consentimento (`consentId`) mantido na instituição transmissora dos dados, o qual permitirá a pesquisa e retorno, na API em questão, dos + dados relacionados ao `consentId` específico relacionado.\ + Os dados serão devolvidos na consulta desde que o `consentId` relacionado corresponda a um consentimento válido e com o status `AUTHORISED`.\ + É também necessário que o recurso em questão (conta, contrato, etc) esteja disponível na instituição transmissora (ou seja, sem boqueios de qualquer natureza e com todas as autorizações/consentimentos já autorizados).\ + Além disso as `permissions` necessárias deverão ter sido solicitadas quando da criação do consentimento relacionado (`consentId`).\ + Relacionamos a seguir as `permissions` necessárias para a consulta de dados em cada `endpoint` da presente API. + + ## Permissions necessárias para a API Accounts + + Para cada um dos paths desta API, além dos escopos (`scopes`) indicados existem `permissions` que deverão ser observadas: + + ### `/accounts` + - permissions: + - GET: **ACCOUNTS_READ** + ### `/accounts/{accountId}` + - permissions: + - GET: **ACCOUNTS_READ** + ### `/accounts/{accountId}/balances` + - permissions: + - GET: **ACCOUNTS_BALANCES_READ** + ### `/accounts/{accountId}/transactions` + - permissions: + - GET: **ACCOUNTS_TRANSACTIONS_READ** + ### `/accounts/{accountId}/transactions-current` + - permissions: + - GET: **ACCOUNTS_TRANSACTIONS_READ** + ### `/accounts/{accountId}/overdraft-limits` + - permissions: + - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** + ### `/accounts/{accountId}/reserved_balances` + - permissions: + - GET: **ACCOUNTS_BALANCES_READ** + + ## Data de imutabilidade por tipo de transação​ + O identificador de transações de contas é de envio obrigatório no Open Finance Brasil. De acordo com o tipo da transação deve haver o envio de um identificador único, estável e imutável em D0 ou D+1, conforme tabela abaixo + ``` + |---------------------------------------|-------------------------|-----------------------| + | Tipo de Transação | Data da Obrigatoriedade | Data da Imutabilidade | + |---------------------------------------|-------------------------|-----------------------| + | TED | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | PIX | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | TRANSFERENCIA MESMA INSTITUIÇÃO (TEF) | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | TARIFA SERVIÇOS AVULSOS | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | FOLHA DE PAGAMENTO | DO | DO | + |---------------------------------------|-------------------------|-----------------------| + | DOC | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | BOLETO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | CONVÊNIO ARRECADAÇÃO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | PACOTE TARIFA SERVIÇOS | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | DEPÓSITO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | SAQUE | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | CARTÃO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | ENCARGOS JUROS CHEQUE ESPECIAL | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | RENDIMENTO APLICAÇÃO FINANCEIRA | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | PORTABILIDADE SALÁRIO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | RESGATE APLICAÇÃO FINANCEIRA | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | OPERAÇÃO DE CRÉDITO | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + | OUTROS | DO | D+1 | + |---------------------------------------|-------------------------|-----------------------| + ``` + + Para consultar as regras aplicáveis ao comportamento do transacionID de acordo com o status da transação, consultar a página [Orientações - Contas](https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/193658890) + version: 2.5.0-beta.2 + license: + name: Apache 2.0 + url: 'https://www.apache.org/licenses/LICENSE-2.0' + contact: + name: Governança do Open Finance Brasil – Especificações + email: gt-interfaces@openbankingbr.org + url: 'https://openbanking-brasil.github.io/areadesenvolvedor/' +servers: + - url: 'https://api.banco.com.br/open-banking/accounts/v2' + description: Servidor de Produção + - url: 'https://apih.banco.com.br/open-banking/accounts/v2' + description: Servidor de Homologação +tags: + - name: Accounts + description: Operações para listagem das informações da Conta do Cliente +paths: + /accounts: + get: + tags: + - Accounts + summary: Obtém a lista de contas consentidas pelo cliente. + operationId: accountsGetAccounts + description: 'Método para obter a lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento.' + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/accountType' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountList' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}': + get: + tags: + - Accounts + summary: Obtém os dados de identificação da conta identificada por accountId. + description: 'Método para obter os dados de identificação da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' + operationId: accountsGetAccountsAccountId + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountIdentification' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/balances': + get: + tags: + - Accounts + summary: Obtém os saldos da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdBalances + description: 'Método para obter os saldos da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora.' + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountBalances' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/transactions': + get: + tags: + - Accounts + summary: Obtém a lista de transações da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdTransactions + description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 12 meses no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/fromBookingDate' + - $ref: '#/components/parameters/toBookingDate' + - $ref: '#/components/parameters/creditDebitIndicator' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountTransactions' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/transactions-current': + get: + tags: + - Accounts + summary: Obtém a lista de transações recentes (últimos 7 dias) da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdTransactionsCurrent + description: Método para obter a lista de transações da conta de depósito à vista, poupança ou pagamento pré-paga, identificada por accountId mantida pelo cliente na instituição transmissora. É permitida uma consulta máxima que se estenda em 7 dias no passado mais 12 meses no futuro. A lista deve ser ordenada da transação mais recente para a mais antiga. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + - $ref: '#/components/parameters/fromBookingDateMaxLimited' + - $ref: '#/components/parameters/toBookingDateMaxLimited' + - $ref: '#/components/parameters/creditDebitIndicator' + - $ref: '#/components/parameters/pagination-key' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountTransactions' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/overdraft-limits': + get: + tags: + - Accounts + summary: Obtém os limites da conta identificada por accountId. + operationId: accountsGetAccountsAccountIdOverdraftLimits + description: Método para obter os limites da conta de depósito à vista, poupança ou pagamento pré-paga identificada por accountId mantida pelo cliente na instituição transmissora. Para as instituições financeiras transmissoras que possuam contas sem limites associados devem retornar HTTP Status 200 com o objeto “data” vazio, sem nenhum atributo interno. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountOverdraftLimits' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts + '/accounts/{accountId}/reserved_balances': + get: + tags: + - Accounts + summary: Obtém os saldos reservados em produtos caixinhas/reserva. + operationId: accountsGetAccountsAccountIdReservedBalances + description: Método para obter os saldos reservados em produtos caixinhas/reserva. + parameters: + - $ref: '#/components/parameters/Authorization' + - $ref: '#/components/parameters/xFapiAuthDate' + - $ref: '#/components/parameters/xFapiCustomerIpAddress' + - $ref: '#/components/parameters/xFapiInteractionId' + - $ref: '#/components/parameters/xCustomerUserAgent' + - $ref: '#/components/parameters/accountId' + - $ref: '#/components/parameters/page' + - $ref: '#/components/parameters/pageSize' + responses: + '200': + $ref: '#/components/responses/OKResponseAccountReservedBalances' + '400': + $ref: '#/components/responses/BadRequestMetaSingle' + '401': + $ref: '#/components/responses/UnauthorizedMetaSingle' + '403': + $ref: '#/components/responses/ForbiddenMetaSingle' + '404': + $ref: '#/components/responses/NotFoundMetaSingle' + '405': + $ref: '#/components/responses/MethodNotAllowedMetaSingle' + '406': + $ref: '#/components/responses/NotAcceptableMetaSingle' + '422': + $ref: '#/components/responses/UnprocessableEntityMetaSingle' + '423': + $ref: '#/components/responses/LockedMetaSingle' + '429': + $ref: '#/components/responses/TooManyRequestsMetaSingle' + '500': + $ref: '#/components/responses/InternalServerErrorMetaSingle' + '504': + $ref: '#/components/responses/GatewayTimeoutMetaSingle' + '529': + $ref: '#/components/responses/SiteIsOverloadedMetaSingle' + default: + $ref: '#/components/responses/DefaultMetaSingle' + security: + - OpenId: + - openid + OAuth2Security: + - 'consent:consentId' + - accounts +components: + headers: + X-V: + description: | + Cabeçalho que indica a versão implementada da API pela instituição. Deve ser preenchido de forma completa, por exemplo: x-v: 1.0.2 + required: true + schema: + $ref: '#/components/schemas/X-V' + schemas: + AccountBalancesDataAutomaticallyInvestedAmount: + type: object + description: Saldo disponível com aplicação automática - corresponde a soma do saldo disponível acrescido do valor obtido a partir da aplicação automática. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^-?\d{1,15}\.\d{2,4}$' + maxLength: 21 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataOverdraftContractedLimit: + type: object + description: Valor do limite contratado do cheque especial. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataOverdraftUsedLimit: + type: object + description: Valor utilizado total do limite do cheque especial e o adiantamento a depositante. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountOverdraftLimitsDataUnarrangedOverdraftAmount: + type: object + description: Valor de operação contratada em caráter emergencial para cobertura de saldo devedor em conta de depósitos à vista e de excesso sobre o limite pactuado de cheque especial. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesDataBlockedAmount: + type: object + description: 'Saldo bloqueado, não disponível para utilização imediata, por motivo de bloqueio apresentado para o cliente nos canais eletrônicos. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais.' + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesDataAvailableAmount: + type: object + description: | + Saldo disponível para utilização imediata. Não considera cheque especial, investimentos automáticos atrelados a conta e nem reserva de saldo. + Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + AccountBalancesData: + type: object + description: | + Conjunto de informações das Contas de: depósito à vista, poupança e de pagamento pré-paga + required: + - availableAmount + - blockedAmount + - automaticallyInvestedAmount + - updateDateTime + properties: + availableAmount: + $ref: '#/components/schemas/AccountBalancesDataAvailableAmount' + blockedAmount: + $ref: '#/components/schemas/AccountBalancesDataBlockedAmount' + automaticallyInvestedAmount: + $ref: '#/components/schemas/AccountBalancesDataAutomaticallyInvestedAmount' + updateDateTime: + type: string + format: date-time + maxLength: 20 + pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' + example: '2021-05-21T08:30:00Z' + description: | + Data e hora da última atualização do saldo. É esperado que a instituição informe a última vez que capturou o saldo para compartilhamento no Open Finance. Dessa forma, é possível que: + - Caso a instituição capture dados de forma síncrona essa informação seja de poucos momentos; + - Caso a instituição capture dados de forma assíncrona essa informação seja de horas ou dias no passado; + - Quando não existente uma data vinculada especificamente ao bloco, se assume a data e hora de atualização do cadastro como um todo. + + De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. + hasReservedBalance: + type: boolean + description: | + Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` + + [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. + Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. + Produtos de investimentos devem ser reportados nas APIs de Investimentos. + example: true + AccountReservedBalancesData: + type: array + description: Lista de caixinhas/reservas + minItems: 0 + items: + type: object + required: + - reservedIndentification + - availableAmount + properties: + reservedName: + type: string + description: Nome dado pelo usuário para a reserva + pattern: '^[^\s][\w\W\s]*[^\s]$' + maxLength: 248 + minLength: 5 + example: Caixinha Paras Férias + reservedIndentification: + type: string + description: Identificador único da reserva + format: uuid + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + maxLength: 36 + minLength: 1 + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + availableAmount: + type: array + description: Saldo que se encontra disponível na reserva + minLength: 1 + items: + type: object + required: + - amount + - currency + properties: + amount: + type: string + description: Valor relacionado ao objeto. + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + currency: + type: string + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + pattern: '^[A-Z]{3}$' + maxLength: 3 + example: BRL + remuneration: + type: object + description: Remuneração aplicada a reserva + required: + - rateType + - indexer + - calculation + - ratePeriodicity + properties: + preFixedRate: + type: string + description: | + Taxa de remuneração pré fixada para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `postFixedIndexerPercentage` não for preenchido + format: double + pattern: '^\d{1}\.\d{6}$' + minLength: 8 + maxLength: 8 + example: '0.300000' + postFixedIndexerPercentage: + type: string + description: | + Percentual do indexador pós fixado para a reserva de saldo. p.ex. 0.014500. O preenchimento deve respeitar as 6 casas decimais, mesmo que venham preenchidas com zeros(representação de porcentagem p.ex: 0.150000. Este valor representa 15%. O valor 1 representa 100%). + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando campo `preFixedRate` não for preenchido + format: double + pattern: '^\d{1}\.\d{6}$' + minLength: 8 + maxLength: 8 + example: '0.300000' + rateType: + type: string + description: Tipo da taxa de remuneração (linear ou exponencial) + enum: + - LINEAR + - EXPONENCIAL + example: LINEAR + indexer: + type: string + description: Índice utilizado como referência para remuneração da reserva + enum: + - CDI + - DI + - TR + - IPCA + - IGP_M + - IGP_DI + - INPC + - BCP + - TLC + - SELIC + - PRE_FIXADO + - OUTROS + example: CDI + calculation: + type: string + description: Base de cálculo (dias úteis ou dias corridos) + enum: + - DIAS_UTEIS + - DIAS_CORRIDOS + example: DIAS_UTEIS + ratePeriodicity: + type: string + description: Periodicidade da taxa de remuneração (mensal, anual, diário, semestral) + enum: + - MENSAL + - ANUAL + - DIARIO + - SEMESTRAL + example: MENSAL + indexerAdditionalInfo: + type: string + description: | + Informações adicionais do indexador + + [Restrição] Campo de preenchimento obrigatório pelas participantes quando houver `Outros` no campo `indexer` + pattern: '[\w\W\s]*' + maxLength: 50 + example: Dólar + AccountData: + type: object + required: + - brandName + - companyCnpj + - type + - compeCode + - number + - accountId + properties: + brandName: + type: string + description: 'Nome da Marca reportada pelo participante no Open Finance. Recomenda-se utilizar, sempre que possível, o mesmo nome de marca atribuído no campo do diretório Customer Friendly Server Name (Authorisation Server).' + maxLength: 80 + pattern: '[\w\W\s]*' + example: Organização A + companyCnpj: + type: string + maxLength: 14 + pattern: '^[0-9A-Z]{12}[0-9]{2}$' + description: 'Registro completo do CNPJ da instituição responsável pelo Cadastro - o CNPJ corresponde a representação alfanumérica da inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os caracteres do CNPJ, sem máscara.' + example: '21128159000166' + type: + $ref: '#/components/schemas/EnumAccountType' + compeCode: + type: string + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas).O Compe (Sistema de Compensação de Cheques e Outros Papéis) é um sistema que identifica e processa as compensações bancárias. Ele é representado por um código de três dígitos que serve como identificador de bancos, sendo assim, cada instituição bancária possui um número exclusivo' + pattern: '^\d{3}$' + maxLength: 3 + example: '001' + branchCode: + type: string + description: | + Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de CONTA_PAGAMENTO_PRE_PAGA. + pattern: '^\d{4}$' + maxLength: 4 + example: '6272' + number: + type: string + description: Número da conta + pattern: '^\d{8,20}$' + maxLength: 20 + example: '94088392' + checkDigit: + type: string + description: | + Dígito da conta + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo `type` for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório. + pattern: '[\w\W\s]*' + maxLength: 1 + example: '4' + accountId: + type: string + description: 'Identifica de forma única a conta do cliente, mantendo as regras de imutabilidade dentro da instituição transmissora.' + pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' + maxLength: 100 + minLength: 1 + example: '92792126019929279212650822221989319252576' + AccountIdentificationData: + type: object + description: | + Conjunto dos atributos que caracterizam as Contas de: depósito à vista, poupança e de pagamento pré-paga + required: + - compeCode + - number + - type + - subtype + - currency + properties: + compeCode: + type: string + maxLength: 3 + pattern: '^\d{3}$' + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas). O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' + example: '001' + branchCode: + type: string + maxLength: 4 + pattern: '^\d{4}$' + description: | + Código da Agência detentora da conta. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória) + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. + example: '6272' + number: + type: string + maxLength: 20 + pattern: '^\d{8,20}$' + description: | + Número da conta + example: '24550245' + checkDigit: + type: string + maxLength: 1 + pattern: '[\w\W\s]*' + description: | + Dígito da conta. + + [Restrição] Obrigatoriamente deve ser preenchido quando o campo "type" for diferente de conta pré-paga. Nos casos em que a conta pré-paga possua dígito, o envio é obrigatório + example: '4' + type: + $ref: '#/components/schemas/EnumAccountType' + subtype: + $ref: '#/components/schemas/EnumAccountSubType' + currency: + type: string + pattern: '^(\w{3}){1}$' + maxLength: 3 + description: | + Moeda referente ao valor da transação, segundo modelo ISO-4217. p.ex. 'BRL' + Todos os saldos informados estão representados com a moeda vigente do Brasil + example: BRL + AccountOverdraftLimitsData: + type: object + description: | + Conjunto de informações da Conta de: depósito à vista + properties: + overdraftContractedLimit: + $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftContractedLimit' + overdraftUsedLimit: + $ref: '#/components/schemas/AccountOverdraftLimitsDataOverdraftUsedLimit' + unarrangedOverdraftAmount: + $ref: '#/components/schemas/AccountOverdraftLimitsDataUnarrangedOverdraftAmount' + AccountTransactionsData: + type: object + required: + - transactionId + - completedAuthorisedPaymentType + - creditDebitType + - transactionName + - type + - transactionAmount + - transactionDateTime + properties: + transactionId: + type: string + description: | + Código ou identificador único prestado pela instituição que mantém a conta para representar a transação individual. + O ideal é que o `transactionId` seja imutável. + No entanto, o `transactionId` deve obedecer, no mínimo, as regras de imutabilidade propostas conforme tabela “Data de imutabilidade por tipo de transação” presente nas orientações desta API. + maxLength: 100 + minLength: 1 + pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]{0,99}$' + example: TXpRMU9UQTROMWhZV2xSU1FUazJSMDl + completedAuthorisedPaymentType: + $ref: '#/components/schemas/EnumCompletedAuthorisedPaymentIndicator' + creditDebitType: + $ref: '#/components/schemas/EnumCreditDebitIndicator' + transactionName: + type: string + maxLength: 200 + pattern: '[\w\W\s]*' + description: | + Literal usada na instituição financeira para identificar a transação. + A informação apresentada precisa ser a mesma utilizada nos canais digitais da instituição (assim como o histórico de transações apresentado na tela do aplicativo ou do navegador). + Caso a instituição possua mais de um canal digital, a informação compartilhada deve ser a do canal que apresenta a descrição mais completa possível da transação. + Em casos onde a descrição da transação é apresentada com múltiplas linhas, todas as linhas devem ser enviadas (concatenadas) neste atributo, não sendo obrigatória a concatenação das informações já enviadas em outros atributos (ex: valor, data) do mesmo endpoint. + Adicionalmente, o Banco Central pode determinar o formato de compartilhamento a ser adotado por uma instituição participante específica. + example: Transferencia Enviada Lima Santos + type: + $ref: '#/components/schemas/EnumTransactionTypes' + typeAdditionalInfo: + type: string + pattern: '[\w\W\s]*' + description: | + Informações complementares para tipo de transação. + + [Restrição] Este campo é de envio obrigatório caso o campo `type` seja definido como `OUTROS`. + example: 'APLIC_FINANCEIRA' + transactionAmount: + $ref: '#/components/schemas/AccountTransactionsDataAmount' + transactionDateTime: + type: string + maxLength: 24 + pattern: '(^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)\.(?:[0-9]){3}Z$)' + description: | + Data e hora original da transação que é informada nos canais digitais. Para lançamentos Futuros a data informada deve ser a data prevista de efetivação informada nos canais digitais. Caso a instituição não saiba o horário certo da efetivação, os valores hora, minuto, segundo e milissegundo, podem ser preenchidos com zero. Após a efetivação da transação, o campo deve ser preenchido com a data e a hora da efetivação da transação. + example: '2016-01-29T12:29:03.374Z' + partieCnpjCpf: + type: string + maxLength: 14 + pattern: '^([0-9]{11}|[0-9A-Z]{12}[0-9]{2})$' + description: | + Identificação da pessoa envolvida na transação: pagador ou recebedor (Preencher com o CPF ou CNPJ, sem formatação). Com a IN BCB nº 371, a partir de 02/05/23, o envio das informações de identificação de contraparte tornou-se obrigatória para transações de pagamento. Para maiores detalhes, favor consultar a página `Orientações - Contas`. + + [Restrição] Quando o "type“ for preenchido com valor FOLHA_PAGAMENTO e a transmissora for a responsável pelo pagamento de salário (banco-folha), o partieCnpjCpf informado deve ser do empregador relacionado. + example: '43908445778' + partiePersonType: + $ref: '#/components/schemas/EnumPartiePersonType' + partieCompeCode: + type: string + maxLength: 3 + pattern: '^\d{3}$' + description: 'Código identificador atribuído pelo Banco Central do Brasil às instituições participantes do STR (Sistema de Transferência de reservas) referente à pessoa envolvida na transação. O número-código substituiu o antigo código COMPE. Todos os participantes do STR, exceto as Infraestruturas do Mercado Financeiro (IMF) e a Secretaria do Tesouro Nacional, possuem um número-código independentemente de participarem da Centralizadora da Compensação de Cheques (Compe).' + example: '001' + partieBranchCode: + type: string + maxLength: 4 + pattern: '^\d{4}$' + description: 'Código da Agência detentora da conta da pessoa envolvida na transação. (Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito, no exercício de atividades da instituição, não podendo ser móvel ou transitória)' + example: '6272' + partieNumber: + type: string + maxLength: 20 + pattern: '^\d{8,20}$' + description: Número da conta da pessoa envolvida na transação + example: '67890854360' + partieCheckDigit: + type: string + maxLength: 1 + pattern: '[\w\W\s]*' + description: Dígito da conta da pessoa envolvida na transação + example: '4' + codeISPB: + type: string + pattern: '^\d{8}$' + description: | + Código único atribuído pelo Banco Central do Brasil a cada instituição participante do Sistema de Pagamentos. + + Este campo identifica o ISPB da instituição contraparte da transação e deve ser preenchido de acordo com o atributo que indica o sentido financeiro da transação, de acordo com o campo `creditDebitType`: + - Para transações de `CREDITO` (entrada de recursos na conta): informar o ISPB da instituição de origem dos recursos. + - Para transações de `DEBITO` (saída de recursos na conta): informar o ISPB da instituição de destino dos recursos. + example: '00300300' + AccountTransactionsDataAmount: + type: object + description: Valor da transação. Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimais. + required: + - amount + - currency + properties: + amount: + type: string + format: double + pattern: '^\d{1,15}\.\d{2,4}$' + maxLength: 20 + minLength: 4 + example: '1000.0400' + description: Valor relacionado ao objeto. + currency: + type: string + pattern: '^[A-Z]{3}$' + maxLength: 3 + description: 'Moeda referente ao valor monetário, seguindo o modelo ISO-4217.' + example: BRL + EnumAccountSubType: + type: string + enum: + - INDIVIDUAL + - CONJUNTA_SIMPLES + - CONJUNTA_SOLIDARIA + description: | + Subtipo de conta (vide Enum): + Conta individual - possui um único titular + Conta conjunta simples - onde as movimentações financeiras só podem serem realizadas mediante autorização de TODOS os correntistas da conta. + Conta conjunta solidária - é a modalidade cujos titulares podem realizar movimentações de forma isolada, isto é, sem que seja necessária a autorização dos demais titulares + example: INDIVIDUAL + EnumAccountType: + type: string + enum: + - CONTA_DEPOSITO_A_VISTA + - CONTA_POUPANCA + - CONTA_PAGAMENTO_PRE_PAGA + description: | + Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum + Conta de depósito à vista ou Conta corrente - é o tipo mais comum. Nela, o dinheiro fica à sua disposição para ser sacado a qualquer momento. Essa conta não gera rendimentos para o depositante + Conta poupança - foi criada para estimular as pessoas a pouparem. O dinheiro que ficar na conta por trinta dias passa a gerar rendimentos, com isenção de imposto de renda para quem declara. Ou seja, o dinheiro “cresce” (rende) enquanto ficar guardado na conta. Cada depósito terá rendimentos de mês em mês, sempre no dia do mês em que o dinheiro tiver sido depositado + Conta de pagamento pré-paga: segundo CIRCULAR Nº 3.680, BCB de 2013, é a 'destinada à execução de transações de pagamento em moeda eletrônica realizadas com base em fundos denominados em reais previamente aportados' + example: CONTA_DEPOSITO_A_VISTA + EnumCompletedAuthorisedPaymentIndicator: + type: string + description: | + Indicador da transação: + - Transação efetivada: a transação atinge esse status quando o `transactionId` torna-se imutável; + - Lançamento futuro: a transação será efetivada em momento futuro, ou seja, o `transactionId` pode mudar; + - Transação processando: a transação está em processamento, ou seja, o `transactionId` pode mudar. + enum: + - TRANSACAO_EFETIVADA + - LANCAMENTO_FUTURO + - TRANSACAO_PROCESSANDO + example: TRANSACAO_EFETIVADA + EnumCreditDebitIndicator: + type: string + description: | + Indicador do tipo de lançamento: + Débito (no extrato) Em um extrato bancário, os débitos, marcados com a letra “D” ao lado do valor registrado, informam as saídas de dinheiro na conta-corrente. + Crédito (no extrato) Em um extrato bancário, os créditos, marcados com a letra “C” ao lado do valor registrado, informam as entradas de dinheiro na conta-corrente. + enum: + - CREDITO + - DEBITO + example: DEBITO + EnumPartiePersonType: + type: string + enum: + - PESSOA_NATURAL + - PESSOA_JURIDICA + example: PESSOA_NATURAL + description: | + Identificação do Tipo de Pessoa da pessoa envolvida na transação. + Pessoa Natural - Informar CPF no campo “partieCnpjCpf”. + Pessoa Jurídica - Informar CNPJ no campo “partieCnpjCpf”. + EnumTransactionTypes: + type: string + description: | + O campo deve classificar a transação em um dos tipos descritos. + O transmissor deve classificar as transações disponíveis associando-a a um dos itens do Enum listado neste campo. + A opção OUTROS só deve ser utilizada para os casos em que de fato a transação compartilhada não possa ser classificada como um dos itens deste Enum. + Por exemplo no caso de recebimento de pensão alimentícia. + enum: + - TED + - DOC + - PIX + - TRANSFERENCIA_MESMA_INSTITUICAO + - BOLETO + - CONVENIO_ARRECADACAO + - PACOTE_TARIFA_SERVICOS + - TARIFA_SERVICOS_AVULSOS + - FOLHA_PAGAMENTO + - DEPOSITO + - SAQUE + - CARTAO + - ENCARGOS_JUROS_CHEQUE_ESPECIAL + - RENDIMENTO_APLIC_FINANCEIRA + - PORTABILIDADE_SALARIO + - RESGATE_APLIC_FINANCEIRA + - OPERACAO_CREDITO + - TRANSFERENCIA_SALDO_RESERVADO + - OUTROS + example: PIX + Links: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + last: + type: string + format: url + maxLength: 4048 + description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + LinksAccountId: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + last: + type: string + format: url + maxLength: 4048 + description: URI da última página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + TransactionsLinks: + type: object + description: Referências para outros recusos da API requisitada. + required: + - self + properties: + self: + type: string + format: url + maxLength: 4048 + description: URI completo que gerou a resposta atual. + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + first: + type: string + format: url + maxLength: 4048 + description: URI da primeira página que originou essa lista de resultados. Restrição - Obrigatório quando não for a primeira página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + prev: + type: string + format: url + maxLength: 4048 + description: "URI da página anterior dessa lista de resultados. Restrição - \tObrigatório quando não for a primeira página da resposta" + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + next: + type: string + format: url + maxLength: 4048 + description: URI da próxima página dessa lista de resultados. Restrição - Obrigatório quando não for a última página da resposta + example: 'https://api.banco.com.br/open-banking/api/v2/resource' + Meta: + type: object + description: Meta informações referente à API requisitada. + required: + - totalRecords + - totalPages + - requestDateTime + properties: + totalRecords: + type: integer + format: int32 + description: Número total de registros no resultado + example: 1 + totalPages: + type: integer + format: int32 + description: Número total de páginas no resultado + example: 1 + requestDateTime: + description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' + type: string + maxLength: 20 + format: date-time + example: '2021-05-21T08:30:00Z' + MetaOnlyRequestDateTime: + type: object + description: Meta informações referente à API requisitada. + required: + - requestDateTime + properties: + requestDateTime: + description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' + type: string + maxLength: 20 + format: date-time + example: '2021-05-21T08:30:00Z' + ResponseAccountList: + type: object + required: + - data + - links + - meta + properties: + data: + type: array + description: 'Lista de contas depósito à vista, poupança e pagamento pré-pagas mantidas pelo cliente na instituição transmissora e para as quais ele tenha fornecido consentimento' + minItems: 0 + items: + $ref: '#/components/schemas/AccountData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountBalances: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountBalancesData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseReservedBalances: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountReservedBalancesData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountIdentification: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountIdentificationData' + links: + $ref: '#/components/schemas/LinksAccountId' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountOverdraftLimits: + type: object + required: + - data + - links + - meta + properties: + data: + $ref: '#/components/schemas/AccountOverdraftLimitsData' + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Meta' + ResponseAccountTransactions: + type: object + required: + - data + - links + - meta + properties: + data: + type: array + description: | + Lista dos lançamentos referentes às transações realizadas e de lançamentos futuros para as contas de: depósito à vista, poupança e de pagamento pré-paga + minItems: 0 + items: + $ref: '#/components/schemas/AccountTransactionsData' + links: + $ref: '#/components/schemas/TransactionsLinks' + meta: + $ref: '#/components/schemas/MetaOnlyRequestDateTime' + ResponseErrorMetaSingle: + type: object + required: + - errors + properties: + errors: + type: array + minItems: 1 + maxItems: 13 + items: + type: object + required: + - code + - title + - detail + properties: + code: + description: Código de erro específico do endpoint + type: string + pattern: '[\w\W\s]*' + maxLength: 255 + title: + description: Título legível por humanos deste erro específico + type: string + pattern: '[\w\W\s]*' + maxLength: 255 + detail: + description: Descrição legível por humanos deste erro específico + type: string + pattern: '[\w\W\s]*' + maxLength: 2048 + meta: + $ref: '#/components/schemas/MetaOnlyRequestDateTime' + XFapiInteractionId: + type: string + format: uuid + maxLength: 36 + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + X-V: + type: string + pattern: '^\d+\.\d+\.\d+$' + example: 1.0.0 + parameters: + accountId: + name: accountId + in: path + description: 'Identificador da conta de depósito à vista, de poupança ou de pagamento pré-paga.' + required: true + schema: + type: string + pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' + maxLength: 100 + accountType: + name: accountType + description: 'Tipos de contas. Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas, conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica. Vide Enum.' + required: false + in: query + schema: + $ref: '#/components/schemas/EnumAccountType' + Authorization: + name: Authorization + in: header + description: Cabeçalho HTTP padrão. Permite que as credenciais sejam fornecidas dependendo do tipo de recurso solicitado + required: true + schema: + type: string + pattern: '[\w\W\s]*' + maxLength: 2048 + creditDebitIndicator: + name: creditDebitIndicator + description: Indicador do tipo de lançamento + required: false + in: query + schema: + $ref: '#/components/schemas/EnumCreditDebitIndicator' + fromBookingDate: + name: fromBookingDate + description: 'Data inicial de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' + required: false + in: query + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + fromBookingDateMaxLimited: + in: query + name: fromBookingDate + description: | + Data inicial de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). + [Restrição] Deve obrigatoriamente ser enviado caso o campo toBookingDate seja informado. + Caso não seja informado, deve ser assumido o dia atual. + required: false + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + toBookingDateMaxLimited: + in: query + name: toBookingDate + description: | + Data final de filtragem. O período máximo utilizado no filtro é de 7 dias inclusive (D-6). + [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. + Caso não seja informado, deve ser assumido o dia atual. + required: false + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + pagination-key: + name: pagination-key + in: query + description: 'Identificador de rechamada, utilizado para evitar a contagem de chamadas ao endpoint durante a paginação.' + schema: + type: string + maxLength: 2048 + pattern: '[\w\W\s]*' + page: + name: page + in: query + description: Número da página que está sendo requisitada (o valor da primeira página é 1). + schema: + type: integer + default: 1 + minimum: 1 + maximum: 2147483647 + format: int32 + pageSize: + name: page-size + in: query + description: Quantidade total de registros por páginas. + schema: + type: integer + default: 25 + minimum: 1 + format: int32 + maximum: 1000 + toBookingDate: + name: toBookingDate + description: 'Data final de filtragem. [Restrição] Deve obrigatoriamente ser enviado caso o campo fromBookingDate seja informado. Caso não seja informado, deve ser assumido o dia atual.' + required: false + in: query + schema: + type: string + maxLength: 10 + format: date + example: '2021-05-21' + xCustomerUserAgent: + name: x-customer-user-agent + in: header + description: Indica o user-agent que o usuário utiliza. + required: false + schema: + type: string + pattern: '[\w\W\s]*' + minLength: 1 + maxLength: 100 + xFapiAuthDate: + name: x-fapi-auth-date + in: header + description: 'Data em que o usuário logou pela última vez com o receptor. Representada de acordo com a [RFC7231](https://tools.ietf.org/html/rfc7231).Exemplo: Sun, 10 Sep 2017 19:43:31 UTC' + required: false + schema: + type: string + pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$' + minLength: 29 + maxLength: 29 + xFapiCustomerIpAddress: + name: x-fapi-customer-ip-address + in: header + description: O endereço IP do usuário se estiver atualmente logado com o receptor. + required: false + schema: + type: string + pattern: '[\w\W\s]*' + minLength: 1 + maxLength: 100 + xFapiInteractionId: + name: x-fapi-interaction-id + in: header + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + required: true + schema: + type: string + format: uuid + minLength: 1 + maxLength: 36 + pattern: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$' + example: d78fc4e5-37ca-4da3-adf2-9b082bf92280 + securitySchemes: + OpenId: + type: openIdConnect + openIdConnectUrl: 'https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration' + OAuth2Security: + type: oauth2 + description: Fluxo OAuth necessário para que a receptora tenha acesso aos dados na instituição transmissora. Requer o processo de redirecionamento e autenticação do usuário a que se referem os dados. + flows: + authorizationCode: + authorizationUrl: 'https://authserver.example/authorization' + tokenUrl: 'https://authserver.example/token' + scopes: + accounts: Escopo necessário para acesso à API Accounts. O controle dos endpoints específicos é feito via permissions. + responses: + OKResponseAccountList: + description: Dados de identificação das contas obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountList' + OKResponseAccountIdentification: + description: Dados de identificação da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountIdentification' + OKResponseAccountBalances: + description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountBalances' + OKResponseAccountReservedBalances: + description: Dados relativos aos saldos da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseReservedBalances' + OKResponseAccountTransactions: + description: Dados da lista de transações da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountTransactions' + OKResponseAccountOverdraftLimits: + description: Dados de limites da conta identificada por accountId obtidos com sucesso. + headers: + x-fapi-interaction-id: + required: true + description: 'Um UUID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação entre request e response. Campo de geração e envio obrigatório pela receptora (client) e o seu valor deve ser “espelhado” pela transmissora (server) no cabeçalho de resposta. Caso não seja recebido ou se for recebido um valor inválido, a transmissora deve gerar um x-fapi-interaction-id e retorná-lo na resposta com o HTTP Status Code 400. A receptora deve acatar o valor recebido da transmissora.' + schema: + $ref: '#/components/schemas/XFapiInteractionId' + x-v: + $ref: '#/components/headers/X-V' + content: + application/json: + schema: + $ref: '#/components/schemas/ResponseAccountOverdraftLimits' + BadRequestMetaSingle: + description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + ForbiddenMetaSingle: + description: O token tem escopo incorreto ou uma política de segurança foi violada + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + GatewayTimeoutMetaSingle: + description: GATEWAY TIMEOUT - A requisição não foi atendida dentro do tempo limite estabelecido + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + InternalServerErrorMetaSingle: + description: Ocorreu um erro no gateway da API ou no microsserviço + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + LockedMetaSingle: + description: Locked + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + MethodNotAllowedMetaSingle: + description: O consumidor tentou acessar o recurso com um método não suportado + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + NotAcceptableMetaSingle: + description: A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8 + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + NotFoundMetaSingle: + description: O recurso solicitado não existe ou não foi implementado + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + TooManyRequestsMetaSingle: + description: 'A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + UnauthorizedMetaSingle: + description: Cabeçalho de autenticação ausente/inválido ou token inválido + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + UnprocessableEntityMetaSingle: + description: 'A sintaxe da requisição esta correta, mas não foi possível processar as instruções presentes.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + DefaultMetaSingle: + description: Erro inesperado. + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + SiteIsOverloadedMetaSingle: + description: 'O site está sobrecarregado e a operação foi recusada, pois foi atingido o limite máximo de TPS global, neste momento.' + content: + application/json; charset=utf-8: + schema: + $ref: '#/components/schemas/ResponseErrorMetaSingle' + diff --git a/swagger-apis/accounts/index.html b/swagger-apis/accounts/index.html index b5a109f85..0fee0000d 100644 --- a/swagger-apis/accounts/index.html +++ b/swagger-apis/accounts/index.html @@ -70,8 +70,9 @@ {"name": "2.4.1", "url": "./2.4.1.yml"}, {"name": "2.4.2", "url": "./2.4.2.yml"}, {"name": "2.5.0-beta.1", "url": "./2.5.0-beta.1.yml"}, + {"name": "2.5.0-beta.2", "url": "./2.5.0-beta.2.yml"}, {"name": "2.5.0-rc.1", "url": "./2.5.0-rc.1.yml"}], - "urls.primaryName": "2.5.0-rc.1", // default spec + "urls.primaryName": "2.5.0-beta.2", // default spec dom_id: '#swagger-ui', deepLinking: true, supportedSubmitMethods:[], From 7aed200b5bd3427a27c4a6731bc6f76d2820f238 Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 18:25:27 -0300 Subject: [PATCH 6/7] =?UTF-8?q?feat(Accounts):=20EOF-1245=20-=20Ajuste=20n?= =?UTF-8?q?o=20Path=20do=20endpoint=20reserved=5Fbalances=20(vers=C3=A3o?= =?UTF-8?q?=202.5.0-beta.2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv | 2 +- swagger-apis/accounts/2.5.0-beta.2.yml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv index 77c4ef180..3f3e3dcfe 100644 --- a/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv +++ b/dictionary/accountsGetAccountsAccountIdBalances_v2.5.0.csv @@ -20,7 +20,7 @@ Expresso em valor monetário com no mínimo 2 casas e no máximo 4 casas decimai De toda forma, é preciso continuar respeitando o prazo máximo de tempestividade da API de Contas. ";Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2021-05-21T08:30:00Z; /data/hasReservedBalance;hasReservedBalance;"Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. -Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` +Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. diff --git a/swagger-apis/accounts/2.5.0-beta.2.yml b/swagger-apis/accounts/2.5.0-beta.2.yml index 7067fc536..5ef91bf94 100644 --- a/swagger-apis/accounts/2.5.0-beta.2.yml +++ b/swagger-apis/accounts/2.5.0-beta.2.yml @@ -40,7 +40,7 @@ info: ### `/accounts/{accountId}/overdraft-limits` - permissions: - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** - ### `/accounts/{accountId}/reserved_balances` + ### `/accounts/{accountId}/reserved-balances` - permissions: - GET: **ACCOUNTS_BALANCES_READ** @@ -415,7 +415,7 @@ paths: OAuth2Security: - 'consent:consentId' - accounts - '/accounts/{accountId}/reserved_balances': + '/accounts/{accountId}/reserved-balances': get: tags: - Accounts @@ -636,7 +636,7 @@ components: type: boolean description: | Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. - Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos. From 7cf7bf0c69c95e15e7467ba86edb46ebef53c5a2 Mon Sep 17 00:00:00 2001 From: michelinefelix Date: Mon, 10 Nov 2025 18:28:24 -0300 Subject: [PATCH 7/7] =?UTF-8?q?feat(Accounts):=20EOF-1245=20-=20Ajuste=20n?= =?UTF-8?q?o=20Path=20do=20endpoint=20reserved=5Fbalances=20(vers=C3=A3o?= =?UTF-8?q?=202.5.0-rc.1)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- swagger-apis/accounts/2.5.0-rc.1.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/swagger-apis/accounts/2.5.0-rc.1.yml b/swagger-apis/accounts/2.5.0-rc.1.yml index 0c37a8c9a..19c88cfa6 100644 --- a/swagger-apis/accounts/2.5.0-rc.1.yml +++ b/swagger-apis/accounts/2.5.0-rc.1.yml @@ -40,7 +40,7 @@ info: ### `/accounts/{accountId}/overdraft-limits` - permissions: - GET: **ACCOUNTS_OVERDRAFT_LIMITS_READ** - ### `/accounts/{accountId}/reserved_balances` + ### `/accounts/{accountId}/reserved-balances` - permissions: - GET: **ACCOUNTS_BALANCES_READ** @@ -415,7 +415,7 @@ paths: OAuth2Security: - 'consent:consentId' - accounts - '/accounts/{accountId}/reserved_balances': + '/accounts/{accountId}/reserved-balances': get: tags: - Accounts @@ -636,7 +636,7 @@ components: type: boolean description: | Informa se o cliente possui um saldo reservado. Caso o cliente possua reservas de saldo ativas, inclusive nos casos de saldo zerado, o valor enviado deve ser `TRUE`. - Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved_balances` + Caso o cliente não possua o produto, deve ser `FALSE`. Se o campo retornar `TRUE`, os dados do saldo reservado se encontram no endpoint `GET /accounts/{accountId}/reserved-balances` [Restrição] Campo de envio obrigatório pela transmissora que oferta produtos de reservas de saldo atrelados à conta. Este campo refere-se exclusivamente a saldos de reserva que não estão associados a investimentos.