Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing tags in NFS-e #104

Closed
LuccaAug opened this issue May 17, 2024 · 4 comments · Fixed by #105
Closed

Missing tags in NFS-e #104

LuccaAug opened this issue May 17, 2024 · 4 comments · Fixed by #105

Comments

@LuccaAug
Copy link

I got the error below when using the lib to parse a NFS-e:

xsdata.exceptions.ParserError: Unknown property {http://www.sped.fazenda.gov.br/nfse}TCInfoTributacao:{http://www.sped.fazenda.gov.br/nfse}tribFed

You can find the tag NFSe/infNFSe/DPS/infDPS/valores/trib/tribFed/ on Leiaute NFS-e - ADN tab in the anexoiv-leiautesrn_adn-snnfse_v1-00-02-producao.xlsx file on the NFS-e docs

@rvalyi
Copy link
Member

rvalyi commented May 20, 2024

Ola @LuccaAug realmente tem alguma coisa estranha; no arquivo xlsx que vc menciona existe a tag tribFed. Existe até no arquivo de demo do projeto UNINFE GerarNFSeEnvio2-env-loterps.xml

Porem no esquema da NFSE Nacional 1.0, essa mesma tag dentro da tag trib se chama tribNac:
https://github.com/akretion/nfelib/blob/master/nfelib/nfse/schemas/v1_0/tiposComplexos_v1.00.xsd#L1258
(basta ver que a tag anterior se chama tribMun tb e tribNac em vez de tribFed, faz sentido tb)

Inclusive todas tags de impostos federais descritas no arquivo xlsx a gente encontra dentro do tipo complexo:
https://github.com/akretion/nfelib/blob/master/nfelib/nfse/schemas/v1_0/tiposComplexos_v1.00.xsd#L1611

Ou dentro da tag filha piscofins de tipo complexo TCTribOutrosPisCofins
https://github.com/akretion/nfelib/blob/master/nfelib/nfse/schemas/v1_0/tiposComplexos_v1.00.xsd#L1611

E ai quem ta errado? O arquivo xsd ou o arquivo xslx??

Se vc tiver alguma fonte confiavel dizendo que a tag certa é tribFed, tou OK para a gente fazer um patch do esquema xsd oficial e trocar tribNac por tribFed e gerir os bindings de novo. Mas tem algum motivo para pensar que o certo é tribFed mesmo??

O que vc acha?

@LuccaAug
Copy link
Author

Olá Raphael, realmente os arquivos fornecidos pela Receita estão com dados conflitantes, não possuo uma fonte interna ou algo do tipo, o que eu tenho são notas reais, inclusive validadas na consulta pública, que possuem a tag tribFed.
Acho que é o correto justamente por obter este erro, segue dois exemplos de tags valores de notas reais que deram esse erro com os valores censurados.

                <valores>
                    <vServPrest>
                        <vServ>XXX</vServ>
                    </vServPrest>
                    <vDescCondIncond>
                        <vDescIncond>XXX</vDescIncond>
                        <vDescCond>XXX</vDescCond>
                    </vDescCondIncond>
                    <trib>
                        <tribMun>
                            <tribISSQN>XXX</tribISSQN>
                            <pAliq>XXX</pAliq>
                            <tpRetISSQN>XXX</tpRetISSQN>
                        </tribMun>
                        <tribFed>
                            <piscofins>
                                <CST>XXX</CST>
                                <vPis>XXX</vPis>
                                <vCofins>XXX</vCofins>
                            </piscofins>
                            <vRetCP>XXX</vRetCP>
                            <vRetIRRF>XXX</vRetIRRF>
                            <vRetCSLL>XXX</vRetCSLL>
                        </tribFed>
                        <totTrib>
                            <indTotTrib>XXX</indTotTrib>
                        </totTrib>
                    </trib>
                </valores>
                <valores>
                    <vServPrest>
                        <vServ>XXX</vServ>
                    </vServPrest>
                    <trib>
                        <tribMun>
                            <tribISSQN>XXX</tribISSQN>
                            <pAliq>XXX</pAliq>
                            <tpRetISSQN>XXX</tpRetISSQN>
                        </tribMun>
                        <tribFed>
                            <vRetCP>XXX</vRetCP>
                        </tribFed>
                        <totTrib>
                            <indTotTrib>XXX</indTotTrib>
                        </totTrib>
                    </trib>
                </valores>

Não acho que seja suficiente para prova, mas para corroborar, ao consultar uma nota ou ver seu PDF, o nome da área que mostra os dados desta tag é Tributação Federal e não Tributação Nacional.
Como nos prints abaixo, que são do PDF e do site da consulta pública, respectivamente:
Captura de tela de 2024-05-21 10-16-55
image
A nota destes prints não possui a tag tribFed, as notas com erro possuem a mesma área, mas para não precisar censurar a imagem já que a intenção é só mostrar o nome da área, tirei o print de outra NFS-e

@rvalyi
Copy link
Member

rvalyi commented May 26, 2024

ola @LuccaAug vc consegue testar com esse PR e me falar se ta OK #105 ?

Olha, nem me surprende esse pessoal da especificação ter se cagado no xsd. Antes desse padrão nacional, a ABRASF tinha um xsd de referencia e esse proprio arquivo "xsd" tinha uma tag mal fechada e nem podia ser lida como arquivo XML... Isso por anos...

@LuccaAug
Copy link
Author

Boa tarde Raphael, funcionou certinho, tudo OK
Realmente essas documentações não são das melhores, infelizmente, mas é o que temos.

Perdão a demora e obrigado pela solução

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants