Pré-requisitos
Antes de começar, certifique-se de que você tem:
- Seu ISPB (Identificador do Sistema de Pagamentos Brasileiro) — o identificador de 8 dígitos derivado do CNPJ da sua instituição
- Acesso às suas instâncias do Midaz e do CRM (implantadas e em execução)
- Acesso aos serviços do provedor BTG (o BTG fornece as credenciais)
PIX_ISPB também é usado para detectar transferências intra-PSP (P2P): quando o ISPB de destino de uma transferência corresponde a esse valor, o plugin liquida a transferência internamente em vez de roteá-la para o BTG, ainda reportando-a ao BACEN. Consulte Transferências intra-PSP.1. Licença
O plugin é uma solução enterprise e requer uma licença válida para operar. A Lerian fornece a chave de licença durante o onboarding.
2. Access Manager (opcional)
O Access Manager trata da autenticação do plugin. Quando habilitado, ele valida todas as requisições recebidas antes que elas cheguem à API do plugin.
PLUGIN_AUTH_ENABLED=true, o plugin valida o cabeçalho Authorization de cada requisição para garantir que:
- O token pertence a um usuário ou aplicação autorizado
- O token concede acesso ao endpoint e método de API solicitados
Você só precisa fornecer credenciais de cliente (
CLIENT_ID / CLIENT_SECRET) para os serviços Midaz, CRM e Fee se esses serviços também tiverem a autenticação do Access Manager habilitada.3. Midaz
O Midaz é o ledger central de todas as transações Pix que o plugin processa. O plugin registra toda operação de cash-in, cash-out e devolução no Midaz como uma transação de partidas dobradas.
Conexão
Requisitos de ativo
Configure um ativo na sua organização e ledger com estas propriedades:
Vincule todas as contas ao seu ledger usando o ativo
BRL. O plugin rejeita operações em contas que não correspondam a essa configuração.
Configuração de conta
Antes de usar o plugin, crie no Midaz uma conta para cada cliente sob o seu ISPB. Use o endpoint Create an Account para configurar as contas. Cada conta deve:
- Pertencer à organização e ao ledger que você configurou
- Usar o ativo
BRL
Cabeçalho X-Account-Id
Muitas operações Pix exigem o cabeçalho
X-Account-Id para identificar qual conta executa a ação. Esse ID corresponde ao ID da conta no ledger do Midaz.
Quando você chama um endpoint do plugin, o valor de X-Account-Id informa ao plugin:
- Qual conta usar nas operações de ledger
- Quais dados do cliente buscar no CRM
- Qual saldo validar e atualizar
Como o plugin usa o ID da conta
O plugin usa o ID da conta de forma diferente dependendo do tipo de operação:Conformidade da conta
O plugin não impõe restrições de conta em nível de negócio, como contas bloqueadas ou suspensas. Sua aplicação deve validar o status da conta antes de chamar o plugin. Para impedir liquidações Pix em uma conta específica, bloqueie-a diretamente no Midaz. O plugin recebe uma rejeição ao tentar registrar a transação. Documentação relacionada:
4. CRM
O CRM armazena as informações do cliente (titular) e suas contas bancárias associadas. Toda conta do Midaz deve ter um titular e uma conta alias correspondentes no CRM para realizar operações Pix. O plugin consulta os dados do CRM para:
- Registrar e validar chaves Pix
- Montar as mensagens de pagamento para o BACEN
- Autorizar transações recebidas
- Processar fluxos de devolução e disputa
Conexão
Titulares
Os dados do titular representam o cliente que é dono da conta. Crie cada titular no CRM antes de executar qualquer operação Pix para esse cliente.
Campos obrigatórios
Campos opcionais
Documentação relacionada: Create a Holder
Contas alias
As contas alias vinculam uma conta do Midaz aos seus dados bancários. Cada conta alias deve incluir as informações bancárias que o ecossistema Pix exige para o processamento de transações.
Campos obrigatórios
Tipos de conta suportados
Documentação relacionada: Create an Alias Account
5. Provedor BTG
O BTG é o participante direto que conecta sua instituição à infraestrutura Pix do BACEN. O BTG fornece as credenciais diretamente quando sua instituição se cadastra na integração indireta com o BACEN.
Conexão
mTLS (segurança de webhook)
O TLS mútuo (mTLS) adiciona uma camada extra de segurança ao validar o certificado do BTG nas requisições de webhook. Isso garante que os webhooks recebidos realmente se originam do BTG.
6. Serviço de Fee (opcional)
Habilite o cálculo de taxas para cobrar e distribuir automaticamente as taxas sobre pagamentos recebidos. Isso é opcional — se você não configurar, o plugin processa as transações sem cálculo de taxas.
Conexão
Como funciona
Quando você define
CASHIN_FEE_CALCULATION_TYPE=segment, o plugin:
- Recupera o segmento associado à conta recebedora
- Calcula as taxas aplicáveis antes de processar a transação no Midaz
- Distribui o pagamento recebido de acordo com as regras de pacote vinculadas a esse segmento
Passos de configuração
- Crie segmentos no Midaz — Defina os segmentos de conta que determinam as regras de taxa
- Configure pacotes no Fees Engine — Vincule cada segmento às suas regras de cálculo de taxa
- Atribua segmentos às contas — Crie ou atualize contas do Midaz com o ID de segmento apropriado
7. Conciliação DICT (VSync)
O VSync concilia seus dados DICT locais com o BACEN processando todos os eventos relacionados a chaves do dia. Isso garante que seu estado local permaneça consistente com os registros oficiais do BACEN.
O intervalo CIDR restringe quais redes podem disparar a conciliação. O plugin rejeita automaticamente as requisições de fora desse intervalo.
Configuração de cache Redis
O VSync usa o Redis para armazenar em cache as entradas BTG/DICT e os titulares do CRM durante a conciliação. Em implantações via Helm, o
REDIS_HOST padrão aponta para o sidecar Valkey embutido, portanto nenhuma configuração extra é necessária para uma instalação padrão.
Em implantações via Helm, o
REDIS_HOST padrão aponta para o sidecar Valkey embutido (<release-name>-valkey:6379) — nenhuma configuração de Redis adicional é necessária, a menos que você se conecte a uma instância externa.Conexão (sempre usada)
Pool de conexões e retentativas (sempre usado)
Autenticação (opcional — usada apenas se definida)
TLS (opcional — usado apenas se REDIS_TLS=true)
Autenticação GCP IAM (opcional — usada apenas se REDIS_USE_GCP_IAM=true)
TTLs de cache do VSync (sempre usados)
8. Segurança de webhook interno
O plugin usa um canal de comunicação interno entre os serviços Worker e Aplicação. Assinaturas HMAC-SHA256 protegem esse canal para evitar adulteração e ataques de replay.
9. Camadas de worker
O plugin opera com três camadas de worker, cada uma tratando de uma parte diferente do ciclo de vida do Pix. Todos os workers são executados como serviços separados ao lado da aplicação principal.
Worker de entrada
O worker de entrada recebe notificações de webhook do BTG e as encaminha para a sua aplicação para processamento.
Worker de saída
O worker de saída envia notificações de eventos do plugin para a sua aplicação via webhooks. É assim que o seu sistema se mantém informado sobre eventos Pix (transferências, devoluções, reivindicações, disputas).
Prioridade de resolução de URL
O plugin resolve as URLs de webhook nesta ordem, usando a primeira correspondência:- URL de entidade — Uma URL específica para o tipo de evento (por exemplo,
WEBHOOK_DICT_CLAIM_URL) - URL de fluxo — Uma URL para a categoria mais ampla (por exemplo,
WEBHOOK_DICT_URL) - URL padrão — A URL de fallback (
WEBHOOK_DEFAULT_URL)
Worker de conciliação
O worker de conciliação precisa das mesmas credenciais da camada Aplicação para estes serviços:
- CRM — URL e credenciais
- BTG — URL e credenciais
- Midaz — ID da organização
Se você deixar os dois campos vazios, o worker é executado sem restrições de horário — 24/7.
O worker sempre interpreta a janela de conciliação no fuso horário
America/Sao_Paulo (BRT), independentemente do relógio do contêiner ou da variável TZ. O worker incorpora os dados de fuso horário da IANA. A janela permanece alinhada ao bloqueio de escrita do DICT do BACEN, mesmo em imagens mínimas ou distroless. Você não precisa configurar TZ.Os endpoints de cashout e devolução do Pix Indireto suportam idempotência através do cabeçalho de requisição
X-Idempotency, com TTL configurável via X-TTL. Para estratégias de retentativa e detalhes de implementação, consulte Retentativas e idempotência.10. Observabilidade (OpenTelemetry)
O plugin vem com instrumentação completa do OpenTelemetry (traces, métricas e logs) nas camadas Aplicação e Worker. Todo fluxo Pix é rastreado de ponta a ponta — transferências (cash-in e cash-out), devoluções, webhooks de entrada e saída, conciliação DICT e liquidação intra-PSP — para que você possa acompanhar um único pagamento ao longo das chamadas ao plugin, Midaz, CRM e BTG. A telemetria fica desabilitada por padrão. Habilite-a e aponte o exportador OTLP para o seu collector:
Quando
ENABLE_TELEMETRY=true, OTEL_EXPORTER_OTLP_ENDPOINT é obrigatório. Defina as mesmas variáveis OTel na Aplicação e em cada Worker para que os traces se correlacionem entre os serviços.Exportador: gRPC e TLS
O plugin exporta traces, métricas e logs via OTLP/gRPC. O esquema do endpoint controla a segurança do transporte:
Exemplo: endpoint do collector
Aponte o plugin para qualquer collector compatível com OTLP (o OpenTelemetry Collector, Grafana LGTM/Alloy, etc.) escutando na porta gRPC:
11. Saúde e prontidão
A Aplicação e os Workers expõem uma sonda de prontidão em
/readyz (junto com as verificações de liveness padrão). Aponte a sonda de prontidão do seu orquestrador para esse endpoint para que o tráfego só seja roteado quando o serviço e suas dependências estiverem prontos.
Finalidade da transferência (MED 2.0)
O endpoint de cashout aceita um cabeçalho opcional
X-Purpose que identifica a finalidade da transação, usado em transferências de devolução do MED 2.0. Quando omitido, o padrão é TRANSFER.
TRANSFER e INSTANT_PAYMENT_REFUND. Consulte MED 2.0 — Recuperação de Fundos para detalhes.
Próximos passos
Com o plugin totalmente configurado, você está pronto para começar a operar o Pix. Explore estes tópicos para se aprofundar:
- Webhooks — Tipos de evento, payloads, retentativas e boas práticas
- MED 2.0 — Recuperação de Fundos — Recuperação de fraude entre contas e o cabeçalho X-Purpose
- Operações de devolução — Devoluções parciais distribuídas e desbloqueio
- Transferências intra-PSP — Liquidação P2P interna e reporte TRCK002
- Domínios principais: DICT — Entendendo a gestão de chaves Pix
- Domínios principais: transações — Fluxos e ciclo de vida das transações
- Domínios principais: QR Codes — Geração de QR Code estático e dinâmico
- Referência da API — Documentação completa da API para operações de DICT, Reivindicações, Transações, QR Codes e MED

