Usuário com melhor resposta
Problemas ao enviar MDF-e atraves do webservice da SeFaz

Pergunta
-
Boa tarde Pessoal,
Estou com o seguinte problema:
Estou tentando enviar um MDF-e no ambiente de homologação da SeFaz e estou recebendo o retorno:
Rejeição: Assinatura difere do calculado
Oque eu fiz até agora foi, gerei as classes através dos wsds disponíveis e a partir delas eu gero o XML, assinei o mesmo e crio o lote e faço a transmissão pelo webservice e obtenho o retorno: Arquivo recebido com sucesso e recebo um número de requisição.
Com o número de requisição em mãos eu utilizo outro webservice de consulta de requisição e obtenho o retorno como eu já havia mencionado: Rejeição: Assinatura difere do calculado
Uma coisa que eu estou achando estranho é que, quando eu gero o XML sem criar o Lote e tento transmiti-la através do emissor gratuito disponibilazado pela SeFaz ele é aceito e com isso eu acredito que a minha assinatura do XML está correta.
XML:
<?xml version="1.0" encoding="UTF-8"?> -<enviMDFe xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00"> <idLote>15</idLote> -<MDFe> -<infMDFe Id="MDFe31161025452301000934580010000000011000000012" versao="1.00"> -<ide> <cUF>31</cUF> <tpAmb>2</tpAmb> <tpEmit>2</tpEmit> <mod>58</mod> <serie>1</serie> <nMDF>1</nMDF> <cMDF>00000001</cMDF> <cDV>2</cDV> <modal>1</modal> <dhEmi>2016-10-05T10:40:00</dhEmi> <tpEmis>1</tpEmis> <procEmi>0</procEmi> <verProc>1.00</verProc> <UFIni>MG</UFIni> <UFFim>SP</UFFim> -<infMunCarrega> <cMunCarrega>3170107</cMunCarrega> <xMunCarrega>UBERABA</xMunCarrega> </infMunCarrega> </ide> -<emit> <CNPJ>25452301000934</CNPJ> <IE>0010218360193</IE> <xNome>SOCIEDADE EDUCACIONAL UBERABENSE</xNome> <xFant>FAZENDA ESCOLA ALEXANDRE BARBOSA</xFant> -<enderEmit> <xLgr>ROD BR-050 KM</xLgr> <nro>145</nro> <xBairro>D INDUSTRIAL II</xBairro> <cMun>3170107</cMun> <xMun>UBERABA</xMun> <CEP>38064750</CEP> <UF>MG</UF> <fone>3433196643</fone> <email>zebu3@uniube.br</email> </enderEmit> </emit> -<infModal versaoModal="1.00"> -<rodo xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.portalfiscal.inf.br/mdfe"> <RNTRC>22334455</RNTRC> <CIOT>111222333444</CIOT> -<veicTracao> <cInt>1</cInt> <placa>HDT3491</placa> <tara>2000</tara> <capKG>1000</capKG> <capM3>100</capM3> -<condutor> <xNome>MARLON</xNome> <CPF>09662504605</CPF> </condutor> <tpRod>01</tpRod> <tpCar>00</tpCar> <UF>MG</UF> </veicTracao> </rodo> </infModal> -<infDoc> -<infMunDescarga> <cMunDescarga>3500105</cMunDescarga> <xMunDescarga>ADAMANTINA</xMunDescarga> -<infNFe> <chNFe>31160625452301000934550010000020651000020654</chNFe> </infNFe> -<infNFe> <chNFe>31160725452301000934550010000021341000021343</chNFe> </infNFe> </infMunDescarga> </infDoc> -<tot> <qNFe>2</qNFe> <vCarga>17390</vCarga> <cUnid>01</cUnid> <qCarga>900</qCarga> </tot> -<lacres> <nLacre>4545679843</nLacre> </lacres> -<lacres> <nLacre>78973</nLacre> </lacres> -<infAdic> <infAdFisco>Informacoes de Adcionais do Fisco. Operacao nao tributada.</infAdFisco> <infCpl>Teste de geracao do XML do MDFe.</infCpl> </infAdic> </infMDFe> -<Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> -<SignedInfo> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/> <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/> -<Reference URI="#MDFe31161025452301000934580010000000011000000012"> -<Transforms> <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/> <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/> </Transforms> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>Puu3a4J3fkiLeya95HGEdWXayYo=</DigestValue> </Reference> </SignedInfo> <SignatureValue>rQ2DOOsy3pRzTBrfKUHYA0ejfibHAkjXdfc0ZK816pT6ofoUHsfyhdPZ/Jv9+qoXYnHbxZ14yqMPLPAcfnju2DBh6gwhfrXmp2T7nQFo2U+Odg14qxD6N+TPCem7yoNYwMZ5aFYBJ5L+xJrcaQxr1xe9bI1+ZlsQEilMrxP4GMg35pZh/5hbjv+yJ65sSklyXPBfVJJXu5/X2aNKb/DamBVlEKQj4sgZ5cfve5aXhi/bWHuoNYSppM4qu7y8GD/5tnryTBEyYSjoaf2tINOLKSUiquM+WuxxSGwHmzebivG9069Ar+ALCaci74uz3DHMEweRfK+pabJUnfP1YmuGeQ==</SignatureValue> -<KeyInfo> -<X509Data> <X509Certificate>MIIIQzCCBiugAwIBAgIQZGsvmi4L1SWotu3Smiq+VzANBgkqhkiG9w0BAQsFADB4MQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDE2MDQGA1UECxMtU2VjcmV0YXJpYSBkYSBSZWNlaXRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMRwwGgYDVQQDExNBQyBDZXJ0aXNpZ24gUkZCIEc0MB4XDTE2MDcxMjAwMDAwMFoXDTE3MDcxMTIzNTk1OVowge8xCzAJBgNVBAYTAkJSMRMwEQYDVQQKFApJQ1AtQnJhc2lsMQswCQYDVQQIEwJNRzEQMA4GA1UEBxQHVUJFUkFCQTE2MDQGA1UECxQtU2VjcmV0YXJpYSBkYSBSZWNlaXRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMRYwFAYDVQQLFA1SRkIgZS1DTlBKIEExMSIwIAYDVQQLFBlBdXRlbnRpY2FkbyBwb3IgQVIgTklBTFBBMTgwNgYDVQQDEy9TT0NJRURBREUgRURVQ0FDSU9OQUwgVUJFUkFCRU5TRToyNTQ1MjMwMTAwMDE4NzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL3LCD1uQo7qe04xqPVyFO+B+SIvMeJHljMma9D8mRMCYT6yNNZJZY1hwD/uq+yAbzs4cxehnXm+xKsNgLX5ygyoP0TxTNlgfek0RiA6dUTkTnyjZBl6UYIXJ6tHCc26Zhj1HSKgagxUmOSYWaRa+gFXOKWEMiH6hSoWDSCEH0rlOAZpQAbVrRR8m2t/31O15HgtuF/aXs8Z+eaeCTyY1rBYH3vLJ19NMKylkxtSOCsZJD6ZLgrXyB0YE4y+E/ehCJ+qvaLVo3CzgkcYRJqQwycpjiY33Q135K/OlemfpBEBcWD6ypsw1Ez4M9kmpK+t/dhSfAd7zv0u+Nl2exRtknECAwEAAaOCA08wggNLMIG0BgNVHREEgawwgamgPQYFYEwBAwSgNAQyMDUxMDE5NDEwMDM3MTkwNDE1MzAwMDAwMDAwMDAwMDAwMDAwME0xMzExMTM5U1NQTUegGwYFYEwBAwKgEgQQTUFSQ0VMTyBQQUxNRVJJT6AZBgVgTAEDA6AQBA4yNTQ1MjMwMTAwMDE4N6AXBgVgTAEDB6AOBAwwMDAwMDAwMDAwMDCBF2NvbnRhYmlsaWRhZGVAdW5pdWJlLmJyMAkGA1UdEwQCMAAwHwYDVR0jBBgwFoAULpHq1m3lslmC3DiFKXY0FlY80D4wDgYDVR0PAQH/BAQDAgXgMH8GA1UdIAR4MHYwdAYGYEwBAgEMMGowaAYIKwYBBQUHAgEWXGh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vZHBjL0FDX0NlcnRpc2lnbl9SRkIvRFBDX0FDX0NlcnRpc2lnbl9SRkIucGRmMIIBFgYDVR0fBIIBDTCCAQkwV6BVoFOGUWh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vbGNyL0FDQ2VydGlzaWduUkZCRzQvTGF0ZXN0Q1JMLmNybDBWoFSgUoZQaHR0cDovL2ljcC1icmFzaWwub3V0cmFsY3IuY29tLmJyL3JlcG9zaXRvcmlvL2xjci9BQ0NlcnRpc2lnblJGQkc0L0xhdGVzdENSTC5jcmwwVqBUoFKGUGh0dHA6Ly9yZXBvc2l0b3Jpby5pY3BicmFzaWwuZ292LmJyL2xjci9DZXJ0aXNpZ24vQUNDZXJ0aXNpZ25SRkJHNC9MYXRlc3RDUkwuY3JsMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDCBmwYIKwYBBQUHAQEEgY4wgYswXwYIKwYBBQUHMAKGU2h0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vY2VydGlmaWNhZG9zL0FDX0NlcnRpc2lnbl9SRkJfRzQucDdjMCgGCCsGAQUFBzABhhxodHRwOi8vb2NzcC5jZXJ0aXNpZ24uY29tLmJyMA0GCSqGSIb3DQEBCwUAA4ICAQAUhEFlxSF+4hOjil71DrCXOTx1RLH/Vr2gMzwFquEN6CO/XRPuo8Ydad2LBfJZ2Xwjt3PH5bxWGIpA/tz8GqrauS5t1Zy1SHMLNWiWJpdnRlJtjNTZCBeCyLUiQUVQia9We0hSeNDYRFhXHtwsYjWAu3xOmRTOV2n0LyyL3Cr00EM8YFF6h1RdF6iPqHpZU7Yn9gNfbDMCJ2GSyEsOrR6IExAD5LOYHyMaHf1vMa+oKCx86Hl/+DHMPvyXuBT/ukeAo7n8YQWm+BlDmqIcoYS1EiJo4yLBLwhg6BhOuYD7nY1TQ49iv93XJ15br+hYpTiWFL1ZV+uvWnnYp6tdi6nN2tEEJq0Bh0A4uwDJ57+eO9yUqanBN0CeMm6bCOrx54npsrtxeo1tysRojd8rssK7Twv5Pjq5DOqeEWpU1xHXr+hptu7fsFnrshcMaHYNad3yDO8VCxOz2cXzeD7wGPExETVquco6arVyOCJr2sL6phCOoPT0bU3A3h7rUV38L4BF0u2+D+Lu42sFFLsiRhfxHplWobGiOtmKKfkOvEb62dSYVI48GqBAdpf08LxbOtKMdkwfs1Xt1AZO4RnXTR3st3v48kYDB9Wpk6Sjyh0Q36aU90cnUayJpDn0fbHxHsqFRqhhHllHZJ79oUgLDvqaKxx21ybCxhpQ0DYt4he0/g==</X509Certificate> </X509Data> </KeyInfo> </Signature> </MDFe> </enviMDFe>
Por favor, se alguem puder me dar uma luz seria de grande ajuda.
Penso que talvez meu erro esteja na forma que eu faço essa transmissão.
MDFe_Homologacao_Recepcao.MDFeRecepcaoSoap12Client rec = new MDFe_Homologacao_Recepcao.MDFeRecepcaoSoap12Client(); MDFe_Homologacao_Recepcao.mdfeRecepcaoLoteRequest recReq = new MDFe_Homologacao_Recepcao.mdfeRecepcaoLoteRequest(); MDFe_Homologacao_Recepcao.mdfeCabecMsg cabReq = new MDFe_Homologacao_Recepcao.mdfeCabecMsg(); System.ServiceModel.EndpointAddress end = new System.ServiceModel.EndpointAddress("https://mdfe-homologacao.svrs.rs.gov.br/ws/MDFerecepcao/MDFeRecepcao.asmx"); cabReq.cUF = "31"; cabReq.versaoDados = "1.00"; recReq.mdfeCabecMsg = cabReq; recReq.mdfeDadosMsg = xmlAssinado; rec.ClientCredentials.ClientCertificate.Certificate = X509Cert; rec.Endpoint.Address = end; rec.Open(); XmlNode retorno = rec.mdfeRecepcaoLote(ref recReq.mdfeCabecMsg, recReq.mdfeDadosMsg);
- Editado Marlon Faria quarta-feira, 5 de outubro de 2016 19:14
Respostas
-
Voltando aqui depois de algum tempo só para fechar o tópico;
O Problema foi resolvido da seguinte maneira, a transmissão do documento através do WebService estava correta, o erro estava na construção do XML, eu estava criando o Lote e depois fazia a assinatura e pelo que eu entendi isso estava invalidando a assinatura do documento, foi só trocar a sequencia dos eventos (assinar e depois gerar o lote) e deu tudo certo, consegui fazer a transmissão;
- Marcado como Resposta Marlon Faria sexta-feira, 4 de novembro de 2016 12:16