Tive problemas ao tentar comunicar com o SCAN, pois sempre que enviava qualquer arquivo XML para o WebServices, era retornada a mensagem: 243 – Estrutura XML mal formada. A primeira coisa que fiz foi comparar o XML que nosso sistema estava gerando com o XML do manual do contribuinte: lá pude notar que nada havia de errado. Foi ai que lembrei: na verdade, os arquivos XML que nós geramos é enviado para o servidor da receita dentro de um outro “arquivo XML” pelos componentes SOAP do Delphi.

 

Não sei se este o mesmo caso de todos que estão tendo este problema, mas no meu caso eu consegui resolver com uma pequena alteração em uma das units do SOAP. Em anexo estão os arquivos necessários com as correções para que seu sistema possa se comunicar com SCAN da NFe. Para usá-los basta descompactar os arquivos em uma pasta separada e adicionar o caminho desta pasta no Search Path do seu projeto. Então, se você descompactou os arquivos na pasta C:\SoapUpdate, você deve acessar Project > Options do seu projeto que esta com problemas e na aba Directories/Conditionals clique nos “três pontinhos” a frente do campo Search Path. Na janela que irá se abrir você deve adicionar o caminho das atualizações do SOAP e garantir que o caminho estará abaixo de todos os outros caminhos existentes lá.

 

 

Depois de seguir estes passos, faça o Build do seu projeto (Projects > Build) para que as alterações entrem em vigor.