Instrução Normativa BCB N° 574
Sumário Regulatório
Extraído do BCB
Conteúdo do Documento
INSTRUÇÃO NORMATIVA BCB Nº 574, DE 20 DE DEZEMBRO DE 2024 Divulga a versão 6.0 do Manual de APIs do Open Finance. Os Chefes do Departamento de Regulação do Sistema Financeiro (Denor) e do Departamento de Tecnologia da Informação (Deinf), no uso das atribuições que lhes conferem o art. 23, inciso I, alínea "a", do Regimento Interno do Banco Central do Brasil, anexo à Re...
<span style="font-family:calibri;font-size:17.3333px;">
</span><span style="font-family:calibri;font-size:17.3333px;">
</span><style style="font-family:calibri;font-size:17.3333px;">
</style><span style="font-family:calibri;font-size:17.3333px;">
</span><div class="WordSection1">
<p class="MsoNormal" align="center" style="margin-bottom:18pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;">INSTRUÇÃO NORMATIVA BCB Nº 574, DE 20
DE DEZEMBRO DE 2024</span></p>
<p class="MsoNormal" style="margin:0cm 0cm 18pt 9cm;"><span style="font-family:calibri;font-size:17.3333px;"> Divulga a versão 6.0 do Manual de APIs
do <i>Open Finance</i>.</span></p>
<p class="MsoNormal" style="margin-bottom:18pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Os
Chefes do Departamento de Regulação do Sistema Financeiro (Denor) e do
Departamento de Tecnologia da Informação (Deinf), no uso das atribuições que
lhes conferem o art. 23, inciso I, alínea "a", do Regimento Interno
do Banco Central do Brasil, anexo à Resolução BCB nº 340, de 21 de setembro de
2023, com base no art. 3º, inciso II, da Resolução BCB nº 32, de 29 de outubro
de 2020,</span></p>
<p class="MsoNormal" style="margin-bottom:18pt;text-indent:70.9pt;"><span style="font-family:calibri;font-size:17.3333px;"> R
E S O L V E M :</span></p>
<p class="MsoNormal" style="margin-bottom:6pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Art.
1º  Esta Instrução Normativa divulga a versão 6.0 do Manual de APIs do <i>Open Finance</i>,
<a name="_Hlk55486380">de observância obrigatória por parte das instituições
participantes,</a> conforme Anexo.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Parágrafo
único.  O manual de que
trata o <i>caput</i>, em sua versão mais recente, estará acessível na página do
<i>Open Finance</i> no sítio eletrônico do Banco Central do Brasil na internet
e no Portal do <i>Open Finance</i> no Brasil, mantido pela Estrutura de
Governança do <i>Open Finance</i> de que trata o art. 44, § 1º, da Resolução
Conjunta nº 1, de 4 de maio de 2020.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Art.
2º  Fica revogada a Instrução Normativa nº 456, de
29 de fevereiro de 2024, publicada no Diário Oficial da União de 1º de março de
2024.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:12pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Art. 3º  Esta Instrução Normativa
entra em vigor em 1º de julho de 2025.</span></p>
<p class="MsoNormal" style="text-indent:70.9pt;"><span style="font-family:calibri;font-size:17.3333px;">RENATO
KIYOTAKA UEMA                         HAROLDO JAYME MARTINS FROES CRUZ<br></span><span style="font-family:calibri;font-size:17.3333px;text-indent:70.9pt;">                        Chefe
do Denor, substituto                       Chefe do Deinf</span></p><span style="font-family:calibri;font-size:17.3333px;">
</span><span style="font-family:calibri;font-size:17.3333px;"><br clear="all">
</span><span style="font-family:calibri;font-size:17.3333px;">
</span><p class="MsoNormal" align="left" style="text-align:left;"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal" align="center" style="margin-bottom:6pt;text-align:center;"><b style="font-family:calibri;font-size:17.3333px;">ANEXO À INSTRUÇÃO NORMATIVA BCB Nº 574,
DE 20 DE DEZEMBRO DE 2024</b></p>
<p class="MsoNormal" align="center" style="margin-bottom:6pt;text-align:center;"><b style="font-family:calibri;font-size:17.3333px;">Manual de APIs do <i>Open Finance</i> Versão
6.0</b></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><a name="_Toc14166332"></a><a name="_Toc14193634"></a><a name="_Toc14354699"></a><a name="_Toc14354849"></a><a name="_Toc14681789"></a><a name="_Toc52541656"></a><a name="_Toc54368699"></a><a name="_Toc54717499"><b style="font-family:calibri;font-size:17.3333px;">Histórico
de revisão</b></a></p>
<table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" width="680" style="width:510.05pt;border-collapse:collapse;border:none;">
<tbody><tr style="height:11.75pt;">
<td width="100" valign="top" style="width:75.15pt;border:1pt solid windowtext;padding:0cm 5.4pt;height:11.75pt;">
<p align="center" style="margin:0cm 0cm 6pt;text-align:center;"><b style="font-family:calibri;font-size:17.3333px;">Data</b></p>
</td>
<td width="62" valign="top" style="width:46.4pt;border-top:1pt solid windowtext;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:none;padding:0cm 5.4pt;height:11.75pt;">
<p align="center" style="margin:0cm 0cm 6pt;text-align:center;"><b style="font-family:calibri;font-size:17.3333px;">Versão</b></p>
</td>
<td width="518" valign="top" style="width:388.5pt;border-top:1pt solid windowtext;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:none;padding:0cm 5.4pt;height:11.75pt;">
<p align="center" style="margin:0cm 0cm 6pt;text-align:center;"><b style="font-family:calibri;font-size:17.3333px;">Descrição
das alterações</b></p>
</td>
</tr>
<tr style="height:18.6pt;">
<td width="100" rowspan="2" style="width:75.15pt;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 5.4pt;height:18.6pt;">
<p align="center" style="margin:0cm 0cm 6pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;">20/12/2024</span></p>
</td>
<td width="62" rowspan="2" style="width:46.4pt;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 5.4pt;height:18.6pt;">
<p align="center" style="margin:0cm 0cm 6pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;">6.0</span></p>
</td>
<td width="518" valign="top" style="width:388.5pt;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 5.4pt;height:18.6pt;">
<p class="MsoNormal" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;">Seção
1: atualização de definições.</span></p>
</td>
</tr>
<tr style="height:18.6pt;">
<td width="518" valign="top" style="width:388.5pt;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 5.4pt;height:18.6pt;">
<p class="MsoNormal" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;">Subseção
5.1.2: detalhamento sobre o controle do volume de requisições com <i>status
code</i> HTTP 529.</span></p>
</td>
</tr>
</tbody></table>
<p class="MsoNormal" style="margin-bottom:6pt;"><a name="_Toc52541658"></a><a name="_Toc54366376"></a><a name="_Toc54717501"><span style="font-family:calibri;font-size:17.3333px;"> </span></a></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><b style="font-family:calibri;font-size:17.3333px;">Termos de Uso</b></p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc52541659"><span style="font-family:calibri;font-size:17.3333px;">Este manual detalha os requisitos
técnicos para a implementação dos elementos necessários à operacionalização do <i>Open
Finance</i>, complementando a regulamentação vigente sobre o tema.</span></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">O
manual será revisto e atualizado periodicamente a fim de preservar a
compatibilidade com a regulamentação, bem como para incorporar os
aprimoramentos decorrentes da evolução do <i>Open Finance</i> e da tecnologia.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Informações
mais detalhadas e exemplos da aplicação deste manual poderão ser encontrados
nos guias e tutoriais disponíveis no Portal do <i>Open Finance</i> no Brasil,
na Área do Desenvolvedor.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Sugestões,
críticas ou pedidos de esclarecimento de dúvidas relativas ao conteúdo deste
documento podem ser enviados ao Banco Central do Brasil por meio dos canais
institucionais dessa autarquia.</span></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><a name="_Toc54366377"></a><a name="_Toc54717502"><b style="font-family:calibri;font-size:17.3333px;">Referências</b></a></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações baseiam-se, referenciam e complementam, quando aplicável, os
seguintes documentos:</span></p>
<table class="MsoNormalTable" border="1" cellspacing="0" cellpadding="0" width="680" style="width:18cm;margin-left:-0.25pt;border-collapse:collapse;border:none;">
<tbody><tr style="height:12.1pt;">
<td width="265" style="width:7cm;border:1pt solid windowtext;background:white;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" align="center" style="text-align:center;"><b style="font-family:calibri;font-size:17.3333px;"><span style="color:black;">Referência</span></b></p>
</td>
<td width="416" style="width:11cm;border-top:1pt solid windowtext;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:none;background:white;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" align="center" style="text-align:center;"><b style="font-family:calibri;font-size:17.3333px;"><span style="color:black;">Origem</span></b></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;">Resolução
Conjunta nº 1, de 2020</span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;">https://www.bcb.gov.br/estabilidadefinanceira/exibenormativo?tipo=Resolu%C3%A7%C3%A3o%20Conjunta&numero=1<span class="MsoHyperlink" style="font-family:calibri;font-size:17.3333px;"><span style="color:windowtext;"> </span></span></span></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;">Resolução
BCB nº 32, de 2020</span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;">https://www.bcb.gov.br/estabilidadefinanceira/exibenormativo?tipo=Resolu%C3%A7%C3%A3o%20BCB&numero=32</span></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">Hypertext
Transfer Protocol – HTTP/1.1</span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;"><span lang="EN-US">https://tools.ietf.org/html/rfc2616</span><span lang="EN-US"> </span></span></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">ISO
20022</span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span style="font-family:calibri;font-size:17.3333px;">https://www.iso20022.org/<span class="MsoHyperlink" style="font-family:calibri;font-size:17.3333px;"><span style="color:windowtext;"> </span></span></span></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">OpenAPI
Specification</span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">https://github.com/OAI/OpenAPI-Specification/blob/3.0.0/versions/3.0.0.md<span class="MsoHyperlink" style="font-family:calibri;font-size:17.3333px;"><span style="color:windowtext;"> </span></span></span></p>
</td>
</tr>
<tr style="height:12.1pt;">
<td width="265" style="width:7cm;border-right:1pt solid windowtext;border-bottom:1pt solid windowtext;border-left:1pt solid windowtext;border-top:none;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">Representational
State Transfer </span></p>
</td>
<td width="416" style="width:11cm;border-top:none;border-left:none;border-bottom:1pt solid windowtext;border-right:1pt solid windowtext;padding:0cm 3.5pt;height:12.1pt;">
<p class="MsoNormal" style="margin:2pt 0cm;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;">https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm<span class="MsoHyperlink" style="font-family:calibri;font-size:17.3333px;"><span style="color:windowtext;"> </span></span></span></p>
</td>
</tr>
</tbody></table>
<p style="margin:0cm;text-align:justify;"><span lang="EN-US" style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><a name="_Toc52541660"></a><a name="_Toc54366378"></a><a name="_Toc54717503"></a><a name="_Toc47386159"></a><b style="font-family:calibri;font-size:17.3333px;">1. Introdução</b></p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">O
<i>Open Finance</i> está intrinsecamente ligado às APIs, interfaces por meio
das quais é possível interligar os diferentes sistemas das instituições. Ao
serem disponibilizadas pelos participantes, as APIs devem satisfazer condições tais como padronização, robustez e
segurança, a fim de que o objetivo de compartilhamento de dados e serviços seja
atendido a contento.</span></p><div style="text-align:justify;">
</div><p style="margin:0cm 0cm 6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Nesse
sentido, este manual visa a definir os principais aspectos relativos às
especificações e implementações das APIs que integram o <i>Open Finance</i> no País,
observando as disposições da Resolução Conjunta nº 1, de 4 de maio de 2020, e
da Resolução BCB nº 32, de 29 de outubro de 2020.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">São
tratados neste manual aspectos como: formato para a troca de dados, desenho da
interface, protocolo para transmissão de dados, versionamento, modelo de APIs e
<i>endpoints.</i> Desse modo, o manual estabelece as diretrizes gerais sem
esgotar todos os aspectos necessários à implementação das APIs para o <i>Open
Finance</i>. As demais definições a cargo das instituições participantes, por
meio da Estrutura de Governança do <i>Open Finance</i>, estarão disponíveis no
Portal do <i>Open Finance </i>no Brasil, no qual poderão ser encontrados guias,
tutoriais e outras informações operacionais sobre as APIs.</span></p><div style="text-align:justify;">
</div><p style="margin:0cm 0cm 6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Ao longo
deste manual, será constante o uso de siglas e terminologia específica para
designar algumas expressões cotidianas dos profissionais da área de tecnologia.
Alguns exemplos das mais frequentemente utilizadas, com as correspondentes
definições, são as seguintes:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- API (<i>Application
Programming Interface</i>): um conjunto de definições sobre como um sistema
pode acessar dados ou funcionalidades providos por um outro sistema;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- REST (<i>Representational
State Transfer</i>): estilo arquitetural de
<i>software</i>;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- API RESTful: API que adere às restrições do estilo arquitetural REST;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- OpenAPI: linguagem de especificação de APIs RESTful;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V
- <i>endpoint</i>: elemento
de uma especificação OpenAPI sobre o qual podem ser executadas operações para
acessar dados ou funcionalidades;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VI
- HTTP (<i>Hypertext Transfer Protocol</i>): protocolo
para sistemas hipermídia, distribuídos e colaborativos; </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VII
- operação: elemento de uma especificação OpenAPI que declara uma maneira
válida de se acessar um <i>endpoint</i>, informando qual método HTTP (GET, POST
etc.) utilizar, nomes e tipos de parâmetros;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VIII
- provedor da API: instituição que disponibiliza uma API para ser consumida por
outras instituições. Nas APIs de "Serviços de Iniciação de Pagamentos",
é a instituição detentora de contas; no caso de APIs de "Dados Cadastrais
e Transacionais", é a instituição transmissora de dados;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IX
- consumidor da API: instituição que consome uma API provida por outras
instituições. Nas APIs de "Serviços de Iniciação de Pagamentos", é a
instituição iniciadora de pagamentos; no caso de APIs de "Dados Cadastrais
e Transacionais", é a instituição receptora de dados; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">X
- <i>gateway</i> de API: é
um serviço, dispositivo ou <i>proxy</i> que atua como intermediário, aceitando,
transformando, encaminhando e gerenciando o tráfego de APIs para serviços de <i>back-end</i>.
Ele permite a comunicação e a transferência de dados entre <i>endpoints</i> e
pode ser útil quando há várias plataformas que precisam interagir umas com as
outras sem conceder acesso direto às APIs umas das outras. Além disso, um <i>gateway</i>
de API pode lidar com tarefas como autenticação, limitação de taxas,
armazenamento em cache e transformação de solicitação/resposta, reduzindo a
carga sobre o aplicativo e melhorando a segurança geral e o desempenho do
sistema.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687726"></a><a name="_Toc54366379"></a><a name="_Toc54717504"><b style="font-family:calibri;font-size:17.3333px;">2. APIs do </b></a><b style="font-family:calibri;font-size:17.3333px;"><i>Open Finance</i></b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
APIs a serem providas pelas instituições no âmbito do <i>Open Finance</i> devem
ser categorizadas em um dos seguintes tipos:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- Dados Abertos;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- Dados Cadastrais e Transacionais;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- Serviços; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- Relatórios e Métricas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687727"></a><a name="_Toc54366380"></a><a name="_Toc54717505"><b style="font-family:calibri;font-size:17.3333px;">3. Princípios</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Os
princípios abaixo norteiam as especificações e implementações das APIs do <i>Open
Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687728"></a><a name="_Toc54366381"></a><a name="_Toc54717506"><b style="font-family:calibri;font-size:17.3333px;">3.1 Experiência do usuário</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações e implementações das APIs devem oferecer uma boa experiência
para os usuários, sejam eles implementadores ou consumidores das APIs.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687729"></a><a name="_Toc54366382"></a><a name="_Toc54717507"><b style="font-family:calibri;font-size:17.3333px;">3.2 Independência de tecnologia</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações das APIs devem ser independentes de tecnologia, podendo ser
implementadas e consumidas em diferentes linguagens, tais como Java, JavaScript
e Python; ou plataformas, tais como Windows, Linux, Android e iOS.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687730"></a><a name="_Toc54366383"></a><a name="_Toc54717508"><b style="font-family:calibri;font-size:17.3333px;">3.3 Segurança</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Procedimentos
e controles (assinaturas digitais, criptografia, protocolos de autenticação e
autorização, entre outros) devem ser adotados de forma a proteger os
participantes do <i>Open Finance</i>, seus clientes, os consumidores das APIs e
demais participantes do ecossistema, observada a compatibilidade com a política
de segurança cibernética da instituição.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687731"></a><a name="_Toc54366384"></a><a name="_Toc54717509"><b style="font-family:calibri;font-size:17.3333px;">3.4 Extensibilidade</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">No
futuro, as APIs poderão ser evoluídas para atender a novos casos de uso e,
portanto, devem ser especificadas e implementadas de forma a permitir e
facilitar extensões como, por exemplo, novos <i>endpoints</i>, operações,
parâmetros e propriedades.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687732"></a><a name="_Toc54366385"></a><a name="_Toc54717510"><b style="font-family:calibri;font-size:17.3333px;">3.5 Padrões abertos</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Padrões
abertos devem ser adotados sempre que possível.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687733"></a><a name="_Toc54366386"></a><a name="_Toc54717511"><b style="font-family:calibri;font-size:17.3333px;">3.6 APIs RESTful</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações das APIs devem atender às restrições do estilo arquitetural REST
sempre que possível.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687734"></a><a name="_Toc54366387"></a><a name="_Toc54717512"><b style="font-family:calibri;font-size:17.3333px;">3.7 ISO 20022</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
respostas das APIs devem ter como base os elementos e componentes de mensagem ISO
20022 (https://www.iso20022.org/). Os casos particulares em que a adoção do
padrão ISO não seja possível ou recomendada poderão sofrer adequações, desde
que especificamente apontados para avaliação pelo Banco Central do Brasil.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687735"></a><a name="_Toc54366388"></a><a name="_Toc54717513"><b style="font-family:calibri;font-size:17.3333px;">3.8 Declaração de obrigatoriedade</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todos
os elementos que compõem as especificações das APIs (<i>endpoints</i>,
operações, parâmetros, propriedades de respostas etc.) devem ser explicitamente
declarados como "Obrigatório", "Opcional" ou "Condicional",
caso sejam obrigatórios apenas em certas condições.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;line-height:107%;text-align:justify;"><span style="line-height:107%;font-family:calibri;font-size:17.3333px;">Funcionalidades que
sejam de implementação opcional pelo transmissor devem ficar explícitas na sua
documentação, tanto para informar adequadamente ao público transmissor, que
poderá ou não implementar a funcionalidade, quanto ao público consumidor, que pode
não encontrar a funcionalidade disponível em alguns transmissores.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687736"></a><a name="_Toc54366389"></a><a name="_Toc54717514"><b style="font-family:calibri;font-size:17.3333px;">4. Definições e recomendações</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
definições e recomendações abaixo devem ser observadas pelas especificações e
implementações das APIs do <i>Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687737"></a><a name="_Toc54366390"></a><a name="_Toc54717515"><b style="font-family:calibri;font-size:17.3333px;">4.1 Especificações</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
APIs devem ser especificadas com a versão 3.0.0 ou superior da linguagem OpenAPI (https://github.com/OAI/OpenAPI-Specification/blob/3.0.0/versions/3.0.0.md).</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações das APIs devem
ser analisadas com a versão 5.9.0 ou superior do <i>software</i> livre e de
código aberto Spectral (https://github.com/stoplightio/spectral/tree/v5.9.0). A
análise deve ser feita com o conjunto de regras (<i>ruleset</i>) padrão desta versão do <i>Spectral</i>. O
resultado da análise não deve conter erros ou alertas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">É
recomendado que a versão 3.0.25 ou superior do <i>software</i> livre e de
código aberto Swagger Codegen (https://github.com/swagger-api/swagger-codegen/tree/v3.0.25)
seja utilizada para gerar o código de clientes e também o código inicial de
implementações das APIs a partir de suas especificações. Recomenda-se que o
código gerado seja analisado com o intuito de identificar possíveis recursos da
linguagem OpenAPI que foram utilizados nas especificações, mas que não são
adequadamente suportados pelo Swagger Codegen e, possivelmente, por outros <i>softwares</i>
que trabalham com especificações OpenAPI. Caso isso ocorra, deve-se avaliar se
não é possível alterar as especificações para não mais fazer uso desses
recursos.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Devem
ser disponibilizadas implementações de exemplo das APIs. Os dados retornados
por elas não precisam ser dados reais e nem volumosos, pois o objetivo da
disponibilização é dar ao Banco Central do Brasil, aos implementadores e aos consumidores
das APIs mais um recurso para dirimir eventuais dúvidas acerca de suas especificações
e implementações.<a name="_Toc53687738"> É recomendado que o código inicial de
implementações das APIs mencionado anteriormente seja complementado de forma a
constituir-se nas implementações de exemplo.</a></span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
informações disponibilizadas nos dicionários de dados devem ser consistentes
com as especificações OpenAPI associadas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todos
os <i>endpoints </i>das APIs implementados devem ser previamente registrados no
diretório de participantes. </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todos
os <i>endpoints</i> registrados que retornem listas, caso os parâmetros sejam
válidos, devem retornar a lista associada, mesmo que seja lista vazia. Não é
considerado um retorno válido o erro 404, neste cenário, quando não houver a
informação associada.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc54366391"></a><a name="_Toc54717516"><b style="font-family:calibri;font-size:17.3333px;">4.2 Versionamento</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
versões das especificações das APIs serão tipificadas como "<i>major</i>",
"<i>minor</i>", "<i>patch</i>" e "<i>release candidate</i>"
de acordo com os critérios a seguir:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- <i>major</i>: inclui novas características da implementação, mudanças e
correções a serem incorporadas, que podem ser incompatíveis com versões
anteriores, por exemplo, v1.0.0 e v2.0.0;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- <i>minor</i>: pequenas mudanças nos elementos já existentes, com manutenção
da compatibilidade com as versões até a <i>major</i> imediatamente anterior,
por exemplo, v1.1.0 e v1.2.0;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- <i>patch</i>: esclarecimentos às especificações "<i>minor</i>", não
incluem alterações funcionais, por exemplo, v1.1.1, v1.1.2; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- <i>release candidate</i>: versões de pré-lançamento de qualquer versão futura
do tipo "<i>patch</i>", "<i>minor</i>" ou "<i>major</i>",
por exemplo, v1.0.0-rc e v1.0.0-rc2.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
Estrutura de Governança do <i>Open Finance</i>, de que trata o art. 44, § 1º,
da Resolução Conjunta nº 1, de 2020, pode lançar novas versões das APIs.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">O
Banco Central do Brasil pode definir:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- o cronograma de implantação das novas versões das especificações das APIs e de
certificação das instituições participantes; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- a tipificação de determinadas alterações como "<i>minor</i>" ou "<i>patch</i>"
independentemente dos critérios definidos nos incisos de I a IV desta subseção.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Alterações
feitas na especificação de uma API devem sempre ser documentadas com um novo
versionamento desta especificação.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
fim, credenciais de acesso associadas às APIs devem ser agnósticas às suas
versões.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc54717517"></a><a name="_Toc53687739"></a><a name="_Toc54366392"><b style="font-family:calibri;font-size:17.3333px;">4.3 Portal do </b></a><b style="font-family:calibri;font-size:17.3333px;"><i>Open Finance</i></b><b style="font-family:calibri;font-size:17.3333px;"> no Brasil</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Hlk53687679"><span style="font-family:calibri;font-size:17.3333px;">O sítio eletrônico de que trata o art.
15 da Resolução BCB nº 32, de 2020, </span></a><span style="font-family:calibri;font-size:17.3333px;">deverá
conter definições e recomendações acessórias não presentes neste manual, bem
como outros artefatos necessários à especificação, implementação e consumo das
APIs do <i>Open Finance</i>. Todas as definições e recomendações acessórias e
artefatos publicados no portal deverão estar em concordância com este e com os
demais manuais do <i>Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687740"></a><a name="_Toc54366393"></a><a name="_Toc54717518"><b style="font-family:calibri;font-size:17.3333px;">4.4 Cronograma</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">O
Portal do <i>Open Finance</i> deverá listar as APIs em produção, suas versões
atuais, datas em que entraram em produção, <i>link</i> para suas especificações
e lista de mudanças desde a última publicação. Também deverá apresentar o
cronograma de homologação das APIs, indicando versão, data de divulgação, data
prevista de entrada em produção e outras informações relevantes. </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">4.5 <i>Logs</i> de mudanças</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todas
as versões já publicadas das APIs devem ser listadas no Portal do <i>Open
Finance</i>, juntamente com os respectivos <i>logs</i> de mudanças e períodos
em que estiveram em produção.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687741"></a><a name="_Toc54366394"></a><a name="_Toc54717519"><b style="font-family:calibri;font-size:17.3333px;">4.6 Definições acessórias</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
Estrutura de Governança do <i>Open Finance</i> deverá estabelecer e publicar no
Portal do <i>Open Finance</i> um guia de estilo de especificações de APIs
contendo definições e recomendações para os seguintes elementos:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- estrutura de <i>Uniform Resource Identifiers</i> (URIs);</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- cabeçalhos HTTP;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- códigos de <i>status</i> HTTP;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- convenções de corpo de requisições e respostas;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V
- convenções de nomenclatura;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VI
- tipos de dados comuns;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VII
- paginação; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VIII
- estabilidade de identificadores.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687742"></a><a name="_Toc54366395"></a><a name="_Toc54717520"><b style="font-family:calibri;font-size:17.3333px;">4.7 Processo de gerência de mudanças</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.05pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A Estrutura de Governança do <i>Open
Finance</i> deve estabelecer
e publicar no Portal do <i>Open Finance</i> o processo que ela adotará para
gerenciar mudanças nas especificações das APIs.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">4.8 Tutoriais</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todas
as informações necessárias para o desenvolvimento, testes e entrada em produção
de aplicações ou APIs no <i>Open Finance</i> devem estar disponíveis em
tutoriais publicados na Área do Desenvolvedor no Portal do <i>Open Finance</i>.
Cada tutorial deve conter todos os passos necessários para o completo
desenvolvimento da atividade em questão, como desenvolvimento e uso de
aplicações e APIs, autenticação e autorização, uso da <i>Sandbox</i>, aplicação
de testes de conformidade e cadastramento no diretório. Quando pertinente,
devem ser fornecidos exemplos de código fonte ou de capturas de telas, tornando
o processo o mais claro possível para todos os participantes e interessados.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">4.9 Extensibilidade</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
especificações das APIs do <i>Open Finance</i> podem não dar acesso a todos os
dados e funcionalidades que um ou mais participantes desejam expor para os
consumidores das APIs. Isso pode ser necessário para melhor suportar casos de
uso ou possibilitar inovações em produtos e serviços financeiros. Para atender
estas e outras necessidades, é facultado aos participantes implementarem
versões estendidas das APIs inteiramente compatíveis com as especificações
padrões das APIs que são:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- novos <i>endpoints</i>;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- novas operações em <i>endpoints</i> pré-existentes;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- novos parâmetros em operações pré-existentes, desde que opcionais; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- novas propriedades em respostas pré-existentes.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
Estrutura de Governança do <i>Open Finance</i> deverá publicar no Portal do <i>Open
Finance</i> as definições e recomendações acessórias relacionadas às extensões
das APIs.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todas
as extensões implementadas pelos participantes deverão estar listadas, com sua
documentação referenciada, em seção específica no Portal do <i>Open Finance</i>
e disponíveis para consumo, observadas as regras de ressarcimento de despesas
previstas na regulamentação vigente.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687743"></a><a name="_Toc54366396"></a><a name="_Toc54717521"><b style="font-family:calibri;font-size:17.3333px;">5. Requisitos não funcionais</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"> Esta seção apresenta os requisitos não
funcionais que as instituições participantes devem observar na implementação
das APIs do <i>Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Para
auxiliar na definição de alguns requisitos não funcionais, é necessário que
cada <i>endpoint</i> seja classificado no Portal do <i>Open Finance</i> de
acordo com a sua frequência de atualização dos dados, conforme as opções abaixo:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- alta frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- média-alta frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- média frequência; e </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- baixa frequência </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Os
Limites de tráfego por origem, limites operacionais e tempo de resposta
(desempenho) serão definidos baseados nessa classificação.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;line-height:107%;text-align:justify;"><span style="line-height:107%;font-family:calibri;font-size:17.3333px;">Os <i>endpoints</i>
das APIs do tipo "Serviços", das APIs de "Segurança" (<i>Token</i>
– consumo OAuth 2.0 (FAPI), <i>Token</i> – DCR/DCM) e das APIs de "Recursos"
e de "Consentimento" devem ser considerados como de alta frequência.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;line-height:107%;text-align:justify;"><span style="line-height:107%;font-family:calibri;font-size:17.3333px;">Destaca-se que,
especialmente em requisitos não funcionais, o termo "<i>endpoint</i>"
deve considerar as operações específicas associadas a cada caminho. Por
exemplo, as chamadas GET /consents/{consentId} e DELETE /consents/{consentId}
representam operações distintas e, portanto, devem ser monitoradas de forma
independente.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687744"></a><a name="_Toc54366397"></a><a name="_Toc54717522"><b style="font-family:calibri;font-size:17.3333px;">5.1 Limites de tráfego</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.1.1 Limites por origem</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Cada
<i>endpoint</i> implementado no <i>Open Finance</i> pode ter uma restrição
quanto ao tráfego a partir de determinada origem. Em APIs do tipo "Dados Abertos"
a origem é o IP de onde partiu a requisição, em APIs autenticadas é a <i>organizationId</i>
da instituição que fez a requisição.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">No
caso de uma instituição implementar limites, eles devem respeitar os valores
mínimos de Transações por Minuto (TPM). conforme definido abaixo:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- 2.000 TPM, por <i>endpoint</i> e por origem, em <i>endpoints</i>
classificados como de alta frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- 1.500 TPM, por <i>endpoint</i> e por origem, em <i>endpoints</i>
classificados como de média-alta frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- 1.000 TPM, por <i>endpoint</i> e por origem, em <i>endpoints</i>
classificados como de média frequência; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- 500 TPM, por <i>endpoint</i> e por origem, em <i>endpoints</i> classificados
como de baixa frequência.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Aplicabilidade:
Alguns <i>endpoints</i> não podem ter limites de tráfego definidos por origem,
como nas APIs do tipo "Serviços", nas APIs de "Segurança", e
de "Recursos" e de "Consentimento". A informação se o
limite por origem é "aplicável" ou "não aplicável" deve
estar explícito por <i>endpoint</i> no Portal do <i>Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
requisições que excederem os limites implementados deverão ser respondidas com <i>status
code</i> HTTP 429 (<i>Too Many Requests</i>).</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
fim, as requisições que ultrapassarem os limites deverão ser desprezadas no
cálculo do tempo de resposta das implementações das APIs.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.1.2 Limites globais </b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
infraestrutura das instituições provendo APIs no <i>Open Finance</i> deve ter a
capacidade de, no mínimo, atender a 300 requisições simultâneas por segundo
(TPS).</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Caso
uma instituição atinja o limite de 300 TPS, no contexto do <i>Open Finance</i>,
ela deve ampliar sua capacidade de infraestrutura para possibilitar um
acréscimo de 150 TPS ao limite anterior. Tal aumento deve ocorrer novamente a
cada vez que o limite vigente naquela instituição seja atingido. Eventual
redução pode ser realizada somente se durante trinta dias a capacidade a ser
reduzida não tiver sido utilizada.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
requisições que excederem os limites de TPS deverão ser respondidas com <i>status
code</i> HTTP 529 (<i>Site is overloaded</i>) e o seu volume diário deve ser inferior
a 0,5% das requisições válidas, nos termos da subseção 5.4 deste Manual.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Com
vistas a cumprir o limite máximo de volume de requisições com <i>status code</i>
HTTP 529, cada instituição deve implementar monitoramento preventivo, cuja
metodologia é definida pela Estrutura de Governança do <i>Open Finance </i>e
deve estar disponível no Portal do<i> Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
execução do processo de monitoramento preventivo não isenta a instituição
participante de aumentos emergenciais de infraestrutura para atender a 99,5%
das requisições válidas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;"><i>Endpoints</i>
criados dentro do conceito de extensibilidade, sejam dentro de novas APIs ou em
APIs existentes, não devem ser considerados para controle do limite global de
transações simultâneas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Considerando
que o Manual de Monitoramento do <i>Open Finance</i> estabelece que o período
de apuração do volume de requisições com <i>status code</i> HTTP 529 é mensal,
assim que o mês de referência se encerrar, a Estrutura de Governança do <i>Open
Finance</i> deve verificar se os volumes diários de requisições com <i>status
code</i> HTTP 529 de uma determinada instituição participante em relação às
suas requisições válidas foram superiores ou iguais ao limite de 0,5%.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Para
fins do processo de monitoramento, considera-se que uma determinada instituição
participante está em conformidade caso tenha respeitado o limite de 0,5% em
pelo menos 90% dos dias do mês de referência, arredondando-se para o número
inteiro mais próximo, desde que o volume diário de requisições com <i>status
code</i> HTTP 529 dos demais dias não tenha sido superior a 5%.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Evidências
do processo de acompanhamento de limites de TPS devem estar à disposição do
Banco Central do Brasil por um período de doze meses.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.2 Limites operacionais</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">É
facultado às instituições participantes implementar um limite de acesso mensal
por <i>endpoint </i>e por cliente. </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Em
<i>endpoints</i> que acessem recursos ou produtos, os limites serão também
considerados por recurso ou produto. </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
contabilização dos acessos deve ser feita por:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.15pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I - mês;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.15pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II - <i>endpoint</i>;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.15pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III - objeto
mais granular referenciado na chamada (consentimento/recurso/produto);</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.15pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV - cliente
(CPF ou CNPJ); e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin:0cm 0cm 6pt 0.15pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V - instituição
consumidora da informação.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
exemplo: uma instituição receptora "A" pode acessar um <i>endpoint</i>
"B", acessando o recurso "C", de um cliente "D" da
instituição transmissora "E", no mínimo "N" vezes (ou
chamadas) com sucesso por mês. </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Aplicabilidade
dos limites operacionais: todos os <i>endpoints </i>das APIs do tipo Dados Cadastrais e Transacionais
(conforme classificação por tipo),
excetuando-se os <i>endpoints</i> das APIs de Consentimento (<i>Consents</i>) e
Recursos (<i>Resources</i>). As APIs dos tipos Dados Abertos, de Serviços (como
de Iniciação de Pagamento) e de Segurança não podem ter restrições de limites
operacionais.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
implementação dos limites operacionais é opcional pelas instituições transmissoras,
mas, uma vez que sejam implementados, devem garantir o consumo mínimo
estabelecido no Portal do <i>Open Finance</i>. É facultada à instituição a
possibilidade de ampliar estes limites, mas vedada a implementação de limites inferiores
aos estabelecidos.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">O
Portal do <i>Open Finance</i> deve listar os valores mínimos de limites
operacionais a serem considerados, por <i>endpoint</i>, que devem ser iguais ou
maiores que os abaixo, de acordo com a classificação de frequência de utilização:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- 4 chamadas ao mês, para <i>endpoint</i> classificado como de baixa frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- 30 chamadas ao mês, para <i>endpoint</i> classificados como de média frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- 120 chamadas ao mês, para <i>endpoint</i> classificados como de média-alta frequência;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- 240 chamadas ao mês, para <i>endpoint</i> classificado como de alta frequência;
e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V
- 420 chamadas ao mês, para os seguintes <i>endpoints</i> da API de Contas: "Saldos
da conta" e "Limites da conta".</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Só
deverão ser contabilizadas nos limites operacionais as requisições respondidas
com <i>status code</i> HTTP 2XX (com sucesso), sendo que as requisições adicionais a um <i>endpoint</i>
para fins de paginação não devem ser contabilizadas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
requisições que excederem os limites operacionais deverão ser respondidas com <i>status
code</i> HTTP 423.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Todas
as requisições autenticadas em <i>endpoints</i> sujeitos ao limite operacional
devem possuir o atributo <i>x-fapi-interaction-id</i> preenchido no seu <i>header</i>
pela instituição receptora de dados, que deve ser copiado pela instituição transmissora
de dados nos <i>headers</i> da resposta. Essa definição objetiva permitir um
adequado rastreamento de divergências que podem ocorrer entre instituições
transmissoras e receptoras de dados associadas ao limite operacional.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687745"></a><a name="_Toc54366398"></a><a name="_Toc54717523"><b style="font-family:calibri;font-size:17.3333px;">5.3 Desempenho</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Deverá
ser medido o tempo de resposta de cada requisição, ou seja, o tempo
transcorrido entre o recebimento de uma requisição que não ultrapassa os
limites de tráfego e o momento em que a requisição é completamente respondida.
Adicionalmente, esta medição deverá ser feita de maneira que os tempos medidos
sejam os mais próximos possíveis dos tempos de resposta experimentados por quem
fez a requisição. A medição na instituição provedora da API deve iniciar quando
a requisição é recebida pelo <i>gateway</i> e deve terminar após o último <i>byte</i>
da resposta desta requisição ser enviado.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.3.1 Cálculo do desempenho</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Para
fins do cálculo do desempenho, deve-se considerar o valor do percentil 95 e as
requisições para medir o desempenho, que pretende minimizar impacto do
aparecimento de valores extremos (<i>outliers</i>). O valor do percentil 95
pode ser obtido da seguinte maneira:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- coleta dos dados: Seja R o conjunto de todos os tempos de resposta de um dia,
onde r<sub>i</sub> é o tempo de resposta da i-ésima requisição. Ou seja, R={r<sub>1</sub>,
r<sub>2</sub>, ..., r<sub>n</sub>};</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- cálculo do índice do percentil 95: o índice para o percentil 95, denotado por
i<sub>95</sub>, é calculado pela fórmula i<sub>95</sub> = 0.95 ∗ n, arredondado para o número inteiro mais próximo, e
onde n representa número de requisições;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- ordenação dos dados: Ordene o conjunto R em ordem crescente para obter o
conjunto ordenado R<sub>ord</sub>={r(1), r(2), ..., r(n)}, onde r(1) é o menor
tempo de resposta e r(n) é o maior; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- obtenção do valor do percentil 95: o valor do percentil 95, denotado por <i>P<sub>95</sub></i>,
é o valor no índice <i>i<sub>95</sub></i> no conjunto ordenado <i>R<sub>ord</sub></i>.
Ou seja, <i>P<sub>95</sub> = r<sub>(i95)</sub>.</i></span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Considerando
um exemplo em que um <i>endpoint</i> recebe 10.555 requisições em um dia (ou
seja, <i>n </i>= 10.555). Nesse caso, o índice para o percentil 95 será 10.027
(<i>i<sub>95</sub></i> = [<i>0.95 * n</i>] = [10.027,25] = 10.027). Após
ordenarmos as medições do tempo de resposta em ordem crescente (formando o
conjunto <i>R<sub>ord</sub></i>), o valor do percentil 95 (<i>P<sub>95</sub></i>)
para esse dia será igual ao tempo de resposta na posição 10.027 no conjunto
ordenado <i>R<sub>ord</sub></i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.3.2 <i>Service Level Agreement</i> (SLA) do desempenho</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Neste
contexto, os <i>endpoints</i> das APIs deverão manter, diariamente, o percentil
95 do tempo de resposta em no máximo:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- 1.500ms, em <i>endpoints</i> classificados como de alta e média-alta frequências;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- 2.000ms, em <i>endpoints</i> classificados como de média frequência; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- 4.000ms, em <i>endpoints</i> classificados como de baixa frequência.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
exemplo, em um dia que um <i>endpoint</i> de alta frequência receba 10.000
requisições, o tempo de resposta de pelo menos 9.500 requisições deve ser
inferior a 1.500ms.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Informações
adicionais:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- as medições de tempo de resposta devem ser realizadas de maneira independente
para cada versão "<i>major</i>" dos <i>endpoints</i> em produção;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- devem ser consideradas as requisições com todos os códigos de retorno
possíveis, com exceção dos associados a limites de tráfego e limites
operacionais;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- esta subseção não se aplica às APIs de "<i>Webhook</i>";</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- as instituições provedoras devem gerar e acompanhar seus indicadores de
desempenho, de maneira independente da Plataforma de Coleta de Métricas (PCM)
provida pela Estrutura de Governança do <i>Open Finance</i>;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V
- as instituições consumidoras das APIs devem registrar os tempos de resposta
das APIs que consomem para envio à PCM. Nelas, a medição do tempo de resposta
de cada requisição deve iniciar no momento antes da requisição ser feita e deve
terminar após o último <i>byte</i> ser recebido, antes de qualquer
processamento; </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VI
- o valor do tempo de resposta a ser considerado para uma requisição é o valor
reportado pelo consumidor da API;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VII
- na falta de informações dos consumidores, serão utilizadas as informações dos
provedores para o cálculo do SLA de desempenho; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VIII
- a Estrutura de Governança do <i>Open Finance</i> deverá disponibilizar indicadores
adicionais para monitoramento e aprimoramento do ecossistema, que não terão,
nesse momento, um SLA mínimo, tais como: </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">a)
percentil 95 do tempo de resposta somente de requisições com<i> status code</i>
2XX;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">b)
percentil 95 do tempo de resposta - provedor - deve considerar todas as requisições
fornecidas pelo provedor das APIs, mesmo quando houver diferença entre as
informações entre provedor e consumidor;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">c)
percentil 95 do tempo de resposta - consumidor - deve considerar todas as requisições
fornecidas pelos consumidores das APIs, mesmo quando houver diferença entre as
informações entre provedor e consumidor;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">d)
índice de paridade - percentual do número de requisições no <i>status</i> "<i>PAIRED</i>"
em relação ao total; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">e)
média do tempo de resposta até P<sub>95</sub> - média do tempo de resposta de
todas as requisições com tempo de resposta menores que o valor do P<sub>95</sub>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.3.3 Aferição do desempenho para fins do processo de monitoramento</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Considerando
que o Manual de Monitoramento do <i>Open Finance</i> estabelece que o período
de apuração do desempenho é mensal, assim que o mês de referência se encerrar,
a Estrutura de Governança do <i>Open Finance</i> deve verificar se os <i>endpoints</i>
das APIs das instituições participantes atenderam aos SLAs do desempenho
definidos na seção anterior deste manual.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Para
fins do processo de monitoramento, considera-se que um <i>endpoint</i> está em
conformidade caso tenha respeitado o SLA do desempenho em pelo menos 90% dos
dias do mês de referência, arredondando-se para o número inteiro mais próximo,
desde que o valor do P<sub>95</sub> dos demais dias não tenha sido superior ao
SLA do desempenho aumentado em 20%.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
exemplo:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- em um mês de 30 dias, em que um <i>endpoint</i> de alta frequência tenha
apresentado valor de P<sub>95</sub> inferior a 1.500ms em 27 dias e, nos demais
dias, tenha apresentado valor de P<sub>95</sub> entre 1.500ms e 1.800ms
(1.500ms * 1,2 = 1.800ms), o <i>endpoint</i> está em conformidade para fins do
processo de monitoramento naquele mês; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- em um mês de 31 dias, em que um <i>endpoint</i> de alta frequência tenha
apresentado valor de P<sub>95</sub> inferior a 1.500ms em 28 dias e, nos demais
dias, tenha apresentado, em pelo menos um dos dias, valor de P<sub>95</sub>
superior a 1.800ms (1.500ms * 1,2 = 1.800ms), o <i>endpoint</i> não está em
conformidade para fins do processo de monitoramento naquele mês.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><a name="_Toc53687746"></a><a name="_Toc54366399"></a><a name="_Toc54717524"><b style="font-family:calibri;font-size:17.3333px;">5.4 Disponibilidade</b></a></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.4.1 Cálculo da disponibilidade</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
disponibilidade dos <i>endpoints</i> das APIs do <i>Open Finance</i> será
calculada empiricamente, baseada na monitoração de requisições válidas. Serão
consideradas "requisições válidas" as requisições que retornam <i>status
code</i> da faixa 2XX, 5XX, igual a 408 ou igual a 422. As requisições válidas
podem ser divididas em "requisições válidas com sucesso" - com <i>status
code</i> na faixa 2XX ou igual a 422 - e "requisições válidas com erro"
- com <i>status code</i> na faixa 5XX ou igual a 408.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
disponibilidade pontual (t) será calculada como a fração do total de
requisições válidas que cada <i>endpoint</i> recebe e as que ele processa com
sucesso a cada intervalo de 1 minuto. Os intervalos de minuto deverão ser
calculados do segundo zero (0s:000ms) até o segundo 59 (59s:999ms).</span></p>
<p class="MsoNormal" align="center" style="margin-bottom:6pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;"><img src="https://www.bcb.gov.br/content/estabilidadefinanceira/buscanormas_especificos/2024/In_BCB_574/image001.png" alt="" style="margin:5px;" /></span> </p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
exemplo, a disponibilidade pontual de um <i>endpoint</i> referente ao minuto
11:34, de um determinado dia, no qual houve um total de requisições válidas com
sucesso de 255 e um total de requisições válidas com erro de 4, é calculada da
seguinte forma:</span></p>
<p class="MsoNormal" align="center" style="margin-bottom:6pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;"><img src="https://www.bcb.gov.br/content/estabilidadefinanceira/buscanormas_especificos/2024/In_BCB_574/image002.png" alt="" style="margin:5px;" /></span> </p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Dessa
forma, obtém-se o indicador percentual para cada janela de tempo de 1 minuto. Cada
 período de 1 minuto será classificado como "disponível" ou "indisponível".
Se a "disponibilidade pontual" da janela de tempo ficar abaixo de 95%
isso indicará que ela será considerada como "indisponível", caso
contrário será "disponível".</span></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;">Períodos
que não tenham requisições válidas são considerados "indefinidos" e
são desconsiderados para cálculo da disponibilidade.</span></p>
<p class="MsoNormal" align="center" style="text-align:center;"><span style="font-family:calibri;font-size:17.3333px;"><img src="https://www.bcb.gov.br/content/estabilidadefinanceira/buscanormas_especificos/2024/In_BCB_574/image003.png" alt="" style="margin:5px;" /></span> </p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;">A
disponibilidade diária será calculada baseada nas informações das
disponibilidades pontuais. </span></p>
<p class="MsoNormal" align="center" style="text-align:center;"><span style="font-family:calibri;font-size:17.3333px;"><img src="https://www.bcb.gov.br/content/estabilidadefinanceira/buscanormas_especificos/2024/In_BCB_574/image004.png" alt="" style="margin:5px;" /></span> </p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Por
exemplo, considerando um dia em que houve requisições válidas em 1.390 das 1.440
faixas de 1 minuto possíveis (1 dia = 24h * 60min= 1.440 faixas de horário)
para um <i>endpoint</i> específico "x" de versão 1, e dos quais 30
períodos tiveram a disponibilidade menor que o limite de disponibilidade
definido (95%), a Disponibilidade Diária de "x" v1 será igual a:</span></p>
<p class="MsoNormal" align="center" style="margin-bottom:6pt;text-align:center;"><span style="font-family:calibri;font-size:17.3333px;"></span> <img src="https://www.bcb.gov.br/content/estabilidadefinanceira/buscanormas_especificos/2024/In_BCB_574/image005.png" alt="" style="margin:5px;" /><br></p>
<p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
disponibilidade longa deverá ser calculada diariamente como média móvel das
disponibilidades dos últimos noventa dias corridos, considerando somente os dias
em que a disponibilidade diária pode ser calculada (teve pelo menos uma
disponibilidade pontual diferente de "indefinido"). Ou seja, caso nos
últimos noventa dias tenhamos dois dias calculados como indefinidos, a média
deve ser calculada considerando somente as 88 disponibilidades válidas.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A
aferição mensal deve considerar a disponibilidade longa do último dia do mês de
referência.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.4.2 SLA da disponibilidade</b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Cada
um dos <i>endpoints</i> das APIs categorizadas como "Dados Abertos", "Dados
Cadastrais e Transacionais", "Relatórios e Métricas", por
versão, e os <i>endpoints</i> das APIs de "Segurança" "/<i>register</i>"
e "/<i>token</i>", deverão satisfazer os requisitos mínimos de
disponibilidade abaixo: </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- disponibilidade diária (calendário): 95%; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- disponibilidade longa (média móvel de 90 dias), medida diariamente: 99,5%.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
APIs classificadas como "Serviços de Iniciação de Pagamentos" seguem
o definido na regulamentação do Pix.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Informações
adicionais:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">I
- as medições devem ser feitas todos os dias, em todas as faixas de 1 minuto
disponíveis, iniciando na primeira faixa (00:00:00-00:00:59) e terminando na
última faixa (23:59:00-23:59:59), considerando o horário de Brasília;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">II
- as medições de disponibilidade devem ser feitas para cada versão major dos <i>endpoints</i>
em produção. Por exemplo, em períodos de convivência o <i>endpoint</i> de v1/<i>resources</i>
poderia estar disponível no mesmo período em que o <i>endpoint</i> de v2/<i>resources</i>
estaria também disponível. É importante que suas disponibilidades sejam
calculadas de maneira independente;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">III
- as instituições provedoras devem gerar e acompanhar seus indicadores de
disponibilidade, de maneira independente da Plataforma de Coleta de Métricas
(PCM) provida pela Estrutura de Governança do <i>Open Finance</i>;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IV
- o <i>status code</i> a ser considerado para uma requisição é o valor
reportado pelo consumidor da API;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">V
- na falta de informações dos consumidores, serão utilizadas as informações dos
provedores para o cálculo do SLA de disponibilidade; </span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VI
- a indisponibilidade programada não exime o cálculo da disponibilidade no
período apurado;</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VII
 esta subseção não se aplica às APIs de "<i>Webhook</i>";</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">VIII
- a disponibilidade de <i>endpoints</i> que não tenham requisições válidas no
período apurado será considerada "indefinida", não estando sujeita a
um SLA; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">IX
- a Estrutura de Governança do <i>Open Finance</i> deverá disponibilizar indicadores
adicionais para monitoramento e aprimoramento do ecossistema que não terão,
nesse momento, um SLA mínimo, tais como:</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">a)
disponibilidade calculada do ponto de vista do provedor da API - deve
considerar as informações fornecidas pelo provedor das APIs; e</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">b)
disponibilidade calculada do ponto de vista do consumidor da API - deve
considerar as informações fornecidas somente pelos consumidores das APIs, classificadas
no PCM como "<i>PAIRED</i>" ou "<i>SINGLE</i>".</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><b style="font-family:calibri;font-size:17.3333px;">5.5 <i>Timeout</i></b></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">Padronização
do <i>timeout</i> de tempo de resposta do provedor e do tempo de resposta do
consumidor em quinze segundos.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">As
requisições que excederem o limite de <i>timeout</i> do provedor deverão ser
respondidas com o <i>status code</i> HTTP 504 (<i>Gateway Timeout</i>).</span></p>
<p class="MsoNormal" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal" align="right" style="margin-bottom:6pt;text-align:right;"><span style="font-family:calibri;font-size:17.3333px;">Brasília, 20 de dezembro de 2024.</span></p><span style="font-family:calibri;font-size:17.3333px;">
</span><span style="font-family:calibri;font-size:17.3333px;"><br clear="all">
</span><span style="font-family:calibri;font-size:17.3333px;">
</span><p class="MsoNormal" align="left" style="text-align:left;"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal" align="center" style="margin-bottom:18pt;text-align:center;"><span style="text-transform:uppercase;font-family:calibri;font-size:17.3333px;">NOTA 886/2024-BCB/DENOR,
DE 19 de DEZEMBRO de 2024.</span></p>
<p class="MsoNormal" style="margin:0cm 0cm 12pt 9cm;"><span style="font-family:calibri;font-size:17.3333px;">Fundamenta
proposta de edição de instrução normativa que estabelece a versão 6.0 do Manual
de APIs do <i>Open Finance</i>.</span></p>
<p class="MsoBodyText" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">                         Senhores
Chefes do Denor e do Deinf,</span></p><div style="text-align:justify;">
</div><p class="MsoBodyText" style="margin-bottom:6pt;text-indent:70.9pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">A presente Nota fundamenta proposta de
edição de instrução normativa pelo Departamento de Regulação do Sistema
Financeiro (Denor) e pelo Departamento de Tecnologia da Informação (Deinf), no
uso da atribuição que lhes confere o art. 23, inciso I, alínea "a", do
Regimento Interno do Banco Central do Brasil, anexo à Resolução BCB nº 340, de 21 de setembro de 2023, com
base no art. 51, inciso IX, da Resolução Conjunta nº 1, de 4 de maio de 2020.</span></p><div style="text-align:justify;">
</div><p class="MsoBodyText" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">2.                     A
respeito, a proposta trata de edição de instrução normativa que estabelece a
versão 6.0 do Manual de APIs do <i>Open Finance</i>, revogando a Instrução
Normativa BCB nº 456, de 29 de fevereiro de 2024, que divulga a versão 5.0 do
Manual de APIs do <i>Open Finance</i>.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">3.                     Convém
ressaltar que, por força
do art. 5º da Lei nº 13.874, de 20 de setembro de 2019, as propostas de edição
e de alteração de atos normativos de interesse geral de agentes econômicos ou
de usuários dos serviços
prestados, editadas por órgão ou entidade da administração pública federal,
incluídas as autarquias e as fundações públicas, devem ser precedidas da
realização de análise de impacto regulatório (AIR), que conterá informações e
dados sobre os possíveis efeitos do ato normativo para verificar a razoabilidade
do seu impacto econômico.</span></p><div style="text-align:justify;">
</div><p class="MsoNormal" style="margin-bottom:6pt;text-align:justify;"><span style="font-family:calibri;font-size:17.3333px;">4.                     No entanto, vale destacar que as
alterações e os ajustes propostos não causam impactos significativos para o
conjunto de instituições participantes do <i>Open Finance</i>, por tratar-se somente
de detalhamento em relação à forma de controle do volume de requisições com <i>status
code</i> HTTP 529. Nesse sentido, de acordo com o art. 4º, inciso III, do
Decreto nº 10.411, de 30 de junho de 2020, o ato normativo ora proposto fica
dispensado de elaboração de AIR por ser considerado de baixo impacto. Importante destacar que, conforme o
art. 9º-A, § 2º, do referido decreto, as discussões referentes a essas mudanças
ocorreram no âmbito da Estrutura de Governança do <i>Open Finance</i>, ambiente
no qual todas as instituições participantes do <i>Open Finance</i> são
representadas, garantindo a participação social.</span></p>
<p class="MsoBodyText" style="margin-bottom:6pt;"><span style="font-family:calibri;font-size:17.3333px;">                         À
consideração de V.Sa.</span></p>
<p class="MsoBodyText"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;">                         JANAÍNA
PIMENTA ATTIE                           MATHEUS RAUBER CORADIN<br></span><span style="font-family:calibri;font-size:17.3333px;">                         Chefe
de Subunidade                                 Assessor Sênior</span></p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;">                         VERUSKA
ROCHA DE ARAGÃO<br></span><span style="font-family:calibri;font-size:17.3333px;">                         Chefe
Adjunta do Deinf</span></p>
<p class="MsoBodyText"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoBodyText"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoBodyText"><span style="font-family:calibri;font-size:17.3333px;">                         De
acordo.</span></p>
<p class="MsoBodyText"><span style="font-family:calibri;font-size:17.3333px;"> </span></p>
<p class="MsoNormal"><span style="font-family:calibri;font-size:17.3333px;">                         RENATO
KIYOTAKA UEMA                         HAROLDO JAYME MARTINS FROES CRUZ<br></span><span style="font-family:calibri;font-size:17.3333px;">                         Chefe
do Denor, substituto                       Chefe do Deinf</span></p>
</div>
</div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Acesso Exclusivo para Assinantes
Cadastre-se ou faça login com sua conta do Radar Finsiders Brasil para visualizar esta regulação na íntegra, fazer download dos arquivos e ter acesso a relatórios exclusivos do mercado financeiro.