Skip to content

Repository files navigation

OpenFinance.NET

CI

SDK .NET open source para instituições receptoras de dados do Open Finance Brasil.

Status

Em desenvolvimento, Fase 0 (Open Data).

  • Cliente do diretório de participantes (OpenFinance.Directory)
  • Descoberta automática de endpoints ativos por família de API
  • Coletor de tarifas de contas pessoais entre bancos (OpenFinance.OpenData)
  • Comparador funcional rodando contra bancos reais (samples/MinimalApiSample)
  • Histórico de tarifas com persistência (aplicação openfinance-aggregator, ainda não iniciada)
  • JWKS, assinatura e validação de JWS (PS256) com detecção de replay (OpenFinance.Security)
  • mTLS com rotação de certificado sem downtime, testado com handshake real (servidor local)
  • CI no GitHub Actions (build, testes, cobertura, dotnet format) e Dependabot
  • Certificados reais (BRSEAL/BRCAC) e teste contra o Mock Bank: exige autorização do Banco Central pra cadastro no Diretório (mesmo em sandbox), fora de alcance pra desenvolvedor individual. Ver seção Conformidade.
  • DCR, PAR, FAPI
  • Consentimento e dados transacionais
  • Aprovação na Conformance Suite
  • Publicação no NuGet

O que é

Biblioteca .NET para instituições que consomem dados via Open Finance Brasil: Fase 1 (Open Data, público) e Fase 2 (dados transacionais, com consentimento). O núcleo de segurança regulatório (mTLS, JWS, DCR, PAR, FAPI) fica isolado do código de negócio.

Fora do escopo (v1)

  • Iniciação de pagamento (ITP)
  • Fase 4 (investimentos, seguros, câmbio, previdência)
  • Certificação de produção / adesão real ao ecossistema (exige instituição regulada)
  • Papel de transmissora

Conformidade

Cadastro no Diretório de Participantes do Open Finance Brasil, mesmo em sandbox, exige comprovação de autorização de funcionamento pelo Banco Central (Art. 6º da Resolução Conjunta 1/2020), sem exceção para desenvolvedor individual. Não é algo que dá pra contornar sendo pessoa jurídica comum, é licença regulatória de instituição financeira.

A estratégia deste projeto pra provar conformidade sem depender disso: rodar o SDK contra a Conformance Suite da OpenID Foundation (a mesma ferramenta que a própria Open Finance Brasil usa pra certificação de segurança), que é gratuita, pública e não exige cadastro no Diretório. Relatórios aprovados vão para docs/conformance/ quando essa etapa estiver pronta. Isso valida conformidade com o perfil FAPI-BR via um motor independente, não é certificação oficial de produção da Open Finance Brasil (essa exige o cadastro regulatório acima).

Arquitetura

src/
  OpenFinance.Directory/       # diretório de participantes, descoberta de endpoints
  OpenFinance.OpenData/        # dados abertos: tarifas de contas pessoais
  OpenFinance.Security/        # JWKS, JWS, replay, mTLS; falta certificado real de sandbox
  OpenFinance.Authorization/   # DCR, PAR, token, FAPI (planejado)
  OpenFinance.Consents/        # máquina de estados do consentimento (planejado)
  OpenFinance.Resources/       # accounts, credit-cards, loans, customers (planejado)
tests/
  *.UnitTests/
samples/
  MinimalApiSample/            # comparador de tarifas rodando contra o diretório real

Regra de isolamento: OpenFinance.Security não conhece nenhum conceito de negócio. Recebe certificado e payload, devolve HttpClient configurado e JWS assinado.

Build e testes

dotnet build
dotnet test

Licença

MIT, veja LICENSE.

About

SDK .NET open source para instituicões receptoras do Open Finance Brasil

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages