Italo,
Estou vendo com a prefeitura a questão do schema para pegar a versão deles, quanto a referencia de Canoas/RS é pelo fato da nota ser faturada(gerada) aqui em contagem para um serviço realizado em CANOAS/RS (Tributação fora do município). Quando envio notas dentro do próprio município o erro não ocorre.
Em Guarulhos realizo o mesmo teste (tanto dentro quanto fora do município e a nota é emitida). Levando a crer que o problema seja somente em contagem, assim que conseguir mais informações posto aqui.
Além de contagem, guarulhos estou testando também notas para prefeitura de Betim(provedor Betim) nesse caso não estou conseguindo enviar a nota. Emitindo o seguinte erro:
glCRxwVkZk3tNkZUXQOXapth7HkgS3QgcUD8O4VVFacL9ZZcGBeIC687LFyJ/2V3NAhK2U4T
bOfpPnt80cuNcprscHyhznCc7opuOcu9bG7AeefBaZ7NVwbo1QrolwJq5uty
</X509Certificate>
</X509Data>
</KeyInfo></Signature></EnviarLoteRpsEnvio> - URL:https://betim.rps.com.br/sgm/zend/nfs/nfs - SOAPAction:https://betim.rps.com.br/sgm/zend/nfs/nfs#RecepcionarLoteRps
O erro ocorre dentro da biblioteca AcbrNFSEWebServices, na função function Executar: Boolean; override;
try
{$IFDEF ACBrNFSeOpenSSL}
HTTP.Document.LoadFromStream(Stream);
ConfiguraHTTP(HTTP, 'SOAPAction: "'+ FProvedorClass.GetSoapAction(acRecepcionar, FNomeCidade) +'"');
HTTP.HTTPMethod('POST', FURL);
StrStream := TStringStream.Create('');
StrStream.CopyFrom(HTTP.Document, 0);
FRetornoWS := TiraAcentos(ParseText(StrStream.DataString, True));
FRetWS := FProvedorClass.GetRetornoWS(acRecepcionar, FRetornoWS);
StrStream.Free;
{$ELSE}
ReqResp.Execute(Acao.Text, Stream); o erro retorna aqui (quando é executado essa linha ele cai na exceção).
StrStream := TStringStream.Create('');
StrStream.CopyFrom(Stream, 0);
FRetornoWS := TiraAcentos(ParseText(StrStream.DataString, True));
FRetWS := FProvedorClass.GetRetornoWS(acRecepcionar, FRetornoWS);
StrStream.Free;
{$ENDIF}
//
// Alterado por Luis Fernando Vilela em 15/02/2013
//
// para capturar erro de conexao --Essa exceção que é executada.
except
on E: Exception do
begin
Result := False;
if Assigned(TACBrNFSe( FACBrNFSe ).OnGerarLog) then
TACBrNFSe( FACBrNFSe ).OnGerarLog(E.Message);
if E.Message<>''
then raise Exception.Create(E.Message)
else raise Exception.Create('Erro Desconhecido!');
end;
Verifiquei que em betim o certificado é baixado no site da prefeitura (eles usam certificado próprio), baixando o mesmo o erro continua ocorrendo. Não sei o que posso verificar.
Grato,
Diego Gonçalves.