Skip to main content
Esta referência lista as variáveis de ambiente que configuram o serviço de ledger do Midaz. O Midaz é o mecanismo de partidas dobradas source-available (ELv2). Ele atende as APIs de onboarding e transação em uma única porta. Você define essas variáveis no momento do deploy, por meio de valores do Helm, do Docker Compose ou do ambiente do seu orquestrador. Uma variável obrigatória que você não define faz o servidor falhar na inicialização. Todo produto Lerian compartilha um conjunto de blocos de configuração: postura de TLS, OpenTelemetry, autenticação do Access Manager, multi-tenancy, service discovery e streaming de eventos. A referência de configuração do BYOC documenta esses blocos. Esta página foca no que é específico do ledger.
A consolidação já aconteceu. Você faz o deploy do serviço de ledger (rotas unificadas de onboarding + transaction), e o CRM e o Fees são compilados nesse mesmo processo de ledger. O binário do ledger lê as variáveis de CRM e Fees abaixo. O Tracer vive no mesmo repositório e é entregue como seu próprio serviço opcional. Os antigos componentes onboarding, transaction e mdz não existem mais como itens implantáveis separados. O Helm chart ainda traz um deployment crm standalone legado, desabilitado por padrão.

Portas e endpoints de saúde

O ledger executa um único processo HTTP. Consulte a referência de saúde e readiness para o contrato de probe. O ledger usa OTLP push para telemetria e não expõe um endpoint de scrape /metrics.

Deploy e TLS

Aplicação

Banco de dados (PostgreSQL)

O ledger mantém dois bancos de dados lógicos (onboarding e transaction), cada um com um bloco de conexão primário e um de réplica. As variáveis compartilham um único formato. Substitua {MODULE} por ONBOARDING ou TRANSACTION. As variáveis de réplica carregam um infixo _REPLICA_ (por exemplo, DB_ONBOARDING_REPLICA_HOST).

Armazenamento de documentos (MongoDB)

As variáveis do MongoDB usam um namespace por módulo: MONGO_ONBOARDING_*, MONGO_TRANSACTION_* e, no binário consolidado, MONGO_CRM_* e MONGO_FEES_*. Todas compartilham um único formato. Substitua {NS} pelo namespace. Elas podem apontar para um único deployment do MongoDB (bancos de dados lógicos separados) ou para hosts dedicados.

Cache (Redis / Valkey)

Broker de mensagens (RabbitMQ)

O pipeline interno assíncrono de operações de saldo usa o RabbitMQ quando RABBITMQ_TRANSACTION_ASYNC=true. O RabbitMQ também carrega exchanges legadas de saída selecionadas.

Throughput

Integração com o Tracer

O ponto de integração opcional permite que o ledger reserve limites de gastos junto ao Tracer antes de fazer commit de uma transação. Deixe TRACER_BASE_URL sem definir para desabilitá-la.
Com TRACER_BASE_URL definida, o ponto de integração usa o transporte grpc padrão, a menos que você defina TRACER_TRANSPORT=rest. O transporte gRPC exige que o serviço Tracer exponha seu ponto de integração gRPC de reserva. Defina TRACER_GRPC_PORT no Tracer (veja Variáveis de ambiente do Tracer). Em TRACER_TLS_MODE=mtls, você deve definir os caminhos de certificado do cliente, chave e CA acima.

CRM e Fees

O processo do ledger lê essas variáveis, porque o CRM e o Fees são compilados no binário do ledger. Elas protegem os PII do titular da conta e configuram o backend de criptografia de campos.

Backbone de configuração compartilhado

Os blocos a seguir são idênticos em todos os produtos Lerian. A referência de configuração do BYOC os documenta por completo. Eles vêm desabilitados por padrão. Um deployment BYOC single-tenant pode ignorar todos os opcionais.
  • Autenticação do Access Manager: PLUGIN_AUTH_ENABLED, PLUGIN_AUTH_HOST. Habilite em produção.
  • Multi-tenancy: MULTI_TENANT_*. Desabilitado por padrão. Habilita a resolução de banco de dados por tenant.
  • Service discovery: SD_* (Consul). Desabilitado por padrão.
  • Streaming de eventos: STREAMING_* (produtor do lib-streaming). Desabilitado por padrão no ledger.
  • OpenTelemetry: ENABLE_TELEMETRY, OTEL_*. A telemetria é OTLP push.