Pré-requisitos
Antes de começar, instale estas ferramentas:
O Midaz é executado em macOS (Apple Silicon e Intel) e Linux (amd64). No Windows, execute-o através do WSL2.
Passo 1 — Clonar o repositório
Clone o repositório do Midaz e acesse o diretório do projeto.
Passo 2 — Configurar os arquivos de ambiente
O Midaz usa arquivos
.env para configurar cada componente. Gere-os a partir dos exemplos fornecidos:
.env.example para .env no diretório de cada componente. Os valores padrão funcionam para desenvolvimento local. Você não precisa alterá-los.
Passo 3 — Iniciar a infraestrutura
Inicie os serviços de suporte de que o Midaz precisa: PostgreSQL, MongoDB, Valkey, RabbitMQ, Redpanda e OpenTelemetry.
Passo 4 — Iniciar o Midaz
O Midaz é executado como um único serviço Ledger que inclui os domínios de onboarding e de transações. Inicie-o com:
200 OK.
Passo 5 — Criar uma organização
Uma organização representa a entidade comercial por trás da operação financeira: sua empresa, um cliente ou uma instituição regulada. Em produção, ela corresponde à entidade legal que contém seus ledgers, contas e transações.
Salve o
id retornado na resposta. Você o usa nos próximos passos como {organization_id}.Passo 6 — Criar um ledger
Um ledger é um livro de registros isolado dentro de uma organização. Você pode criar ledgers separados para diferentes domínios financeiros, como pagamentos, cobrança de taxas ou liquidação. Cada ledger tem suas próprias contas e histórico de transações.
id retornado como {ledger_id}.
Passo 7 — Criar um ativo
Um ativo define a unidade de valor rastreada no ledger. Pode ser uma moeda fiduciária como BRL ou USD. Também pode ser pontos de fidelidade, tokens cripto, títulos ou qualquer unidade personalizada que seu negócio rastreie. Você deve criar pelo menos um ativo antes de criar contas.
Passo 8 — Criar contas
As contas representam os participantes ou compartimentos no seu fluxo financeiro: uma carteira de cliente, um pool de receitas, uma conta de comerciante ou uma reserva interna. Cada conta se vincula a um único ativo e segue as regras de contabilidade de partida dobrada. Você precisa de pelo menos duas contas para processar uma transação: uma para debitar (origem) e outra para creditar (destino). Crie uma conta de origem:
Passo 9 — Processar sua primeira transação
Esta é a ação principal: ela move valor entre contas com rastreabilidade completa. O Midaz registra cada transação como uma operação balanceada. Ela debita a origem e credita o destino, para que seus livros se mantenham consistentes por design.
Esta transação envia R$ 10,00 de
@revenue para @customer-001. O valor "1000" representa 10,00 na menor unidade do BRL, centavos.O Midaz usa valores inteiros para evitar erros de ponto flutuante. Esta é uma prática padrão em sistemas financeiros.Passo 10 — Verificar o saldo
Verifique o saldo da conta de destino para confirmar a transação.
Explorar a API
O Midaz pode servir sua especificação OpenAPI 3.1 e documentação interativa da API. Essa superfície de documentação está desativada por padrão. Para ativá-la, defina
LEDGER_HUMA_DOCS_ENABLED=true em components/ledger/.env e reinicie o Midaz. Em seguida, acesse:
- Documentação da API:
http://localhost:3002/v1/docs - Especificação OpenAPI:
http://localhost:3002/v1/openapi.json(ou/v1/openapi.yaml)
Observabilidade
O Midaz inclui uma instância pré-configurada do Grafana integrada com OpenTelemetry.
- Painel do Grafana:
http://localhost:3100 - Credenciais padrão:
midaz/lerian
Parando o Midaz
Para parar todos os serviços:
Próximos passos
Criando transações
Aprenda as diferentes formas de criar transações, incluindo JSON, inflow e outflow, e quando usar cada uma.
Deploy em produção
Faça o deploy do Midaz no Kubernetes usando o chart oficial do Helm.
Configurando o CRM
Gerencie titulares e contas alias para conectar identidades do mundo real às suas contas no Midaz.
Estender com plugins
Adicione Fees Engine, Pix e outras capacidades ao seu deploy do Midaz.

