Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jorge Silva (Soft)

[NFePHP] - XML passa em 3 validadores mas NÃO transmite para Sefaz.

Recommended Posts

[NFePHP] - XML passa em 3 validadores mas NÃO transmite para Sefaz.


Olá !


Estou usando a API do NfePHP. O objetivo é bem simples. Recebe um TXT gerado nos padrões do Emissor da Sefaz. Faz a transformação em XML e transmite.

Eu valido o XML nestes validadores, sem problemas:





Mas no API dá o seguinte retorno erro 225: “Rejeição: Falha no Schema XML do lote de Nfe”


Já li toneladas de coisas na internet e não consegui achar uma solução.


Alguém ai teria como me ajudar?

Tem como saber mais detalhes do erro, além dessa mensagem?



Obrigado


Jorge Silva


Compartilhar este post


Link para o post
Compartilhar em outros sites

É uma mensagem genérica, vai ter que depurar. Como está criando o XML?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue XML de exemplo

<?xml version="1.0" encoding="utf-8"?>
<NFe xmlns="http://www.portalfiscal.inf.br/nfe"><infNFe Id="NFe35160916547506000155550010000082001000082001" versao="3.10"><ide><cUF>35</cUF><cNF>00008200</cNF><natOp>Vendas Fora Do Estado</natOp><indPag>1</indPag><mod>55</mod><serie>1</serie><nNF>8200</nNF><dhEmi>2016-09-22T01:01:01-03:00</dhEmi><dhSaiEnt>2016-09-22T01:01:01-03:00</dhSaiEnt><tpNF>1</tpNF><idDest>2</idDest><cMunFG>3550308</cMunFG><tpImp>1</tpImp><tpEmis>1</tpEmis><cDV>1</cDV><tpAmb>2</tpAmb><finNFe>1</finNFe><indFinal>0</indFinal><indPres>0</indPres><procEmi>0</procEmi><verProc>3.10.86</verProc></ide><emit><CNPJ>16547506000155</CNPJ><xNome>MAGNUM TESTES DO EMISSOR COMPLETUSWEB S.A.</xNome><xFant>MAGNUM TESTES DO EMISSOR COMPLETUSWEB S.A.</xFant><enderEmit><xLgr>Rua Arnaldo Cintra,149</xLgr><nro>0</nro><xBairro>Tatuape</xBairro><cMun>3550308</cMun><xMun>Sao Paulo</xMun><UF>SP</UF><CEP>03088000</CEP><cPais>1058</cPais><xPais>BRASIL</xPais><fone>1122955957</fone></enderEmit><IE>113032110111</IE><IM>Isenta</IM><CNAE>2229399</CNAE><CRT>1</CRT></emit><dest><CNPJ>99999999000191</CNPJ><xNome>NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xNome><enderDest><xLgr>BR 262 ANEL RODOVIARIO 1206</xLgr><nro>0</nro><xBairro>OLHOS DAGUA</xBairro><cMun>3106200</cMun><xMun>Belo Horizonte</xMun><UF>MG</UF><CEP>30390085</CEP><cPais>1058</cPais><xPais>BRASIL</xPais><fone>3134901200</fone></enderDest><indIEDest>1</indIEDest><IE>0620053900056</IE><email>jorge.silva.soft@gmail.com</email></dest><det nItem="1"><prod><cProd>10100.00AGO28PS-TERMOFORMADA</cProd><cEAN/><xProd>PRODUTO DE TESTE DE NF-E PARA COMPLETUS EMISSOR.</xProd><NCM>39241000</NCM><CFOP>6101</CFOP><uCom>PC</uCom><qCom>1010.0000</qCom><vUnCom>59.4700</vUnCom><vProd>60064.70</vProd><cEANTrib/><uTrib>PC</uTrib><qTrib>1010.0000</qTrib><vUnTrib>59.4700</vUnTrib><indTot>1</indTot><xPed>1850</xPed><nItemPed>1</nItemPed><nFCI>A1234567-B123-C123-D123-E00000008234</nFCI></prod><imposto><ICMS><ICMSSN101><orig>0</orig><CSOSN>101</CSOSN><pCredSN>3.38</pCredSN><vCredICMSSN>2030.19</vCredICMSSN></ICMSSN101></ICMS><IPI><cEnq>999</cEnq><IPITrib><CST>99</CST><vBC>0.00</vBC><pIPI>0.00</pIPI><vIPI>0.00</vIPI></IPITrib></IPI><PIS><PISOutr><CST>99</CST><vBC>0.00</vBC><pPIS>0.00</pPIS><vPIS>0.00</vPIS></PISOutr></PIS><COFINS><COFINSOutr><CST>99</CST><vBC>0.00</vBC><pCOFINS>0.00</pCOFINS><vCOFINS>0.00</vCOFINS></COFINSOutr></COFINS></imposto></det><total><ICMSTot><vBC>0.00</vBC><vICMS>0.00</vICMS><vICMSDeson>0.00</vICMSDeson><vBCST>0.00</vBCST><vST>0.00</vST><vProd>60064.70</vProd><vFrete>0.00</vFrete><vSeg>0.00</vSeg><vDesc>0.00</vDesc><vII>0.00</vII><vIPI>0.00</vIPI><vPIS>0.00</vPIS><vCOFINS>0.00</vCOFINS><vOutro>0.00</vOutro><vNF>60064.70</vNF><vTotTrib>0.00</vTotTrib></ICMSTot></total><transp><modFrete>1</modFrete><transporta><CNPJ>26341222000242</CNPJ><xNome>EXPRESSO-M-2000-(2179-0200)</xNome><IE>336503291119</IE><xEnder>RUA CECILIA ROEZEN 138- CUMBICA</xEnder><xMun>GUARULHOS</xMun><UF>SP</UF></transporta><vol><qVol>0</qVol><esp>CAIXAS</esp><pesoL>1515.000</pesoL></vol></transp><cobr><fat><nFat>008200</nFat><vOrig>60064.70</vOrig><vLiq>60064.70</vLiq></fat><dup><nDup>008200/A</nDup><dVenc>2016-10-20</dVenc><vDup>20019.56</vDup></dup><dup><nDup>008200/B</nDup><dVenc>2016-10-27</dVenc><vDup>20019.56</vDup></dup><dup><nDup>008200/C</nDup><dVenc>2016-11-03</dVenc><vDup>20025.58</vDup></dup></cobr><infAdic><infAdFisco>PERMITE APROVEITAMENTO DE CREDITO DE ICMS NO VALOR DE R$ 16.63 CF. ALIQUOTA 3.38 % NOS TERMOS DO ART.23 DA LC123.</infAdFisco></infAdic></infNFe><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="#NFe35160916547506000155550010000082001000082001"><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>v1o/u/Tv5onA0802dtW9TA5L9r4=</DigestValue></Reference></SignedInfo><SignatureValue>cjZaQO+JkfvCblVB0fimolbLMx3muAZuZDro1S6+CVZOslcZIOUzkgg/zlCrytIRU2EmGyyKJ3JpDh5E9BnHMF38sEgIyGMq3WzWvIH6E9apP1m+AFh6lOmalV+z1zBAxnxSCerimG1HVOSdQhrvqluwE0+gf2Y12Wr1fsaBlNntjdRrbq+Z3pzzQnpyXdhYVfBCT9uFoyUke+YFRspDHDmJUS0V/BY49Mu4SE0bw6qDldvWOCCsUlEXGhsDbXE1KSzOOCOYj7CM2VErQIPdDvbDwANuh87+5j83kQyCHZHNeHIla8GXmxKmo+v3s5Hyib+wP0Rzl7PqDbfOgAJyNw==</SignatureValue><KeyInfo><X509Data><X509Certificate>MIIIQzCCBiugAwIBAgIQOyJYDxWLp1M4ZNMCd+7/BDANBgkqhkiG9w0BAQsFADB4MQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDE2MDQGA1UECxMtU2VjcmV0YXJpYSBkYSBSZWNlaXRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMRwwGgYDVQQDExNBQyBDZXJ0aXNpZ24gUkZCIEc0MB4XDTE1MTAxMzAwMDAwMFoXDTE2MTAxMTIzNTk1OVowge4xCzAJBgNVBAYTAkJSMRMwEQYDVQQKFApJQ1AtQnJhc2lsMQswCQYDVQQIEwJTUDESMBAGA1UEBxQJU2FvIFBhdWxvMTYwNAYDVQQLFC1TZWNyZXRhcmlhIGRhIFJlY2VpdGEgRmVkZXJhbCBkbyBCcmFzaWwgLSBSRkIxFjAUBgNVBAsUDVJGQiBlLUNOUEogQTExITAfBgNVBAsUGEF1dGVudGljYWRvIHBvciBBUiBBY2lzYTE2MDQGA1UEAxMtQU5EUkUgRkVMSVBFIENBTkFMIDM5OTA0MjQxODEzOjE2NTQ3NTA2MDAwMTU1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzKuQt4yVT+pVD1xjWB60Vt7cvSB+7SShkRwShoR6TDjXfSp9jtSDkRGuD6iwAfw2pIDZdxxfcCLe/nbsIrFWw+zc1MS9Fd4Pb/1zc5W3Eirwq0zcmdkQytUofsCuyjBWodelnAgOIxRTjZOK48u7OoaqeU+h2W/KgQMaeuQwiyzFcTppSvBKh2BgWmdZ+bIvWWFqnDRTLID2qNtVcjvMRXvEasZ6oy58Qdvqj8TSzwCfDn8CnoTsLbp4idjIKjOyDQJ6WjNfbrD4IN8bz4gF+ak+wkDHHMmjGm7ZkRRL/oXkBJQgE0e3EljrhpL7nV7zVnZbCJjpYjKtuRtAA9n28QIDAQABo4IDUDCCA0wwgbUGA1UdEQSBrTCBqqA9BgVgTAEDBKA0BDIxMjA1MTk5MDM5OTA0MjQxODEzMDAwMDAwMDAwMDAwMDAwMDAzNDM2MDMwNTZTU1BTUKAdBgVgTAEDAqAUBBJBTkRSRSBGRUxJUEUgQ0FOQUygGQYFYEwBAwOgEAQOMTY1NDc1MDYwMDAxNTWgFwYFYEwBAwegDgQMMDAwMDAwMDAwMDAwgRZhbmRyZUBpbnNldHBhcmsuY29tLmJyMAkGA1UdEwQCMAAwHwYDVR0jBBgwFoAULpHq1m3lslmC3DiFKXY0FlY80D4wDgYDVR0PAQH/BAQDAgXgMH8GA1UdIAR4MHYwdAYGYEwBAgEMMGowaAYIKwYBBQUHAgEWXGh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vZHBjL0FDX0NlcnRpc2lnbl9SRkIvRFBDX0FDX0NlcnRpc2lnbl9SRkIucGRmMIIBFgYDVR0fBIIBDTCCAQkwV6BVoFOGUWh0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vbGNyL0FDQ2VydGlzaWduUkZCRzQvTGF0ZXN0Q1JMLmNybDBWoFSgUoZQaHR0cDovL2ljcC1icmFzaWwub3V0cmFsY3IuY29tLmJyL3JlcG9zaXRvcmlvL2xjci9BQ0NlcnRpc2lnblJGQkc0L0xhdGVzdENSTC5jcmwwVqBUoFKGUGh0dHA6Ly9yZXBvc2l0b3Jpby5pY3BicmFzaWwuZ292LmJyL2xjci9DZXJ0aXNpZ24vQUNDZXJ0aXNpZ25SRkJHNC9MYXRlc3RDUkwuY3JsMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDCBmwYIKwYBBQUHAQEEgY4wgYswXwYIKwYBBQUHMAKGU2h0dHA6Ly9pY3AtYnJhc2lsLmNlcnRpc2lnbi5jb20uYnIvcmVwb3NpdG9yaW8vY2VydGlmaWNhZG9zL0FDX0NlcnRpc2lnbl9SRkJfRzQucDdjMCgGCCsGAQUFBzABhhxodHRwOi8vb2NzcC5jZXJ0aXNpZ24uY29tLmJyMA0GCSqGSIb3DQEBCwUAA4ICAQDDsx8fdN+T44OX4+qxyU/dNH3SHM2iHwV0fSxuweoqHr4/YO19zVFwsS7wAn6r4WiaTijAUgjvddzSKTu5aFu6/7+6Lk9pXEBC0bzpvElEvjdoUu/WP3XFxIca7P465ZYqqVaSwHHpcRO7JbhIzh7kuldf4tmbi5/gyXr5m4azPgq9zDGj/qL21vUs0A8AqDBDwW+b2UTPMShX+r0fGk6A+vAcbzFpDx+gqhPv8bhfJfWgE5jWk0K7G74IRSEtYKhEu1DyJlo7whZ4Aleu8sQvgrmd36EEm5kOAn447STTskvgBKJ6SsbW8cDRYOoRnlX1trOl6k5YiXUcGzaVwaG0Q2DfopN2pdhIQpVA1zfy81PetIPtQe9x7VGPONaOuH+pHA0V6WRIbdVCE4LI0EVMlZBYGyiuhdj5GTMmo2rx/aR97QVmwUqLXf75EA3m21BAL9iDkDdlT9QC9Ay7WhCfKPOoUWrGLOVMgCdARZ7j2I07eF2V18I7GwnsmU0ufuTAR6+tpCRda55ZMjgvAgoJbSpA0UkhDUgl6OvRhodp1XTt959ebJ8JHv9BvUm4AErI9MAFlDrD3wokQU7iU50ycZSSvpxBeqdNPp1Te5i8eiaW3sh++hUqpDHUM9tGURzDHaLPlRPkB5HEN+iZKL9v5lo0zn5n+M5Ll23ShykTrA==</X509Certificate></X509Data></KeyInfo></Signature></NFe>

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Alex Oliveira Dos Santos
      Boa tarde, após pesquisar muito e passar 2 dias tentando resolver estou aqui pedindo um super help.
      Estou utilizando a classe NfePhp mas ao gerar o xml, o mesmo amontoa os nós xml "det" tudo um dentro do outro, e eu não faço ideia do porque e como corrigir, por postar o arquivo que monto e o xml gerado, além de uma imagem ilustrativa do problema:
       
       
       
      <?php /** * Created by Alex O. Santos. * Date: 30/09/2019 * Time: 10:29 */ //namespace Classes; //use NFePHP\NFe\Make; use NFePHP\NFe; use NFePHP\NFe\Make; use NFePHP\NFe\Tools; use NFePHP\Common\Certificate; //use stdClass; class GerarNFE { private $config; private $tools; public function __construct($config) { $this->config = $config; $configJson = json_encode($config);//adicionado novo 29-06-2020 $certificadoDigital = file_get_contents("asasasasa.pfx"); $password = '123456'; $this->tools = new Tools($configJson, Certificate::readPfx($certificadoDigital, $password)); //$xmlAssinado = $tools->signNFe($xml); } public function GerarNFE(){ //cria a nota vazia $nfe = new Make(); /** INF NFE **/ $std = new \stdClass(); $std->versao = '4.00'; //versão do layout //$std->Id = 'NFe35150271780456000160550010000000021800700082'; //se o Id de 44 digitos não for passado será gerado automaticamente $std->pk_nItem = null; //deixe essa variavel sempre como NULL $nfe->taginfNFe($std); /** IDE **/ $std = new \stdClass(); $std->cUF = 42;//codigo uf ibge $std->cNF = rand(11111111, 99999999);// 80070008 aleatorio $std->natOp = 'Venda de mercadoria adquirida ou recebida de terceiros';//natureza de operação $std->indPag = 0; //NÃO EXISTE MAIS NA VERSÃO 4.00 $std->mod = 55; $std->serie = 1; $std->nNF = 2;//numero da nota $std->dhEmi = date("Y-m-d\TH:i:sP");//2015-02-19T13:48:00-02:00 $std->dhSaiEnt = date("Y-m-d\TH:i:sP");//estava null $std->tpNF = 1;//entrada ou saida $std->idDest = 1;//dentro ou fora do estado *** 1=Operação interna, 2=Operação interestadual, 3=Operação com exterior $std->cMunFG = 4204608;//criciuma conforme ibge $std->tpImp = 1;//2=paisagem ou 1=retrato $std->tpEmis = 1;//normal ou contingencia $std->cDV = 3;//digito verificador $std->tpAmb = 2;//1 = Produção[É o ambiente designado para documentos com valor fiscal]. 2= Homologação[É o ambiente de testes]. $std->finNFe = 1;//complementar ou normal ou ajuste $std->indFinal = 1;//se é consumidor final ou nao $std->indPres = 1;//nao esta presente presencial ou nao $std->procEmi = 0;//sempre zero aplicativo contribuite(erp) $std->verProc = '1.0.0';//versão do erp $std->dhCont = null;//data e hora que entrou em contingencia $std->xJust = null;//justificativa se entrou em contingencia $nfe->tagide($std); /** EMITENTE **/ $std = new \stdClass(); $std->xNome = "NET BIBLIAS COMERCIO DE ARTIGOS EVANGELICOS LTDA-ME";//razão social $std->xFant = "NET BIBLIAS COMERCIO DE ARTIGOS EVANGELICOS LTDA-ME";//nome fantasia $std->IE = "258591137";//obrigatório $std->IEST = ""; $std->IM = "";//OPCIONAL $std->CNAE = "";//OPCIONAL $std->CRT = "1";//regime tributário? $std->CNPJ = "16604805000184"; //indicar apenas um CNPJ ou CPF $std->CPF = ""; $nfe->tagemit($std); /** ENDEREÇO EMITENTE **/ $std = new \stdClass(); $std->xLgr = "Rua Carlos Otaviano Seara"; $std->nro = "349"; $std->xCpl = "";//nao é mais necessário $std->xBairro = "Nossa Senhora da Salete"; $std->cMun = "4204608"; $std->xMun = "Criciúma"; $std->UF = "SC"; $std->CEP = "88813410"; $std->cPais = "1058"; $std->xPais = "Brasil"; $std->fone = "48999689698"; $nfe->tagenderEmit($std); /** DESTINATÁRIO **/ $std = new \stdClass(); $std->xNome = "Alex Olivera Santos"; $std->indIEDest = "2";//1=tem ie 2=nao tem ie @@@Luiz esta como 9 $std->IE = ""; $std->ISUF = "";//manaus $std->IM = "";//inscricao municipal obrigatorio $std->email = "alexsc2011@gmail.com"; $std->CNPJ = ""; //indicar apenas um CNPJ ou CPF ou idEstrangeiro $std->CPF = "04587351911"; $std->idEstrangeiro = null;///acho que é passaporte ou null $nfe->tagdest($std); /** ENDEREÇO DESTINATÁRIO **/ $std = new \stdClass(); $std->xLgr = "Rua Roberto Burlemax"; $std->nro = "118"; $std->xCpl = ""; $std->xBairro = "Ceará"; $std->cMun = "4204608"; $std->xMun = "Criciúma"; $std->UF = "SC"; $std->CEP = "88815092"; $std->cPais = "1058"; $std->xPais = "Brasil"; $std->fone = "62994430218"; $nfe->tagenderDest($std); //inicio foreach de produtos /** PRODUTOS **/ $std = new \stdClass(); $std->item = 1; //item da NFe //contador com count++ incrementando a cada passada, começar com 1 $std->cProd = "4634";// $std->cEAN = "SEM GTIN";//codigo de barras caixa (obrigatório?) $std->xProd = "OLEO DE UNcaO 60 ML";//interrno sistema $std->NCM = "15122990";// $std->cBenef = ""; //incluido no layout 4.00 $std->EXTIPI = ""; $std->CFOP = "6102";//codigo da saida se é saida se é entrada pra outro estado etc $std->uCom = "UND";// $std->qCom = "2.0000";//quantidade??? $std->vUnCom = "6.9900000000";//valor do produto???? $std->cEANTrib = "SEM GTIN";//codigo de barras item separado $std->uTrib = "UND";// $std->qTrib = "1.0000";//quantidade $std->vUnTrib = "13.98";// anterior $std->vUnTrib = "13.9800000000" $aa = $std->qTrib; $bb = $std->vUnTrib; $teste = $aa * $bb; $std->vProd = $teste;//"13.98";// $std->vFrete = "47.66";// $std->vSeg = ""; $std->vDesc = ""; $std->vOutro = ""; $std->indTot = 1;//integrar item ao resultado da nota (padrão) $nfe->tagprod($std); /** IMPOSTO **/ $std = new \stdClass(); $std->item = 1; //item da NFe mesmo id de cima do produto $std->vTotTrib = 4.00;//pegar do ibpt api total de imposto do produto? $nfe->tagimposto($std); /** ICMS **/ $std = new \stdClass(); $std->item = 1; //item da NFe $std->orig = 0;//0=nacional 1=importado $std->CST = "00"; //faltou igualar luiz??? CSOSN <CSOSN>103</CSOSN> $std->modBC = 0; //return $std->vProd;// TESTE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX $std->vBC = $teste; $std->pICMS = "18.00";//percentual de imposto $std->vICMS = $std->vBC * $std->pICMS / 100;//valor base icns $nfe->tagICMS($std); // aqui só vai montar se for interstadual $std = new \stdClass(); $std->item = 1; //item da NFe seguir o mesmo do produto for $std->vBCUFDest = 13.98;//valor unitário precoBase ??? $std->vBCFCPUFDest = 0.00; $std->pFCPUFDest = 0.0000; $std->pICMSUFDest = 18.0000;//18 é padrao pra todos??? $std->pICMSInter = 7.00;//estava 12.00 $std->pICMSInterPart = 100.0000; $std->vFCPUFDest = 0.00; $std->vICMSUFDest = 0.00; $std->vICMSUFRemet = 0.00; $nfe->tagICMSUFDest($std); // fim aqui só monta se for interstadual $std = new \stdClass(); $std->item = 1; $std->cEnq = '999'; $std->CST = '50'; $std->vIPI = 0; $std->vBC = 0; $std->pIPI = 0; $nfe->tagIPI($std); /** PIS **/ $std = new \stdClass(); $std->item = 1; //item da NFe $std->CST = '01';// $std->vBC = $teste;// nota luiz esta 0.00 ??? $std->pPIS = "0.0000";// $std->vPIS = $std->vBC * ($std->pPIS / 100);// ou shekinah "0.00" ??? ;u padrão $std->vProd $std->qBCProd = null; $std->vAliqProd = null; $nfe->tagPIS($std); $std = new \stdClass(); $std->item = 1; $std->vCOFINS = 0; $std->vBC = 0; $std->pCOFINS = 0; $nfe->tagCOFINSST($std); /** COFINS **/ $std = new \stdClass(); $std->item = 1; //item da NFe $std->CST = '01';//estava 50 $std->vBC = 0.00;// $teste; para o caso de apenas um item, senao somar tudo, valor pago pelo cliente Luiz esta 0.00 ??? $std->pCOFINS = 0.0000; $std->vCOFINS = 0.00;//$std->vBC * ($std->pCOFINS / 100) estava assim $std->qBCProd = null; $std->vAliqProd = null; $nfe->tagCOFINS($std); /** IPI **/ // fim monta o foreach de cada produto //inicio foreach de produtos /** PRODUTOS **/ $std = new \stdClass(); $std->item = 2; //item da NFe //contador com count++ incrementando a cada passada, começar com 1 $std->cProd = "4634";// $std->cEAN = "SEM GTIN";//codigo de barras caixa (obrigatório?) $std->xProd = "OLEO DE UNcaO 60 ML";//interrno sistema $std->NCM = "15122990";// $std->cBenef = ""; //incluido no layout 4.00 $std->EXTIPI = ""; $std->CFOP = "6102";//codigo da saida se é saida se é entrada pra outro estado etc $std->uCom = "UND";// $std->qCom = "2.0000";//quantidade??? $std->vUnCom = "6.9900000000";//valor do produto???? $std->cEANTrib = "SEM GTIN";//codigo de barras item separado $std->uTrib = "UND";// $std->qTrib = "1.0000";//quantidade $std->vUnTrib = "13.98";// anterior $std->vUnTrib = "13.9800000000" $aa = $std->qTrib; $bb = $std->vUnTrib; $teste = $aa * $bb; $std->vProd = $teste;//"13.98";// $std->vFrete = "47.66";// $std->vSeg = ""; $std->vDesc = ""; $std->vOutro = ""; $std->indTot = 2;//integrar item ao resultado da nota (padrão) $nfe->tagprod($std); /** IMPOSTO **/ $std = new \stdClass(); $std->item = 2; //item da NFe mesmo id de cima do produto $std->vTotTrib = 4.00;//pegar do ibpt api total de imposto do produto? $nfe->tagimposto($std); /** ICMS **/ $std = new \stdClass(); $std->item = 2; //item da NFe $std->orig = 0;//0=nacional 1=importado $std->CST = "00"; //faltou igualar luiz??? CSOSN <CSOSN>103</CSOSN> $std->modBC = 0; //return $std->vProd;// TESTE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX $std->vBC = $teste; $std->pICMS = "18.00";//percentual de imposto $std->vICMS = $std->vBC * $std->pICMS / 100;//valor base icns $nfe->tagICMS($std); // aqui só vai montar se for interstadual $std = new \stdClass(); $std->item = 2; //item da NFe seguir o mesmo do produto for $std->vBCUFDest = 13.98;//valor unitário precoBase ??? $std->vBCFCPUFDest = 0.00; $std->pFCPUFDest = 0.0000; $std->pICMSUFDest = 18.0000;//18 é padrao pra todos??? $std->pICMSInter = 7.00;//estava 12.00 $std->pICMSInterPart = 100.0000; $std->vFCPUFDest = 0.00; $std->vICMSUFDest = 0.00; $std->vICMSUFRemet = 0.00; $nfe->tagICMSUFDest($std); // fim aqui só monta se for interstadual $std = new \stdClass(); $std->item = 2; $std->cEnq = '999'; $std->CST = '50'; $std->vIPI = 0; $std->vBC = 0; $std->pIPI = 0; $nfe->tagIPI($std); /** PIS **/ $std = new \stdClass(); $std->item = 2; //item da NFe $std->CST = '01';// $std->vBC = $teste;// nota luiz esta 0.00 ??? $std->pPIS = "0.0000";// $std->vPIS = $std->vBC * ($std->pPIS / 100);// ou shekinah "0.00" ??? ;u padrão $std->vProd $std->qBCProd = null; $std->vAliqProd = null; $nfe->tagPIS($std); $std = new \stdClass(); $std->item = 2; $std->vCOFINS = 0; $std->vBC = 0; $std->pCOFINS = 0; $nfe->tagCOFINSST($std); /** COFINS **/ $std = new \stdClass(); $std->item = 2; //item da NFe $std->CST = '01';//estava 50 $std->vBC = 0.00;// $teste; para o caso de apenas um item, senao somar tudo, valor pago pelo cliente Luiz esta 0.00 ??? $std->pCOFINS = 0.0000; $std->vCOFINS = 0.00;//$std->vBC * ($std->pCOFINS / 100) estava assim $std->qBCProd = null; $std->vAliqProd = null; $nfe->tagCOFINS($std); // fim monta o foreach de cada produto /** TOTAIS **/ $std = new \stdClass(); $std->vBC = $teste; $std->vICMS = '0.00'; $std->vICMSDeson = ''; $std->vFCP = ''; //incluso no layout 4.00 $std->vBCST = ''; $std->vST = ''; $std->vFCPST = ''; //incluso no layout 4.00 $std->vFCPSTRet = ''; //incluso no layout 4.00 $std->vProd = $teste; $std->vFrete = ''; $std->vSeg = ''; $std->vDesc = ''; $std->vII = ''; $std->vIPI = ''; $std->vIPIDevol = ''; //incluso no layout 4.00 $std->vPIS = ''; $std->vCOFINS = ''; $std->vOutro = ''; $std->vNF = ''; $std->vTotTrib = '0.00'; $nfe->tagICMSTot($std); /** TRANSPORTADORA **/ $std = new \stdClass(); $std->modFrete = 1; $nfe->tagtransp($std); /** VOLUME **/ $std = new \stdClass(); $std->item = '1'; //indicativo do numero do volume $std->qVol = '2';//QTD VOLUME $std->esp = 'caixa'; $std->marca = 'OLX'; $std->nVol = '11111'; /*$std->pesoL = 10.50; $std->pesoB = 11.00;*/ $nfe->tagvol($std); /** PAGAMENTO **/ $std = new \stdClass(); $std->vTroco = null; //incluso no layout 4.00, obrigatório informar para NFCe (65) $nfe->tagpag($std); /** DETALHE DO PAGAMENTO **/ $std = new \stdClass(); $std->tPag = '14';//forma de pgto $std->vPag = 200.00; //Obs: deve ser informado o valor pago pelo cliente $std->CNPJ = '12345678901234'; $std->tBand = '01'; $std->cAut = '3333333'; $std->tpIntegra = 1; //incluso na NT 2015/002 $std->indPag = '0'; //0= Pagamento à Vista 1= Pagamento à Prazo $nfe->tagdetPag($std); /** INFORMAÇÕES ADICIONAIS **/ $std = new \stdClass(); $std->infAdFisco = 'informacoes para o fisco'; $std->infCpl = 'informacoes complementares'; $nfe->taginfAdic($std); /** MONTA A NF-E **/ $result = $nfe->montaNFe(); /** **/ //$result = $nfe->monta(); /** **/ //$result = $nfe->monta(); /** **/ //$xml = $nfe->getXML(); /** **/ //$chave = $nfe->getChave(); //var_dump($result); if($nfe->montaNFe()){ return $nfe->getXML();//funfando }else{ echo 'Erro ao gerar NF-e'; var_dump($nfe); return ; }/**/ } public function sign($xml){ try { $xmlAssinado = $this->tools->signNFe($xml); return $xmlAssinado; } catch (\Exception $e) { exit('erro: '.$e->getMessage().' ::: '.$xml); } //return var_dump($this->tools->signNFe($xml)); } } resultado xml gerado
      <!--?xml version="1.0" encoding="UTF-8"?--> <nfe xmlns="http://www.portalfiscal.inf.br/nfe"><infnfe id="NFe42200916604805000184550010000000021777050308" versao="4.00"><ide><cuf>42</cuf><cnf>77705030</cnf><natop>Venda de mercadoria adquirida ou recebida de terceiros</natop><mod>55</mod><serie>1</serie><nnf>2</nnf><dhemi>2020-09-10T17:51:52-03:00</dhemi><dhsaient>2020-09-10T17:51:52-03:00</dhsaient><tpnf>1</tpnf><iddest>1</iddest><cmunfg>4204608</cmunfg><tpimp>1</tpimp><tpemis>1</tpemis><cdv>8</cdv><tpamb>2</tpamb><finnfe>1</finnfe><indfinal>1</indfinal><indpres>1</indpres><procemi>0</procemi><verproc>1.0.0</verproc></ide><emit><cnpj>16604805000184</cnpj><xnome>NET BIBLIAS COMERCIO DE ARTIGOS EVANGELICOS LTDA-ME</xnome><xfant>NET BIBLIAS COMERCIO DE ARTIGOS EVANGELICOS LTDA-ME</xfant><enderemit><xlgr>Rua Carlos Otaviano Seara</xlgr><nro>349</nro><xbairro>Nossa Senhora da Salete</xbairro><cmun>4204608</cmun><xmun>Criciúma</xmun><uf>SC</uf><cep>88813410</cep><cpais>1058</cpais><xpais>Brasil</xpais><fone>48999689698</fone></enderemit><ie>258591137</ie><crt>1</crt></emit><dest><cpf>04587351911</cpf><xnome>NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xnome><enderdest><xlgr>Rua Roberto Burlemax</xlgr><nro>118</nro><xbairro>Ceará</xbairro><cmun>4204608</cmun><xmun>Criciúma</xmun><uf>SC</uf><cep>88815092</cep><cpais>1058</cpais><xpais>Brasil</xpais><fone>62994430218</fone></enderdest><indiedest>2</indiedest><email>alexsc2011@gmail.com</email></dest><det nitem="1"><det nitem="2"><det nitem="1"><prod><cprod>4634</cprod><cean>SEM GTIN</cean><xprod>OLEO DE UNcaO 60 ML</xprod><ncm>15122990</ncm><cfop>6102</cfop><ucom>UND</ucom><qcom>2.0000</qcom><vuncom>6.9900000000</vuncom><vprod>13.98</vprod><ceantrib>SEM GTIN</ceantrib><utrib>UND</utrib><qtrib>1.0000</qtrib><vuntrib>13.98</vuntrib><vfrete>47.66</vfrete><indtot>1</indtot></prod><imposto><vtottrib>4.00</vtottrib><icms><icms00><orig>0</orig><cst>00</cst><modbc>0</modbc><vbc>13.98</vbc><picms>18.0000</picms><vicms>2.52</vicms></icms00></icms><ipi><cenq>999</cenq><ipitrib><cst>50</cst><vbc>0.00</vbc><pipi>0.0000</pipi><vipi>0.00</vipi></ipitrib></ipi><pis><pisaliq><cst>01</cst><vbc>13.98</vbc><ppis>0.0000</ppis><vpis>0.00</vpis></pisaliq></pis><cofins><cofinsaliq><cst>01</cst><vbc>0.00</vbc><pcofins>0.0000</pcofins><vcofins>0.00</vcofins></cofinsaliq></cofins><cofinsst><vbc>0.00</vbc><pcofins>0.0000</pcofins><vcofins>0.00</vcofins></cofinsst><icmsufdest><vbcufdest>13.98</vbcufdest><vbcfcpufdest>0</vbcfcpufdest><pfcpufdest>0.0000</pfcpufdest><picmsufdest>18.0000</picmsufdest><picmsinter>7.00</picmsinter><picmsinterpart>100.0000</picmsinterpart><vfcpufdest>0</vfcpufdest><vicmsufdest>0</vicmsufdest><vicmsufremet>0</vicmsufremet></icmsufdest></imposto></det><det nitem="2"><prod><cprod>4634</cprod><cean>SEM GTIN</cean><xprod>OLEO DE UNcaO 60 ML</xprod><ncm>15122990</ncm><cfop>6102</cfop><ucom>UND</ucom><qcom>2.0000</qcom><vuncom>6.9900000000</vuncom><vprod>13.98</vprod><ceantrib>SEM GTIN</ceantrib><utrib>UND</utrib><qtrib>1.0000</qtrib><vuntrib>13.98</vuntrib><vfrete>47.66</vfrete><indtot>2</indtot></prod><imposto><vtottrib>4.00</vtottrib><icms><icms00><orig>0</orig><cst>00</cst><modbc>0</modbc><vbc>13.98</vbc><picms>18.0000</picms><vicms>2.52</vicms></icms00></icms><ipi><cenq>999</cenq><ipitrib><cst>50</cst><vbc>0.00</vbc><pipi>0.0000</pipi><vipi>0.00</vipi></ipitrib></ipi><pis><pisaliq><cst>01</cst><vbc>13.98</vbc><ppis>0.0000</ppis><vpis>0.00</vpis></pisaliq></pis><cofins><cofinsaliq><cst>01</cst><vbc>0.00</vbc><pcofins>0.0000</pcofins><vcofins>0.00</vcofins></cofinsaliq></cofins><cofinsst><vbc>0.00</vbc><pcofins>0.0000</pcofins><vcofins>0.00</vcofins></cofinsst><icmsufdest><vbcufdest>13.98</vbcufdest><vbcfcpufdest>0</vbcfcpufdest><pfcpufdest>0.0000</pfcpufdest><picmsufdest>18.0000</picmsufdest><picmsinter>7.00</picmsinter><picmsinterpart>100.0000</picmsinterpart><vfcpufdest>0</vfcpufdest><vicmsufdest>0</vicmsufdest><vicmsufremet>0</vicmsufremet></icmsufdest></imposto></det><total><icmstot><vbc>13.98</vbc><vicms>0.00</vicms><vicmsdeson>0.00</vicmsdeson><vfcp>0.00</vfcp><vbcst>0.00</vbcst><vst>0.00</vst><vfcpst>0.00</vfcpst><vfcpstret>0.00</vfcpstret><vprod>13.98</vprod><vfrete>95.32</vfrete><vseg>0.00</vseg><vdesc>0.00</vdesc><vii>0.00</vii><vipi>0.00</vipi><vipidevol>0.00</vipidevol><vpis>0.00</vpis><vcofins>0.00</vcofins><voutro>0.00</voutro><vnf>109.30</vnf></icmstot></total><transp><modfrete>1</modfrete><vol><qvol>2</qvol><esp>caixa</esp><marca>OLX</marca><nvol>11111</nvol></vol></transp><pag><detpag><indpag>0</indpag><tpag>14</tpag><vpag>200.00</vpag><card><tpintegra>1</tpintegra><cnpj>12345678901234</cnpj><tband>01</tband><caut>3333333</caut></card></detpag></pag><infadic><infadfisco>informacoes para o fisco</infadfisco><infcpl>informacoes complementares</infcpl></infadic></det></det></infnfe></nfe>  

    • Por nightreturn
      Sou novo no fórum e tenho umas duvidas sobre NOT,AS FISCAIS E PHP.
      Gostaria de saber como eu faço em PHP para pegar os produtos cadastrados em uma nota fical pelo código-id da nota?
      Aquele mesmo código que se usa para acessar todo o conteúdo da nota.
       
      Qual o meu objetivo? Pegar todos os produtos de uma nota fiscal eletronica para consumidor final (aquela mesma nota que recebemos após comprar no mercado, na padaria, um lanche, na kalumga, etc...) e listar todos.
      Qual seria o caminho para isso?
    • Por fabinhosilva
      To com uma aplicação em php baseada no nfephp e não to conseguindo comunicação do certificado digital com o sefaz
       
      Fiz a instalação do servidor debian com apache, php5, sqlserver, phpmyadmin, zenguard loader, requesitos para o sistema rodar, consigo fazer a aplicação funcionar mais não aceita certificado digital para assinatura junto a sefaz
    • Por phfmiranda
      Bom dia,
       
      Quando tento executar este código abaixo me apresenta o erro 500.
       
      $registro_emit = [VAR_CD_EMPRESA]; $id_nfe = [VAR_ID_NFE]; $xml = gerar_xml($id_nfe); $assinar = assinar($registro_emit, $id_nfe, $xml); $xml_assinado = $assinar['xml']; if ($assinar['cd_status'] == '7') { autorizar($registro_emit, $id_nfe,$xml_assinado); } else { echo "<h4>Erro ao validar arquivo xml!</h4>"; echo $assinar['obs']; echo "<pre>"; $xml = simplexml_load_string($xml); print_r($xml); } Este código acima chama este outro:
       
      0| <?php 1| 2| function danfe($docxml,$logo = '') 3| { 4| 5| try { 6| sc_include_library("prj", "nfephp", "vendor/autoload.php", true, true); 7| $danfe = new NFePHP\DA\NFe\Danfe($docxml, 'P', 'A4', $logo, 'I', ''); 8| $id = $danfe->montaDANFE(); 9| $pdf = $danfe->render(); 10| //o pdf porde ser exibido como view no browser 11| //salvo em arquivo 12| //ou setado para download for?ado no browser 13| //ou ainda gravado na base de dados 14| header('Content-Type: application/pdf'); 15| echo $pdf; 16| } catch (InvalidArgumentException $e) { 17| echo "Ocorreu um erro durante o processamento :" . $e->getMessage(); 18| } 19| } 20| ?> os amigos podem me ajudar?
    • Por mlucascosta
      Boa tarde
      Estou implementando no ERP da empresa um modulo para começar a emitir nota fiscal.
      Creio que preciso tirar algumas duvidas em relação a isso.
      Em questão de banco de dados...
      as questões fiscais, icms, pis, confins, são cadastrados junto com o produto, ou deverão ser informadas quando a nota for emitida?
      Como identificar quando uma nota é para produtos e outra é para serviços ?
      como uma nota é entregue a consumidor final ?
      Desde já agradeço.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.