Definição
SOAP é um protocolo de comunicação entre sistemas que troca mensagens em formato XML, organizadas em um envelope padronizado, geralmente transportadas por HTTP. No universo fiscal brasileiro, é o padrão usado pelos web services da SEFAZ e de muitas prefeituras para receber, autorizar e consultar documentos como NF-e, NFC-e, CT-e, MDF-e e NFS-e.
Também conhecido como: SOAP, Simple Object Access Protocol, Protocolo SOAP, Web service SOAP, SOAP/XML
O que é SOAP, em palavras simples?
SOAP é um conjunto de regras que define como dois sistemas conversam pela internet. Em vez de mandar dados de qualquer jeito, cada mensagem segue um formato rígido em XML, como uma carta que precisa estar dentro de um envelope com campos obrigatórios.
O nome vem de Simple Object Access Protocol. Apesar do "simple" no nome, ele é considerado mais formal e verboso do que alternativas modernas, justamente porque prioriza padronização e contratos bem definidos entre as partes.
Como funciona uma mensagem SOAP?
Toda mensagem SOAP é um documento XML com uma estrutura fixa. O elemento principal é o Envelope, que pode conter um Header, com informações de controle, e obrigatoriamente um Body, onde fica o conteúdo da requisição ou da resposta. Quando algo dá errado, a resposta pode trazer um elemento Fault descrevendo o erro.
Os serviços SOAP costumam ser descritos por um arquivo WSDL, que funciona como um manual técnico: informa quais operações existem, quais dados cada uma espera e o que devolve. Isso permite que ferramentas gerem automaticamente parte do código de integração.
Por que SOAP é tão comum na emissão de notas fiscais?
Os web services da SEFAZ para NF-e, NFC-e, CT-e e MDF-e utilizam SOAP. O emissor monta o XML do documento fiscal, assina digitalmente, coloca dentro do envelope SOAP e envia ao serviço de autorização. A resposta, também em XML, traz o status, o protocolo ou o motivo de rejeição.
Muitas prefeituras também adotaram SOAP em seus sistemas de NFS-e, cada uma com suas próprias operações e leiautes. Por isso, quem integra diretamente com vários municípios precisa lidar com diferentes contratos SOAP ao mesmo tempo.
Qual a diferença entre SOAP e REST?
SOAP é um protocolo com regras rígidas e mensagens sempre em XML. REST é um estilo de arquitetura mais flexível, que usa os métodos do HTTP (como GET e POST) e normalmente troca dados em JSON, um formato mais leve e fácil de ler.
Na prática, REST tende a ser mais simples de implementar e depurar, enquanto SOAP oferece contratos formais e padrões próprios para segurança e tratamento de erros. Muitas plataformas de emissão fiscal oferecem uma API REST ao cliente e cuidam internamente da comunicação SOAP com a SEFAZ e as prefeituras.
Quais as dificuldades de integrar diretamente via SOAP?
Integrar diretamente exige montar XMLs corretos conforme o esquema oficial, respeitar namespaces, assinar o documento, configurar a autenticação com certificado digital na conexão (mTLS) e interpretar respostas e códigos de rejeição. Pequenos detalhes, como um namespace errado, podem impedir o envio.
Além disso, os leiautes mudam com notas técnicas e cada prefeitura pode ter regras próprias. Por isso, empresas com ERPs ou plataformas de venda costumam usar uma API fiscal intermediária, que recebe dados em JSON e traduz para os web services SOAP de cada órgão.
Exemplos de SOAP
- Um ERP envia uma NF-e diretamente à SEFAZ: monta o XML da nota, assina com o certificado A1, embrulha em um envelope SOAP e chama o serviço de autorização, recebendo de volta o protocolo ou a rejeição.
- Uma plataforma de serviços precisa emitir NFS-e em vários municípios e descobre que cada prefeitura tem um web service SOAP diferente, com operações e campos próprios.
- Um desenvolvedor usa o WSDL de um web service municipal para gerar automaticamente as classes de integração em Java.
- Um software de gestão envia os dados da nota em JSON para uma API REST de emissão fiscal, que converte o pedido e se comunica via SOAP com a SEFAZ, devolvendo XML, PDF e status.
Perguntas frequentes
Preciso saber SOAP para emitir notas fiscais pelo meu sistema?
Só se for integrar diretamente com a SEFAZ ou com prefeituras. Ao usar uma API fiscal REST, seu sistema envia dados em JSON e a plataforma cuida da comunicação SOAP com os órgãos autorizadores.
SOAP é a mesma coisa que XML?
Não. XML é um formato de dados. SOAP é um protocolo que usa XML para estruturar as mensagens trocadas entre sistemas, com regras como envelope, cabeçalho e corpo.
O que é WSDL?
É um arquivo em XML que descreve um serviço SOAP: quais operações ele oferece, quais parâmetros recebe e o que devolve. Funciona como o contrato técnico da integração.
SOAP está ultrapassado?
É considerado mais antigo e verboso que REST, mas continua em uso em sistemas governamentais e corporativos, incluindo os web services fiscais brasileiros.
Atualizado em · Como produzimos este glossário
