Pular para o conteúdo principal
Este guia apresenta o ciclo de vida de geração de relatórios no Reporter, desde o upload da sua primeira template até o download do relatório finalizado. O foco está nos conceitos e decisões envolvidas em cada etapa. Para instruções passo a passo com exemplos de requisições e respostas da API, consulte o Início rápido da API do Reporter.

O ciclo de vida de relatórios


Cada relatório no Reporter segue o mesmo ciclo de quatro etapas:
1

Projetar uma template

Escrever um arquivo .tpl que define a estrutura e o conteúdo do seu relatório.
2

Fazer upload da template

Registrar a template no Reporter para que possa ser reutilizada em múltiplas gerações.
3

Gerar um relatório

Enviar uma requisição com filtros opcionais para produzir um relatório a partir da template.
4

Baixar o resultado

Obter o arquivo finalizado no formato que você precisa.
As seções a seguir explicam cada etapa.

Projetar uma template


Uma template é um arquivo de texto simples com extensão .tpl que define como seu relatório aparece e quais dados ele inclui. As templates espelham a estrutura do resultado final — se você quer um relatório XML, você escreve XML dentro do arquivo .tpl; se quer HTML, escreve HTML. Em vez de escrever consultas SQL, você referencia dados através de placeholders que seguem uma sintaxe de caminho simples:
{{ datasource.table.field }}
Por exemplo, {{ midaz_onboarding.account.name }} obtém o nome da conta do banco de dados de onboarding do Midaz.

O que você pode fazer nas templates

CapacidadeDescrição
LoopsIterar sobre coleções de registros
CondiçõesMostrar ou ocultar conteúdo com base em valores dos dados
AgregaçõesCalcular somas, médias, contagens, mínimos e máximos
AritméticaRealizar cálculos em campos numéricos
FiltrosTransformar valores inline (formatar números, substituir strings, extrair substrings)
ContadoresRastrear e exibir totais acumulados entre iterações

Formatos de saída suportados

Conteúdo da templateFormato de saída
.tpl com estrutura CSVArquivo CSV
.tpl com estrutura XMLArquivo XML
.tpl com estrutura HTMLArquivo HTML ou PDF
.tpl com estrutura TXTArquivo TXT
Consulte Formatos de templates para ver exemplos completos de cada formato.

Fazer upload da template


Uma vez que seu arquivo .tpl está pronto, faça upload para o Reporter. Durante o upload, você especifica:
  • O arquivo de template — seu arquivo .tpl
  • Formato de saída — o formato que o Reporter deve gerar (CSV, XML, HTML, PDF ou TXT)
  • Descrição — um rótulo opcional para ajudar a identificar a template posteriormente
O Reporter armazena a template em armazenamento de objetos compatível com S3 e atribui um ID único. Você pode então listar, atualizar ou excluir templates conforme suas necessidades de relatórios evoluem.
As templates são reutilizáveis. Faça upload uma vez e gere relatórios a partir da mesma template quantas vezes precisar com filtros diferentes.
Referência da API: Upload de template | Listar templates

Gerar um relatório


Para gerar um relatório, envie uma requisição com o ID da template e filtros opcionais que restringem os dados.

Como os filtros funcionam

Os filtros seguem um caminho estruturado: fonte de dados > tabela > campo. Você pode filtrar por igualdade, intervalos, maior/menor que e pertencimento a listas. Por exemplo, para gerar um relatório para um intervalo de datas e status de conta específicos:
FiltroO que faz
createdAt: between ["2024-01-01", "2024-01-31"]Inclui apenas registros de janeiro de 2024
status: in ["active", "pending"]Inclui apenas contas ativas ou pendentes
id: eq ["123", "456"]Inclui apenas IDs de conta específicos

Operadores de filtro suportados

OperadorDescrição
eqIgual a
gt / gteMaior que / maior ou igual a
lt / lteMenor que / menor ou igual a
betweenO valor está dentro de um intervalo
in / ninO valor está / não está em uma lista

Processamento

A geração de relatórios é assíncrona. Após enviar uma requisição, o Reporter retorna um ID de relatório que você usa para verificar o progresso. Os relatórios passam por dois status:
StatusSignificado
processingO Reporter está consultando dados e renderizando a template
finishedO relatório está pronto para download

Baixar o resultado


Quando um relatório atinge o status finished, faça o download. O arquivo é retornado no formato especificado durante o upload da template — CSV, XML, HTML, PDF ou TXT.
Referência da API: Baixar relatório

Fontes de dados


O Reporter se conecta aos seus bancos de dados e extrai dados com base no que suas templates referenciam. Ele suporta:
Banco de dadosCaso de uso
PostgreSQLDados relacionais — contas, transações, lançamentos contábeis
MongoDBDados de documentos — metadados, esquemas flexíveis
As fontes de dados são configuradas no nível de infraestrutura através de variáveis de ambiente. Uma vez configuradas, ficam disponíveis para todas as templates através do nome atribuído (por exemplo, midaz_onboarding ou midaz_transaction).

Suporte multi-esquema

Para bancos de dados PostgreSQL com múltiplos esquemas, as templates podem consultar entre esquemas usando sintaxe explícita:
{{ datasource:schema.table.field }}
Isso é útil quando seus dados abrangem esquemas como sales, inventory e reporting dentro de um mesmo banco de dados.

Cenário de exemplo


Uma fintech precisa gerar um resumo diário de contas para seu time de operações. Configuração:
  • Um designer de templates escreve uma template HTML com saldos de contas, contagens de transações e totais diários usando as tags de agregação do Reporter
  • A template é carregada uma vez com formato de saída configurado como PDF
Fluxo de trabalho diário:
  1. Um job automatizado envia uma requisição de relatório com um filtro de data para o dia atual.
  2. O Reporter consulta o banco de dados do Midaz, aplica a lógica da template e renderiza o resultado.
  3. O relatório atinge o status finished em segundos.
  4. O time de operações baixa o PDF e revisa o resumo diário.
  5. A mesma template é reutilizada todos os dias — apenas o filtro de data muda.

Relatórios regulatórios brasileiros


O Reporter inclui templates prontas para uso para relatórios regulatórios do Banco Central do Brasil (BACEN):
TemplateFinalidade
CADOC 4010 / 4016Balancete de verificação e relatórios de balanço patrimonial
CADOC 4111Relatórios detalhados de transações
CCSRelatórios de cadastro de clientes e contas
Essas templates seguem a estrutura oficial do BACEN e podem ser personalizadas para corresponder ao plano de contas da sua instituição.
Consulte Templates BACEN para ver detalhes de cada template regulatória.

Próximos passos