Menu Docs
Página inicial do Docs
/

Armazenar dados do Open Finance

O MongoDB impulsiona o open finance com a integração de dados flexíveis, segurança integrada e serviços financeiros dimensionáveis.

  • Casos de uso: Análises orientadas por aplicativos

  • Setores: Serviços financeiros

  • Produtos e ferramentas: Pipeline de agregação, MongoDB Atlas

Open finance está transformando o setor financeiro, permitindo o compartilhamento perfeito de dados entre bancos, empresas de tecnologia financeira e provedores terceirizados. No entanto, a integração de diversos dados financeiros, garantindo a segurança, a conformidade e a escalabilidade continua sendo um grande desafio. O MongoDB fornece uma base para o crédito aberto por meio de:

  • Modelo de documento flexível

  • Suporte a JSON nativo

  • Framework de agregação poderosa

Esses recursos permitem que as organizações unifiquem dados de várias fontes e garantam um gerenciamento de dados seguro e compatível sem a complexidade dos bancos de dados relacionais tradicionais.

Demonstração do Open Finance em formato gif

Figura 1. Aplicativo de open finance com o MongoDB

Esta solução demonstra um aplicativo bancário que permite aos usuários conectar com segurança contas bancárias externas.

  1. O usuário inicia solicitações para conectar suas contas bancárias externas. Esta operação requer o consenso explícito do usuário, garantindo a segurança e a conformidade com regulamentações como a DPS2. Para autenticar, o aplicativo emula OAuth 2.0 e gera tokens para permitir uma comunicação segura entre organizações.

  2. Quando autorizado, o aplicativo usa APIs para se comunicar com bancos externos. Esses bancos expõem dados financeiros, como contas, transações e saldos por meio de seus microsserviços. As respostas estão no formato JSON, o que garante compatibilidade e troca de dados perfeita.

  3. O aplicativo então envia os dados financeiros para o MongoDB Atlas. Com o document model, o MongoDB permite lidar com diversas estruturas de dados de diferentes bancos. Em seguida, o aplicativo pode usar pipelines de agregação para analisar e enriquecer os dados, proporcionando aos usuários uma visão financeira holística, permitindo ao banco oferecer perspicácias financeiras personalizadas.

Diagrama de arquitetura do Open Finance

Figura 2. Diagrama de arquitetura Open Finance

Nesta solução, o modelo de dados emula a integração de dados financeiros do mundo real. Essa abordagem aproveita a flexibilidade do document model para lidar com diversas estruturas de dados de diferentes entidades financeiras.

collection
Descrição

tokens

Armazenam tokens de portador, que o aplicativo usa para autenticar e autorizar solicitações de API com bancos externos.

{
"_id": { "$oid": "unique_id" },
"UserName": "string",
"BearerToken": "string",
"TokenDates": {
"CreationDate": { "$date": "ISODate" },
"LastUseDate": { "$date": "ISODate" }
},
}

external_accounts

Armazena informações sobre contas bancárias externas vinculadas por usuários.

{
"_id": { "$oid": "unique_id" },
"AccountId": "string",
"AccountBank": "string",
"AccountStatus": "string",
"AccountType": "string",
"AccountBalance": "number",
"AccountCurrency": "string",
"AccountDate": {
"OpeningDate": { "$date": "ISODate" }
},
"AccountUser": {
"UserName": "string",
"UserId": { "$oid": "unique_id" }
},
"GreenAccountNarrative": "string"
}

external_products

Armazena informações sobre produtos financeiros (como operações de crédito e crédito à distância) associados aos usuários.

{
"_id": { "$oid": "unique_id" },
"ProductId": "string",
"ProductBank": "string",
"ProductStatus": "string",
"ProductType": "string",
"ProductAmount": "number",
"ProductCurrency": "string",
"ProductInterestRate": "number",
"ProductDate": {
"OpeningDate": { "$date": "ISODate" }
},
"ProductCustomer": {
"UserName": "string",
"UserId": { "$oid": "unique_id" }
},
"GreenProductNarrative": "string",
"RepaymentPeriod": "number",
"LoanCollateral": "string"
}

Em aplicativos do mundo real, essas coleções envolveriam mecanismos de segurança mais complexos e informações detalhadas. Cada entidade financeira tem suas próprias definições de modelo de dados.

Mapeamento e relações de dados
O aplicativo precisa de um mapeamento e relacionamento de dados robustos posteriormente para traduzir diversos modelos de dados de diferentes entidades financeiras para um formato unificado.
Segurança e conformidade
O aplicativo deve garantir a segurança de dados e a compliance com as normas, como GDPR, PSD2 e outras regras do sistema financeiro local. Isso inclui criptografia, controles de acesso e faixas de auditar .
Escalabilidade e desempenho
O aplicativo requer um modelo de dados que possa lidar com grandes volumes de dados de forma eficiente, com considerações para indexação, fragmentação e otimização de desempenho.
Integração e interoperabilidade
O aplicativo implementa APIs e microsserviços que podem ser integrados a vários sistemas externos, garantindo interoperabilidade e troca de dados em tempo real.

Com a flexibilidade do document model, essa solução demonstra como as instituições financeiras podem unificar e gerenciar diversas fontes de dados. Uma implementação de nível de produção precisa abordar as complexidades e nuances da integração de dados financeiros do mundo real.

Essa solução está disponível em dois repositórios do GitHub:

Para obter detalhes sobre a solução de backend, consulte o repositório Backend GitHub. Este repositório fornece o serviço de demonstração de financiamento aberto. Ele mostra como se integrar com bancos de terceiros e trocar dados com segurança. O MongoDB serve para armazenar os dados centrais.

Para criar a solução, conclua as seguintes etapas:

1

Crie um novo banco de dados no MongoDB Atlas chamado open_finance. Em seguida, adicione três coleções:

  • tokens

  • external_accounts

  • external_products

2

Importe os dados de amostra do diretório /backend/data/sample para as respectivas coleções.

3

Crie um novo usuário com acesso de readWrite ao banco de dados open_finance para gerenciar os dados com segurança.

4

Adicione as credenciais do banco de dados e as origens da API a um arquivo .env.

5
  1. Configurar um ambiente virtual usando o poético

  2. Instalar dependências

  3. Iniciar o backend com Uvicorn

  4. Garanta que o serviço seja executado na porta correta para comunicação da API

A interface do usuário desta solução está disponível no repositório Frontend no GitHub. Os componentes são projetados como microsserviços. O repositório da IU atua como o hub principal e fornece uma visão geral de todos os serviços integrados.

  • Implemente um armazenamento central de dados: Use o MongoDB como um armazenamento central de dados para dar suporte a ecossistemas de crédito aberto.

  • Gerenciamento seguro de dados: o MongoDB oferece gerenciamento seguro de dados com criptografia integrada, controles de acesso granulares e alta disponibilidade. Isso ajuda as organizações a proteger informações confidenciais e cumprir os requisitos normativos.

  • Ofereça perspicácias personalizadas: use o pipeline de agregação do MongoDB para analisar dados dos clientes e fornecer perspicácias financeiras personalizadas aos seus usuários.

  • Luis Pazmino Diaz, MongoDB

  • Ainhoa Mugica, MongoDB

  • Julian Boronat, MongoDB

  • Andrea Alaman Calderon, MongoDB

  • Acelerador da solução para fraudes de cartão em tempo real

  • Solução para acelerar a modernização de pagamentos

  • MongoDB e Hasura para Serviços Modernos de Fintech

Voltar

Serviços modernos de Fintech

Nesta página