Existe alguma forma de verificar o retorno original do webservice da prefeitura? Se sim, eu conseguiria analisar o problema por aqui mesmo.
Estou usando a função emitirNfseDps através do SDK PHP e recebendo estas mensagens de erro:
[0] => NuvemFiscal\Model\NfseMensagemRetorno Object
(
[openAPINullablesSetToNull:protected] => Array
(
)
[container:protected] => Array
(
[codigo] => X201
[descricao] => WebService retornou um XML vazio.
[correcao] =>
)
)
[1] => NuvemFiscal\Model\NfseMensagemRetorno Object
(
[openAPINullablesSetToNull:protected] => Array
(
)
[container:protected] => Array
(
[codigo] => NF999
[descricao] => Número de protocolo não retornado pelo provedor.
[correcao] =>
)
)
Porque se a mensagem é verídica (“WebService retornou um XML vazio”), não faria muito sentido, ao menos um código de status diferente deveria aparecer.
Realmente não temos retorno algum. Para conseguir mais detalhes, teríamos que simular uma emissão com os seus dados e certificado em ambiente de desenvolvimento.
Você poderia confirmar com o suporte da prefeitura se o ambiente de homologação está operando normalmente?
Como é uma alteração recente da prefeitura, pode ser que não esteja ok ainda, vou tentar falar com eles primeiro, para ver se tenho alguma informação, e depois retorno aqui.
O pessoal da prefeitura solicitou o envio do xml para o e-mail nfsenovohamburgo@ipm.com.br, aos cuidados do Jean. Como não tenho o acesso ao xml por aqui, como fizemos? Vocês mesmos mandam ou me disponibilizam o xml?
Consegui baixar o xml conforme me passou, e enviei para eles, aí retornaram com a seguinte informação:
Isso ocorre pois o seu XML não está no padrão ABRASF 2.04 com os SCHEMAS e estrutura corretas.
Segue anexo alguns exemplos de XML de requisição para que você possa avaliar.
Fiz a conferência dos campos do xml que eles mandaram (Emissão Singular.txt) com os campos que estou enviando (xml enviado.xml), e a única tag que tem diferença é a Valores, onde na minha tem somente um campo, mas não acredito que seja isso, porque senão teria uma resposta do webservice.
Coloquei em anexo o xml que estou enviando (só troquei os códigos de inscrição), e os 4 arquivos que eles mandaram.
Gostaria que verificassem se a parte do cabeçalho para envio está conforme o exemplo deles.
Descobri que o erro de retorno de xml vazio ocorre quando o usuário e senha de autenticação da prefeitura estão errados.
Só para teste, eu troquei a senha informando a correta e configurei a senha com uma exclamação a mais no final, só para seguir com o problema, que aí se conseguirem ajustar o retorno do webservice para mostrar o erro real, fica melhor.
Em testes que fiz pelo postman, consegui o erro real, quando mando com usuário errado:
Realizamos um ajuste na comunicação com o provedor IPM. Agora, o erro 401 - Acesso Negado é exibido nas mensagens da nota fiscal para esse cenário onde as credenciais configuradas para o provedor estão incorretas.
Fiz um teste agora e o retorno que recebo é 401 - Acesso negado. O problema era só as suas credenciais que estavam incorretas? Deu tudo certo após corrigi-las?
Ótimo, fiz o teste antes de ajustar as credencias, e estava voltando como acesso negado (que era o esperado, antes mostrava erro de xml vazio).
Depois de ajustado as credencias, agora recebo o erro para configurar o item da lista de serviço, e é isso mesmo, vou dar andamento para corrigir.