Definição
mTLS é uma forma de conexão segura na internet em que cliente e servidor apresentam certificados digitais um ao outro e confirmam suas identidades antes de trocar qualquer dado. Na emissão fiscal, é o mecanismo usado para que sistemas se conectem aos web services da SEFAZ e de algumas prefeituras usando o certificado digital da empresa.
Também conhecido como: mTLS, Mutual TLS (Mutual Transport Layer Security), TLS mútuo, Autenticação mútua TLS, Mutual TLS, TLS com autenticação de cliente, Autenticação por certificado de cliente
O que é mTLS, em palavras simples?
mTLS significa TLS mútuo. TLS é a tecnologia que protege conexões na internet, a mesma que faz aparecer o cadeado no navegador quando você acessa um site com HTTPS. A palavra mútuo indica que a verificação de identidade acontece nos dois sentidos.
Uma comparação útil é a entrada em um prédio comercial. No TLS comum, só o prédio mostra a placa com o nome para você ter certeza de que chegou ao lugar certo. No mTLS, você também precisa mostrar seu crachá na portaria antes de entrar. Ninguém conversa sem que os dois lados tenham se identificado.
Como funciona o mTLS?
Tudo acontece no início da conexão, em uma etapa chamada handshake (aperto de mão). Primeiro, o servidor envia seu certificado digital e o cliente confere se ele é válido e emitido por uma autoridade confiável. Em seguida, o servidor pede o certificado do cliente, que o envia e prova ser o dono dele usando sua chave privada.
Se os dois certificados forem aceitos, a conexão é estabelecida e os dados passam a trafegar criptografados. Se qualquer um falhar, por estar vencido, revogado ou não ser reconhecido, a conexão é recusada antes mesmo de a requisição ser lida.
Qual a diferença entre TLS e mTLS?
No TLS tradicional, apenas o servidor prova quem é. O cliente costuma se identificar depois, dentro da própria requisição, com senha, token ou chave de API. É o modelo usado pela maioria dos sites e APIs.
No mTLS, o cliente também se identifica com um certificado digital já na camada de conexão. Isso adiciona uma barreira forte: quem não possui um certificado aceito pelo servidor nem consegue abrir a comunicação. Em contrapartida, exige gerenciar certificados, prazos de validade e renovações.
Por que o mTLS aparece na emissão de notas fiscais?
Os web services da SEFAZ, usados para autorizar NF-e, NFC-e, CT-e e MDF-e, exigem que o sistema se conecte apresentando um certificado digital ICP-Brasil, normalmente do tipo A1. Muitas prefeituras adotam exigência semelhante para a NFS-e. Na prática, isso é mTLS: o órgão só aceita a conexão de quem apresenta um certificado válido.
É comum confundir o mTLS com a assinatura digital do XML. Geralmente o mesmo certificado é usado para as duas coisas, mas com funções diferentes: o mTLS identifica quem está se conectando ao servidor, enquanto a assinatura garante a autoria e a integridade do conteúdo do documento fiscal.
Quais problemas comuns envolvem o mTLS?
As falhas mais frequentes são certificado vencido, certificado revogado, senha incorreta do arquivo do certificado e cadeia de certificação incompleta, quando faltam os certificados intermediários da autoridade emissora. Também ocorrem problemas quando o servidor do cliente não confia nos certificados apresentados pelo órgão.
Esses erros costumam aparecer como falhas de conexão ou de handshake, e não como rejeições fiscais com código e motivo. Por isso, podem ser mais difíceis de diagnosticar sem registros detalhados da integração.
Preciso implementar mTLS se uso uma API fiscal?
Em geral, não diretamente. Quando a empresa usa uma API fiscal como o Conota, seu sistema se autentica na API por HTTPS com uma chave de acesso, e a plataforma se encarrega da conexão com mTLS junto à SEFAZ ou à prefeitura, usando o certificado digital cadastrado para cada CNPJ.
O que continua sendo responsabilidade da empresa é manter o certificado válido e atualizado. Acompanhar a data de vencimento e substituir o arquivo antes do prazo evita interrupções na emissão.
Exemplos de mTLS
- Um ERP envia uma NF-e para autorização: antes de transmitir o XML, a conexão com o web service da SEFAZ é aberta com mTLS usando o certificado A1 da empresa emitente.
- Uma loja tenta emitir NFC-e e todas as tentativas falham com erro de conexão. Ao investigar, a equipe descobre que o certificado digital venceu e o handshake mTLS passou a ser recusado.
- Uma plataforma que atende vários CNPJs mantém um certificado por empresa e usa o certificado correto em cada conexão mTLS com a SEFAZ, conforme o emitente do documento.
- Uma equipe de infraestrutura configura mTLS entre seus próprios microsserviços internos para garantir que apenas serviços autorizados conversem entre si.
Perguntas frequentes
mTLS e HTTPS são a mesma coisa?
Não. HTTPS é o HTTP protegido por TLS, em que normalmente só o servidor apresenta certificado. O mTLS é uma configuração do TLS em que o cliente também apresenta certificado. Uma conexão HTTPS pode ou não usar mTLS.
Qual certificado é usado no mTLS com a SEFAZ?
Um certificado digital ICP-Brasil da empresa, geralmente do tipo A1, que fica em um arquivo protegido por senha. O mesmo certificado costuma ser usado também para assinar o XML dos documentos fiscais.
O que acontece se o certificado vencer?
A SEFAZ ou a prefeitura passa a recusar a conexão, e a emissão fica bloqueada até a instalação de um certificado válido. Por isso é importante monitorar a data de vencimento e renovar com antecedência.
mTLS substitui a chave de API?
Não necessariamente. São mecanismos diferentes e podem ser combinados. Em APIs fiscais, é comum o sistema do cliente usar chave de API ou token, enquanto o mTLS é usado na comunicação entre a plataforma e os órgãos fiscais.
Atualizado em · Como produzimos este glossário
