NFC-E

MFLAVIO 30/08/2024 15:02:25
#503530
Ola Meus amigo tudo bem?
estive um tempo longe
e voltando agora para ativa

me incumbiram de criar o Modulo NFC-e

estou tentando em primeiro Plano
consutar o Status do Endpoint
para pegar o jeitinho

estou tentnado dessa forma
Private Sub ConsultarSefaz(Optional Mtela As Boolean = True)
Try

Dim xmlConsulta As String = "" &
"" &
"" &
"" &
"" &
"2" & ' Ambiente: 1 = Produção, 2 = Homologação
"35" & ' Código da UF (35 = SP)
"STATUS" &
"" &
"" &
"" &
""

Dim request As HttpWebRequest = CType(WebRequest.Create(URL.StatusServico), HttpWebRequest)
request.Method = "POST"
request.ContentType = "text/xml; charset=utf-8"
request.Headers.Add("SOAPAction", "http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico4")
request.ClientCertificates.Add(certificado)

Dim xmlBytes As Byte() = Encoding.UTF8.GetBytes(xmlConsulta)
request.ContentLength = xmlBytes.Length

Using requestStream = request.GetRequestStream()
requestStream.Write(xmlBytes, 0, xmlBytes.Length)
End Using

Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
Dim responseStream As Stream = response.GetResponseStream()
Dim responseReader As New StreamReader(responseStream)

Dim xmlResposta As String = responseReader.ReadToEnd()
Console.WriteLine("Resposta do Servidor: " & xmlResposta)

Dim xmlDoc As New XmlDocument()
xmlDoc.LoadXml(xmlResposta)
Dim status As String = xmlDoc.GetElementsByTagName("cStat")(0).InnerText
Dim motivo As String = xmlDoc.GetElementsByTagName("xMotivo")(0).InnerText

If status = "107" Then
Console.WriteLine("Servidor disponível e operando normalmente. Motivo: " & motivo)
Else
Console.WriteLine("Servidor fora do ar ou com problemas. Status: " & status & " - Motivo: " & motivo)
End If

Catch ex As Exception
Console.WriteLine("Erro ao consultar o servidor: " & ex.Message)
End Try
End Sub

mas sempre da erro 500 do servidor
alguem tem algum exemplo
de consulta do status do serviço

agradeço qualquer ajuda
MFLAVIO 30/08/2024 17:34:22
#503533
Pessoal consegui passar pelo erro 500 KKKK

Agora da erro de SOAP invalido
como não achei o SOAP especifico para o NFCe
estou tentando usar o SOAP da NFE

          <System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.portalfiscal.inf.br/nfe/wsdl/NFeStatusServico4/nfeStatusServicoNF", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Bare)>
Public Function nfeStatusServicoNF(<System.Xml.Serialization.XmlElementAttribute([Namespace]:="http://www.portalfiscal.inf.br/nfe/wsdl/NFeStatusServico4")> ByVal nfeDadosMsg As System.Xml.XmlNode) As <System.Xml.Serialization.XmlElementAttribute("nfeResultMsg", [Namespace]:="http://www.portalfiscal.inf.br/nfe/wsdl/NFeStatusServico4")> System.Xml.XmlNode
Dim results() As Object = Me.Invoke("nfeStatusServicoNF", New Object() {nfeDadosMsg})
Return CType(results(0), System.Xml.XmlNode)
End Function


mas como mencionado
da erro
Ctat 242
Mensagem SOPA Invalido

alguma dica?
KERPLUNK 31/08/2024 11:40:17
#503534
Amigo, você está reinventando a roda. Adicione a referência ao serviço, é o jeito mais fácil e seguro.
MARCELOKROL 22/09/2024 10:09:52
#503595
Complementando o que o colega citou: "reinventar a roda", usa o uninfe . É gratuito, tem suporte a várias linguagens, um canal no YT explicando praticamente tudo e ainda voce abstrai essas chamadas manuais ai.
NILSONTRES 22/09/2024 17:15:21
#503598
Alterado em 22/09/2024 17:26:58 Não precisa nada de terceiros não, é simples. eu fiquei postar um pequeno exemplo aqui mas infelizmente não consigo montar por falta de tempo.
Tive ajuda do colega Elucimar.
Vou ver se consigo um tempinho nas próximas semanas.
Praticamente pegue seu projeto de NFE e altere algumas coisas, por exemplo o modo é síncrono, altere as urls tambem.
O Chato é só gerar essa Tag:

<infNFeSupl>
<qrCode>
<![CDATA[ https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35240912363874000126650010000006301536050669|2|2|1|281583920C0D58E32C4DFE98A33E2717376BF8CC ]]>
</qrCode>
<urlChave>https://www.homologacao.nfce.fazenda.sp.gov.br/consulta</urlChave>
</infNFeSupl>

Segue o exemplo passado pelo Elucimar pra gerar a TAG,
Faça seu login para responder