"Ocorreu um erro ao assinar XML": certificado ou aplicativo desktop

"Ocorreu um erro ao assinar XML" aparece na ASSINATURA da nota — uma etapa que acontece antes de a nota ser enviada. Ou seja: ela nem chegou a sair para a SEFAZ. Não é falha de comunicação nem rejeição.

A CAUSA MAIS COMUM: O A3 FORA DE ALCANCE
No certificado A3 a chave fica dentro de um token USB ou de um cartão com leitora, e a assinatura precisa acontecer na máquina em que o dispositivo está conectado. Se o token saiu da USB, se o cartão saiu da leitora, ou se o aplicativo desktop que faz essa ponte não está em execução, a assinatura não tem como acontecer.

O ROTEIRO RÁPIDO
1. Token: tire da USB e recoloque. Cartão: tire o cartão da leitora, tire a leitora do computador e recoloque na ordem inversa — leitora primeiro, cartão depois.
2. Feche o aplicativo desktop pelo ícone perto do relógio e abra de novo.
3. Atualize a página com Ctrl + F5 e tente emitir outra vez.

NÃO CONFUNDA COM OUTRAS MENSAGENS
Se o texto falar em canal seguro, SSL/TLS, conexão fechada ou problemas de comunicação com a Sefaz, o assunto é outro: a nota ficou pronta e não conseguiu chegar. Certificado vencido e senha incorreta também têm mensagem própria — o sistema avisa que o certificado não é válido ou que a senha está incorreta e, quando ele expirou, mostra a data do vencimento e um link para atualizar.

SOBRE PROCURAR CARACTERE ESPECIAL NA NOTA
Orientação antiga mandava vasculhar campo por campo atrás de símbolos como &, < e >. Isso deixou de ser o primeiro caminho: antes de montar o arquivo da nota, o sistema já converte os acentos e já trata sozinho os caracteres que o XML não aceita — o & , o < , o › , as aspas e o apóstrofo. Varrer a nota inteira atrás disso costuma ser tempo perdido. Comece pelo certificado.

Se, com o dispositivo reconectado e o aplicativo aberto, a mensagem continuar, copie o texto do erro inteiro, exatamente como aparece na tela, e traga para o atendimento. É ele que aponta a saída.