diff --git a/nfelib/v4_00/retEnviNFe.py b/nfelib/v4_00/retEnviNFe.py
index a19dd581..ab49098c 100644
--- a/nfelib/v4_00/retEnviNFe.py
+++ b/nfelib/v4_00/retEnviNFe.py
@@ -15243,7 +15243,631 @@ def buildChildren(self, child_, node, nodeName_, fromsubclass_=False, gds_collec
# end class encerranteType
+class gDifType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, pDif=None, vDif=None, **kwargs_):
+ self.pDif = pDif
+ self.vDif = vDif
+ def factory(*args_, **kwargs_): return gDifType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gDifType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gDifType', fromsubclass_=False, pretty_print=True):
+ if self.pDif is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spDif>%s%spDif>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pDif), input_name='pDif')), namespaceprefix_))
+ if self.vDif is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDif>%s%svDif>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDif), input_name='vDif')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'pDif': self.pDif = child.text
+ elif nodeName_ == 'vDif': self.vDif = child.text
+
+class gDevTribType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vDevTrib=None, **kwargs_):
+ self.vDevTrib = vDevTrib
+ def factory(*args_, **kwargs_): return gDevTribType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gDevTribType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gDevTribType', fromsubclass_=False, pretty_print=True):
+ if self.vDevTrib is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDevTrib>%s%svDevTrib>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDevTrib), input_name='vDevTrib')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vDevTrib': self.vDevTrib = child.text
+
+class gRedType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, pRedAliq=None, pAliqEfet=None, **kwargs_):
+ self.pRedAliq = pRedAliq
+ self.pAliqEfet = pAliqEfet
+ def factory(*args_, **kwargs_): return gRedType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gRedType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gRedType', fromsubclass_=False, pretty_print=True):
+ if self.pRedAliq is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spRedAliq>%s%spRedAliq>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pRedAliq), input_name='pRedAliq')), namespaceprefix_))
+ if self.pAliqEfet is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spAliqEfet>%s%spAliqEfet>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pAliqEfet), input_name='pAliqEfet')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'pRedAliq': self.pRedAliq = child.text
+ elif nodeName_ == 'pAliqEfet': self.pAliqEfet = child.text
+
+class gIBSUFType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, pIBSUF=None, gDif=None, gDevTrib=None, gRed=None, vIBSUF=None, **kwargs_):
+ self.pIBSUF = pIBSUF
+ self.gDif = gDif
+ self.gDevTrib = gDevTrib
+ self.gRed = gRed
+ self.vIBSUF = vIBSUF
+ def factory(*args_, **kwargs_): return gIBSUFType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSUFType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSUFType', fromsubclass_=False, pretty_print=True):
+ if self.pIBSUF is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spIBSUF>%s%spIBSUF>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pIBSUF), input_name='pIBSUF')), namespaceprefix_))
+ if self.gDif is not None:
+ self.gDif.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDif', pretty_print=pretty_print)
+ if self.gDevTrib is not None:
+ self.gDevTrib.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDevTrib', pretty_print=pretty_print)
+ if self.gRed is not None:
+ self.gRed.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gRed', pretty_print=pretty_print)
+ if self.vIBSUF is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSUF>%s%svIBSUF>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSUF), input_name='vIBSUF')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'pIBSUF': self.pIBSUF = child.text
+ elif nodeName_ == 'gDif':
+ obj_ = gDifType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDif = obj_
+ elif nodeName_ == 'gDevTrib':
+ obj_ = gDevTribType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDevTrib = obj_
+ elif nodeName_ == 'gRed':
+ obj_ = gRedType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gRed = obj_
+ elif nodeName_ == 'vIBSUF': self.vIBSUF = child.text
+
+class gIBSMunType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, pIBSMun=None, gDif=None, gDevTrib=None, gRed=None, vIBSMun=None, **kwargs_):
+ self.pIBSMun = pIBSMun
+ self.gDif = gDif
+ self.gDevTrib = gDevTrib
+ self.gRed = gRed
+ self.vIBSMun = vIBSMun
+ def factory(*args_, **kwargs_): return gIBSMunType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSMunType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSMunType', fromsubclass_=False, pretty_print=True):
+ if self.pIBSMun is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spIBSMun>%s%spIBSMun>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pIBSMun), input_name='pIBSMun')), namespaceprefix_))
+ if self.gDif is not None:
+ self.gDif.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDif', pretty_print=pretty_print)
+ if self.gDevTrib is not None:
+ self.gDevTrib.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDevTrib', pretty_print=pretty_print)
+ if self.gRed is not None:
+ self.gRed.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gRed', pretty_print=pretty_print)
+ if self.vIBSMun is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSMun>%s%svIBSMun>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSMun), input_name='vIBSMun')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'pIBSMun': self.pIBSMun = child.text
+ elif nodeName_ == 'gDif':
+ obj_ = gDifType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDif = obj_
+ elif nodeName_ == 'gDevTrib':
+ obj_ = gDevTribType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDevTrib = obj_
+ elif nodeName_ == 'gRed':
+ obj_ = gRedType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gRed = obj_
+ elif nodeName_ == 'vIBSMun': self.vIBSMun = child.text
+
+class gCBSType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, pCBS=None, gDif=None, gDevTrib=None, gRed=None, vCBS=None, **kwargs_):
+ self.pCBS = pCBS
+ self.gDif = gDif
+ self.gDevTrib = gDevTrib
+ self.gRed = gRed
+ self.vCBS = vCBS
+ def factory(*args_, **kwargs_): return gCBSType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gCBSType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gCBSType', fromsubclass_=False, pretty_print=True):
+ if self.pCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spCBS>%s%spCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pCBS), input_name='pCBS')), namespaceprefix_))
+ if self.gDif is not None:
+ self.gDif.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDif', pretty_print=pretty_print)
+ if self.gDevTrib is not None:
+ self.gDevTrib.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gDevTrib', pretty_print=pretty_print)
+ if self.gRed is not None:
+ self.gRed.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gRed', pretty_print=pretty_print)
+ if self.vCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCBS>%s%svCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCBS), input_name='vCBS')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'pCBS': self.pCBS = child.text
+ elif nodeName_ == 'gDif':
+ obj_ = gDifType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDif = obj_
+ elif nodeName_ == 'gDevTrib':
+ obj_ = gDevTribType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gDevTrib = obj_
+ elif nodeName_ == 'gRed':
+ obj_ = gRedType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gRed = obj_
+ elif nodeName_ == 'vCBS': self.vCBS = child.text
+
+class gTribRegularType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, CSTReg=None, cClassTribReg=None, pAliqEfetRegIBSUF=None, vTribRegIBSUF=None, pAliqEfetRegIBSMun=None, vTribRegIBSMun=None, pAliqEfetRegCBS=None, vTribRegCBS=None, **kwargs_):
+ self.CSTReg = CSTReg
+ self.cClassTribReg = cClassTribReg
+ self.pAliqEfetRegIBSUF = pAliqEfetRegIBSUF
+ self.vTribRegIBSUF = vTribRegIBSUF
+ self.pAliqEfetRegIBSMun = pAliqEfetRegIBSMun
+ self.vTribRegIBSMun = vTribRegIBSMun
+ self.pAliqEfetRegCBS = pAliqEfetRegCBS
+ self.vTribRegCBS = vTribRegCBS
+ def factory(*args_, **kwargs_): return gTribRegularType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gTribRegularType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gTribRegularType', fromsubclass_=False, pretty_print=True):
+ if self.CSTReg is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%sCSTReg>%s%sCSTReg>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.CSTReg), input_name='CSTReg')), namespaceprefix_))
+ if self.cClassTribReg is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%scClassTribReg>%s%scClassTribReg>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.cClassTribReg), input_name='cClassTribReg')), namespaceprefix_))
+ if self.pAliqEfetRegIBSUF is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spAliqEfetRegIBSUF>%s%spAliqEfetRegIBSUF>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pAliqEfetRegIBSUF), input_name='pAliqEfetRegIBSUF')), namespaceprefix_))
+ if self.vTribRegIBSUF is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svTribRegIBSUF>%s%svTribRegIBSUF>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vTribRegIBSUF), input_name='vTribRegIBSUF')), namespaceprefix_))
+ if self.pAliqEfetRegIBSMun is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spAliqEfetRegIBSMun>%s%spAliqEfetRegIBSMun>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pAliqEfetRegIBSMun), input_name='pAliqEfetRegIBSMun')), namespaceprefix_))
+ if self.vTribRegIBSMun is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svTribRegIBSMun>%s%svTribRegIBSMun>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vTribRegIBSMun), input_name='vTribRegIBSMun')), namespaceprefix_))
+ if self.pAliqEfetRegCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%spAliqEfetRegCBS>%s%spAliqEfetRegCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.pAliqEfetRegCBS), input_name='pAliqEfetRegCBS')), namespaceprefix_))
+ if self.vTribRegCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svTribRegCBS>%s%svTribRegCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vTribRegCBS), input_name='vTribRegCBS')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'CSTReg': self.CSTReg = child.text
+ elif nodeName_ == 'cClassTribReg': self.cClassTribReg = child.text
+ elif nodeName_ == 'pAliqEfetRegIBSUF': self.pAliqEfetRegIBSUF = child.text
+ elif nodeName_ == 'vTribRegIBSUF': self.vTribRegIBSUF = child.text
+ elif nodeName_ == 'pAliqEfetRegIBSMun': self.pAliqEfetRegIBSMun = child.text
+ elif nodeName_ == 'vTribRegIBSMun': self.vTribRegIBSMun = child.text
+ elif nodeName_ == 'pAliqEfetRegCBS': self.pAliqEfetRegCBS = child.text
+ elif nodeName_ == 'vTribRegCBS': self.vTribRegCBS = child.text
+
+class gIBSCBSType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vBC=None, gIBSUF=None, gIBSMun=None, vIBS=None, gCBS=None, gTribRegular=None, **kwargs_):
+ self.vBC = vBC
+ self.gIBSUF = gIBSUF
+ self.gIBSMun = gIBSMun
+ self.vIBS = vIBS
+ self.gCBS = gCBS
+ self.gTribRegular = gTribRegular
+ def factory(*args_, **kwargs_): return gIBSCBSType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSCBSType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSCBSType', fromsubclass_=False, pretty_print=True):
+ if self.vBC is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svBC>%s%svBC>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vBC), input_name='vBC')), namespaceprefix_))
+ if self.gIBSUF is not None:
+ self.gIBSUF.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBSUF', pretty_print=pretty_print)
+ if self.gIBSMun is not None:
+ self.gIBSMun.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBSMun', pretty_print=pretty_print)
+ if self.vIBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBS>%s%svIBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBS), input_name='vIBS')), namespaceprefix_))
+ if self.gCBS is not None:
+ self.gCBS.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gCBS', pretty_print=pretty_print)
+ if self.gTribRegular is not None:
+ self.gTribRegular.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gTribRegular', pretty_print=pretty_print)
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vBC': self.vBC = child.text
+ elif nodeName_ == 'gIBSUF':
+ obj_ = gIBSUFType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBSUF = obj_
+ elif nodeName_ == 'gIBSMun':
+ obj_ = gIBSMunType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBSMun = obj_
+ elif nodeName_ == 'vIBS': self.vIBS = child.text
+ elif nodeName_ == 'gCBS':
+ obj_ = gCBSType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gCBS = obj_
+ elif nodeName_ == 'gTribRegular':
+ obj_ = gTribRegularType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gTribRegular = obj_
+
+class IBSCBSType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, CST=None, cClassTrib=None, gIBSCBS=None, **kwargs_):
+ self.CST = CST
+ self.cClassTrib = cClassTrib
+ self.gIBSCBS = gIBSCBS
+ def factory(*args_, **kwargs_): return IBSCBSType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='IBSCBSType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='IBSCBSType', fromsubclass_=False, pretty_print=True):
+ if self.CST is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%sCST>%s%sCST>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.CST), input_name='CST')), namespaceprefix_))
+ if self.cClassTrib is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%scClassTrib>%s%scClassTrib>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.cClassTrib), input_name='cClassTrib')), namespaceprefix_))
+ if self.gIBSCBS is not None:
+ self.gIBSCBS.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBSCBS', pretty_print=pretty_print)
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'CST': self.CST = child.text
+ elif nodeName_ == 'cClassTrib': self.cClassTrib = child.text
+ elif nodeName_ == 'gIBSCBS':
+ obj_ = gIBSCBSType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBSCBS = obj_
+
+class gIBSUFTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vDif=None, vDevTrib=None, vIBSUF=None, **kwargs_):
+ self.vDif = vDif
+ self.vDevTrib = vDevTrib
+ self.vIBSUF = vIBSUF
+ def factory(*args_, **kwargs_): return gIBSUFTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSUFTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSUFTotType', fromsubclass_=False, pretty_print=True):
+ if self.vDif is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDif>%s%svDif>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDif), input_name='vDif')), namespaceprefix_))
+ if self.vDevTrib is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDevTrib>%s%svDevTrib>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDevTrib), input_name='vDevTrib')), namespaceprefix_))
+ if self.vIBSUF is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSUF>%s%svIBSUF>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSUF), input_name='vIBSUF')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vDif': self.vDif = child.text
+ elif nodeName_ == 'vDevTrib': self.vDevTrib = child.text
+ elif nodeName_ == 'vIBSUF': self.vIBSUF = child.text
+
+class gIBSMunTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vDif=None, vDevTrib=None, vIBSMun=None, **kwargs_):
+ self.vDif = vDif
+ self.vDevTrib = vDevTrib
+ self.vIBSMun = vIBSMun
+ def factory(*args_, **kwargs_): return gIBSMunTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSMunTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSMunTotType', fromsubclass_=False, pretty_print=True):
+ if self.vDif is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDif>%s%svDif>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDif), input_name='vDif')), namespaceprefix_))
+ if self.vDevTrib is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDevTrib>%s%svDevTrib>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDevTrib), input_name='vDevTrib')), namespaceprefix_))
+ if self.vIBSMun is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSMun>%s%svIBSMun>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSMun), input_name='vIBSMun')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vDif': self.vDif = child.text
+ elif nodeName_ == 'vDevTrib': self.vDevTrib = child.text
+ elif nodeName_ == 'vIBSMun': self.vIBSMun = child.text
+
+class gIBSTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, gIBSUF=None, gIBSMun=None, vIBS=None, vCredPres=None, vCredPresCondSus=None, **kwargs_):
+ self.gIBSUF = gIBSUF
+ self.gIBSMun = gIBSMun
+ self.vIBS = vIBS
+ self.vCredPres = vCredPres
+ self.vCredPresCondSus = vCredPresCondSus
+ def factory(*args_, **kwargs_): return gIBSTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gIBSTotType', fromsubclass_=False, pretty_print=True):
+ if self.gIBSUF is not None:
+ self.gIBSUF.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBSUF', pretty_print=pretty_print)
+ if self.gIBSMun is not None:
+ self.gIBSMun.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBSMun', pretty_print=pretty_print)
+ if self.vIBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBS>%s%svIBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBS), input_name='vIBS')), namespaceprefix_))
+ if self.vCredPres is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCredPres>%s%svCredPres>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCredPres), input_name='vCredPres')), namespaceprefix_))
+ if self.vCredPresCondSus is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCredPresCondSus>%s%svCredPresCondSus>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCredPresCondSus), input_name='vCredPresCondSus')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'gIBSUF':
+ obj_ = gIBSUFTotType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBSUF = obj_
+ elif nodeName_ == 'gIBSMun':
+ obj_ = gIBSMunTotType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBSMun = obj_
+ elif nodeName_ == 'vIBS': self.vIBS = child.text
+ elif nodeName_ == 'vCredPres': self.vCredPres = child.text
+ elif nodeName_ == 'vCredPresCondSus': self.vCredPresCondSus = child.text
+
+class gCBSTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vDif=None, vDevTrib=None, vCBS=None, vCredPres=None, vCredPresCondSus=None, **kwargs_):
+ self.vDif = vDif
+ self.vDevTrib = vDevTrib
+ self.vCBS = vCBS
+ self.vCredPres = vCredPres
+ self.vCredPresCondSus = vCredPresCondSus
+ def factory(*args_, **kwargs_): return gCBSTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gCBSTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gCBSTotType', fromsubclass_=False, pretty_print=True):
+ if self.vDif is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDif>%s%svDif>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDif), input_name='vDif')), namespaceprefix_))
+ if self.vDevTrib is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svDevTrib>%s%svDevTrib>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vDevTrib), input_name='vDevTrib')), namespaceprefix_))
+ if self.vCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCBS>%s%svCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCBS), input_name='vCBS')), namespaceprefix_))
+ if self.vCredPres is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCredPres>%s%svCredPres>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCredPres), input_name='vCredPres')), namespaceprefix_))
+ if self.vCredPresCondSus is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCredPresCondSus>%s%svCredPresCondSus>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCredPresCondSus), input_name='vCredPresCondSus')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vDif': self.vDif = child.text
+ elif nodeName_ == 'vDevTrib': self.vDevTrib = child.text
+ elif nodeName_ == 'vCBS': self.vCBS = child.text
+ elif nodeName_ == 'vCredPres': self.vCredPres = child.text
+ elif nodeName_ == 'vCredPresCondSus': self.vCredPresCondSus = child.text
+
+class gMonoTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vIBSMono=None, vCBSMono=None, vIBSMonoReten=None, vCBSMonoReten=None, vIBSMonoRet=None, vCBSMonoRet=None, **kwargs_):
+ self.vIBSMono = vIBSMono
+ self.vCBSMono = vCBSMono
+ self.vIBSMonoReten = vIBSMonoReten
+ self.vCBSMonoReten = vCBSMonoReten
+ self.vIBSMonoRet = vIBSMonoRet
+ self.vCBSMonoRet = vCBSMonoRet
+ def factory(*args_, **kwargs_): return gMonoTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gMonoTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='gMonoTotType', fromsubclass_=False, pretty_print=True):
+ if self.vIBSMono is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSMono>%s%svIBSMono>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSMono), input_name='vIBSMono')), namespaceprefix_))
+ if self.vCBSMono is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCBSMono>%s%svCBSMono>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCBSMono), input_name='vCBSMono')), namespaceprefix_))
+ if self.vIBSMonoReten is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSMonoReten>%s%svIBSMonoReten>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSMonoReten), input_name='vIBSMonoReten')), namespaceprefix_))
+ if self.vCBSMonoReten is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCBSMonoReten>%s%svCBSMonoReten>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCBSMonoReten), input_name='vCBSMonoReten')), namespaceprefix_))
+ if self.vIBSMonoRet is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svIBSMonoRet>%s%svIBSMonoRet>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vIBSMonoRet), input_name='vIBSMonoRet')), namespaceprefix_))
+ if self.vCBSMonoRet is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svCBSMonoRet>%s%svCBSMonoRet>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vCBSMonoRet), input_name='vCBSMonoRet')), namespaceprefix_))
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vIBSMono': self.vIBSMono = child.text
+ elif nodeName_ == 'vCBSMono': self.vCBSMono = child.text
+ elif nodeName_ == 'vIBSMonoReten': self.vIBSMonoReten = child.text
+ elif nodeName_ == 'vCBSMonoReten': self.vCBSMonoReten = child.text
+ elif nodeName_ == 'vIBSMonoRet': self.vIBSMonoRet = child.text
+ elif nodeName_ == 'vCBSMonoRet': self.vCBSMonoRet = child.text
+
+class IBSCBSTotType(GeneratedsSuper):
+ subclass = None
+ superclass = None
+ def __init__(self, vBCIBSCBS=None, gIBS=None, gCBS=None, gMono=None, **kwargs_):
+ self.vBCIBSCBS = vBCIBSCBS
+ self.gIBS = gIBS
+ self.gCBS = gCBS
+ self.gMono = gMono
+ def factory(*args_, **kwargs_): return IBSCBSTotType(*args_, **kwargs_)
+ factory = staticmethod(factory)
+ def export(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='IBSCBSTotType', pretty_print=True):
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%s%s%s' % (namespaceprefix_, name_, namespacedef_ and ' ' + namespacedef_ or '', ))
+ outfile.write('>\n')
+ self.exportChildren(outfile, level + 1, namespaceprefix_, namespacedef_, name_, pretty_print=pretty_print)
+ showIndent(outfile, level, pretty_print)
+ outfile.write('%s%s>\n' % (namespaceprefix_, name_))
+ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='', name_='IBSCBSTotType', fromsubclass_=False, pretty_print=True):
+ if self.vBCIBSCBS is not None:
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svBCIBSCBS>%s%svBCIBSCBS>\n' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vBCIBSCBS), input_name='vBCIBSCBS')), namespaceprefix_))
+ if self.gIBS is not None:
+ self.gIBS.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gIBS', pretty_print=pretty_print)
+ if self.gCBS is not None:
+ self.gCBS.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gCBS', pretty_print=pretty_print)
+ if self.gMono is not None:
+ self.gMono.export(outfile, level, namespaceprefix_, namespacedef_='', name_='gMono', pretty_print=pretty_print)
+ def build(self, node, gds_collector_=None):
+ for child in node:
+ nodeName_ = Tag_pattern_.match(child.tag).groups()[-1]
+ if nodeName_ == 'vBCIBSCBS': self.vBCIBSCBS = child.text
+ elif nodeName_ == 'gIBS':
+ obj_ = gIBSTotType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gIBS = obj_
+ elif nodeName_ == 'gCBS':
+ obj_ = gCBSTotType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gCBS = obj_
+ elif nodeName_ == 'gMono':
+ obj_ = gMonoTotType.factory(parent_object_=self)
+ obj_.build(child, gds_collector_=gds_collector_)
+ self.gMono = obj_
+
class impostoType(GeneratedsSuper):
+
"""Tributos incidentes nos produtos ou serviços da NF-e"""
__hash__ = GeneratedsSuper.__hash__
member_data_items_ = [
@@ -15257,10 +15881,11 @@ class impostoType(GeneratedsSuper):
MemberSpec_('COFINS', 'COFINSType', 0, 1, {'minOccurs': '0', 'name': 'COFINS', 'type': 'COFINSType'}, None),
MemberSpec_('COFINSST', 'COFINSSTType', 0, 1, {'minOccurs': '0', 'name': 'COFINSST', 'type': 'COFINSSTType'}, None),
MemberSpec_('ICMSUFDest', 'ICMSUFDestType', 0, 1, {'minOccurs': '0', 'name': 'ICMSUFDest', 'type': 'ICMSUFDestType'}, None),
+ MemberSpec_('IBSCBS', 'IBSCBSType', 0, 1, {'minOccurs': '0', 'name': 'IBSCBS', 'type': 'IBSCBSType'}, None),
]
subclass = None
superclass = None
- def __init__(self, vTotTrib=None, ICMS=None, II=None, IPI=None, ISSQN=None, PIS=None, PISST=None, COFINS=None, COFINSST=None, ICMSUFDest=None, gds_collector_=None, **kwargs_):
+ def __init__(self, vTotTrib=None, ICMS=None, II=None, IPI=None, ISSQN=None, PIS=None, PISST=None, COFINS=None, COFINSST=None, ICMSUFDest=None, IBSCBS=None, gds_collector_=None, **kwargs_):
self.gds_collector_ = gds_collector_
self.gds_elementtree_node_ = None
self.original_tagname_ = None
@@ -15287,6 +15912,8 @@ def __init__(self, vTotTrib=None, ICMS=None, II=None, IPI=None, ISSQN=None, PIS=
self.COFINSST_nsprefix_ = None
self.ICMSUFDest = ICMSUFDest
self.ICMSUFDest_nsprefix_ = None
+ self.IBSCBS = IBSCBS
+ self.IBSCBS_nsprefix_ = None
def factory(*args_, **kwargs_):
if CurrentSubclassModule_ is not None:
subclass = getSubclassFromModule_(
@@ -15323,7 +15950,8 @@ def hasContent_(self):
self.PISST is not None or
self.COFINS is not None or
self.COFINSST is not None or
- self.ICMSUFDest is not None
+ self.ICMSUFDest is not None or
+ self.IBSCBS is not None
):
return True
else:
@@ -15389,6 +16017,8 @@ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='',
if self.ICMSUFDest is not None:
namespaceprefix_ = self.ICMSUFDest_nsprefix_ + ':' if (UseCapturedNS_ and self.ICMSUFDest_nsprefix_) else ''
self.ICMSUFDest.export(outfile, level, namespaceprefix_, namespacedef_='', name_='ICMSUFDest', pretty_print=pretty_print)
+ if self.IBSCBS is not None:
+ self.IBSCBS.export(outfile, level, namespaceprefix_, namespacedef_='', name_='IBSCBS', pretty_print=pretty_print)
def build(self, node, gds_collector_=None):
self.gds_collector_ = gds_collector_
if SaveElementTreeNode:
@@ -15456,6 +16086,11 @@ def buildChildren(self, child_, node, nodeName_, fromsubclass_=False, gds_collec
obj_.build(child_, gds_collector_=gds_collector_)
self.ICMSUFDest = obj_
obj_.original_tagname_ = 'ICMSUFDest'
+ elif nodeName_ == 'IBSCBS':
+ obj_ = IBSCBSType.factory(parent_object_=self)
+ obj_.build(child_, gds_collector_=gds_collector_)
+ self.IBSCBS = obj_
+ obj_.original_tagname_ = 'IBSCBS'
# end class impostoType
@@ -26278,12 +26913,14 @@ class totalType(GeneratedsSuper):
__hash__ = GeneratedsSuper.__hash__
member_data_items_ = [
MemberSpec_('ICMSTot', 'ICMSTotType', 0, 0, {'name': 'ICMSTot', 'type': 'ICMSTotType'}, None),
+ MemberSpec_('IBSCBSTot', 'IBSCBSTotType', 0, 1, {'minOccurs': '0', 'name': 'IBSCBSTot', 'type': 'IBSCBSTotType'}, None),
MemberSpec_('ISSQNtot', 'ISSQNtotType', 0, 1, {'minOccurs': '0', 'name': 'ISSQNtot', 'type': 'ISSQNtotType'}, None),
MemberSpec_('retTrib', 'retTribType', 0, 1, {'minOccurs': '0', 'name': 'retTrib', 'type': 'retTribType'}, None),
+ MemberSpec_('vNFTot', ['TDec_1302', 'xs:string'], 0, 1, {'minOccurs': '0', 'name': 'vNFTot', 'type': 'xs:string'}, None),
]
subclass = None
superclass = None
- def __init__(self, ICMSTot=None, ISSQNtot=None, retTrib=None, gds_collector_=None, **kwargs_):
+ def __init__(self, ICMSTot=None, IBSCBSTot=None, ISSQNtot=None, retTrib=None, vNFTot=None, gds_collector_=None, **kwargs_):
self.gds_collector_ = gds_collector_
self.gds_elementtree_node_ = None
self.original_tagname_ = None
@@ -26291,10 +26928,14 @@ def __init__(self, ICMSTot=None, ISSQNtot=None, retTrib=None, gds_collector_=Non
self.ns_prefix_ = None
self.ICMSTot = ICMSTot
self.ICMSTot_nsprefix_ = None
+ self.IBSCBSTot = IBSCBSTot
+ self.IBSCBSTot_nsprefix_ = None
self.ISSQNtot = ISSQNtot
self.ISSQNtot_nsprefix_ = None
self.retTrib = retTrib
self.retTrib_nsprefix_ = None
+ self.vNFTot = vNFTot
+ self.vNFTot_nsprefix_ = None
def factory(*args_, **kwargs_):
if CurrentSubclassModule_ is not None:
subclass = getSubclassFromModule_(
@@ -26309,8 +26950,10 @@ def factory(*args_, **kwargs_):
def hasContent_(self):
if (
self.ICMSTot is not None or
+ self.IBSCBSTot is not None or
self.ISSQNtot is not None or
- self.retTrib is not None
+ self.retTrib is not None or
+ self.vNFTot is not None
):
return True
else:
@@ -26348,12 +26991,18 @@ def exportChildren(self, outfile, level, namespaceprefix_='', namespacedef_='',
if self.ICMSTot is not None:
namespaceprefix_ = self.ICMSTot_nsprefix_ + ':' if (UseCapturedNS_ and self.ICMSTot_nsprefix_) else ''
self.ICMSTot.export(outfile, level, namespaceprefix_, namespacedef_='', name_='ICMSTot', pretty_print=pretty_print)
+ if self.IBSCBSTot is not None:
+ self.IBSCBSTot.export(outfile, level, namespaceprefix_, namespacedef_='', name_='IBSCBSTot', pretty_print=pretty_print)
if self.ISSQNtot is not None:
namespaceprefix_ = self.ISSQNtot_nsprefix_ + ':' if (UseCapturedNS_ and self.ISSQNtot_nsprefix_) else ''
self.ISSQNtot.export(outfile, level, namespaceprefix_, namespacedef_='', name_='ISSQNtot', pretty_print=pretty_print)
if self.retTrib is not None:
namespaceprefix_ = self.retTrib_nsprefix_ + ':' if (UseCapturedNS_ and self.retTrib_nsprefix_) else ''
self.retTrib.export(outfile, level, namespaceprefix_, namespacedef_='', name_='retTrib', pretty_print=pretty_print)
+ if self.vNFTot is not None:
+ namespaceprefix_ = self.vNFTot_nsprefix_ + ':' if (UseCapturedNS_ and self.vNFTot_nsprefix_) else ''
+ showIndent(outfile, level, pretty_print)
+ outfile.write('<%svNFTot>%s%svNFTot>%s' % (namespaceprefix_ , self.gds_encode(self.gds_format_string(quote_xml(self.vNFTot), input_name='vNFTot')), namespaceprefix_ , eol_))
def build(self, node, gds_collector_=None):
self.gds_collector_ = gds_collector_
if SaveElementTreeNode:
@@ -26373,6 +27022,11 @@ def buildChildren(self, child_, node, nodeName_, fromsubclass_=False, gds_collec
obj_.build(child_, gds_collector_=gds_collector_)
self.ICMSTot = obj_
obj_.original_tagname_ = 'ICMSTot'
+ elif nodeName_ == 'IBSCBSTot':
+ obj_ = IBSCBSTotType.factory(parent_object_=self)
+ obj_.build(child_, gds_collector_=gds_collector_)
+ self.IBSCBSTot = obj_
+ obj_.original_tagname_ = 'IBSCBSTot'
elif nodeName_ == 'ISSQNtot':
obj_ = ISSQNtotType.factory(parent_object_=self)
obj_.build(child_, gds_collector_=gds_collector_)
@@ -26383,6 +27037,12 @@ def buildChildren(self, child_, node, nodeName_, fromsubclass_=False, gds_collec
obj_.build(child_, gds_collector_=gds_collector_)
self.retTrib = obj_
obj_.original_tagname_ = 'retTrib'
+ elif nodeName_ == 'vNFTot':
+ value_ = child_.text
+ value_ = self.gds_parse_string(value_, node, 'vNFTot')
+ value_ = self.gds_validate_string(value_, node, 'vNFTot')
+ self.vNFTot = value_
+ self.vNFTot_nsprefix_ = child_.prefix
# end class totalType
diff --git a/schemas/nfe/v4_00/DFeTiposBasicos_v1.00.xsd b/schemas/nfe/v4_00/DFeTiposBasicos_v1.00.xsd
new file mode 100644
index 00000000..a5051dd0
--- /dev/null
+++ b/schemas/nfe/v4_00/DFeTiposBasicos_v1.00.xsd
@@ -0,0 +1,1293 @@
+
+
+
+
+
+ Tipo string genérico
+
+
+
+
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+
+ Código de Classificação Tributária do IBS e da CBS
+
+
+
+
+
+
+
+
+ Código de Classificação do Crédito Presumido do IBS e da CBS, conforme tabela cCredPres
+
+
+
+
+
+
+
+
+ Tipo Decimal com 15 dígitos, sendo 11 de corpo e 4 decimais
+
+
+
+
+
+
+
+
+ Tipo Decimal com 11 inteiros, podendo ter 4 decimais (utilizado em tags opcionais)
+
+
+
+
+
+
+
+
+ Tipo Decimal com 15 dígitos, sendo 13 de corpo e 2 decimais
+
+
+
+
+
+
+
+
+ Tipo Decimal com até 3 dígitos inteiros, podendo ter de 2 até 4 decimais
+
+
+
+
+
+
+
+
+ Tipo da Operação com Ente Governamental
+
+
+
+
+
+
+
+
+
+ Tipo de Ente Governamental
+
+
+
+
+
+
+
+
+
+
+
+ Tipo de classificação do Crédito Presumido IBS ZFM
+
+
+
+
+
+
+
+
+
+
+
+ Tipo Indicador de Doação
+
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFCom
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+ Indica se a operação é de doação
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação da NF3e
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+ Indica se a operação é de doação
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFAg
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação do CTe
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação do BPe
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFCe
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+ Indica se a operação é de doação
+
+
+
+
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFe
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+ Indica se a operação é de doação
+
+
+
+
+
+
+ Informar essa opção da Choice para Monofasia (CST 620)
+
+
+
+
+ Informar essa opção da Choice para o CST 800
+
+
+
+
+ Informar essa opção da Choice para o CST 811
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+ Crédito Presumido da Operação. Informado conforme indicador no cClassTrib.
+
+
+
+
+ Classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM. Informado conforme indicador no cClassTrib.
+
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFGas
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+
+ Informar essa opção da Choice para Monofasia
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações do Imposto Seletivo
+
+
+
+
+ Código Situação Tributária do Imposto Seletivo
+
+
+
+
+
+
+ Valor do BC
+
+
+
+
+ Alíquota do Imposto Seletivo (percentual)
+
+
+
+
+ Alíquota do Imposto Seletivo (por valor)
+
+
+
+
+
+ Unidade de medida apropriada especificada em Lei Ordinaria para fins de apuração do Imposto Seletivo
+
+
+
+
+
+
+
+
+
+
+ Quantidade com abse no campo uTrib informado
+
+
+
+
+
+ Valor do Imposto Seletivo calculado
+
+
+
+
+
+
+
+ Grupo de informações de totais do Imposto Seletivo
+
+
+
+
+ Valor Total do Imposto Seletivo
+
+
+
+
+
+
+ Grupo de informações de totais da CBS/IBS
+
+
+
+
+ Total Base de Calculo
+
+
+
+
+ Totalização do IBS
+
+
+
+
+
+ Totalização do IBS de competência da UF
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total do IBS Estadual
+
+
+
+
+
+
+
+ Totalização do IBS de competência Municipal
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total do IBS Municipal
+
+
+
+
+
+
+
+ Valor total do IBS
+
+
+
+
+
+
+
+ Totalização da CBS
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total da CBS
+
+
+
+
+
+
+
+ Totalização do estorno de crédito
+
+
+
+
+
+ Valor total do IBS estornado
+
+
+
+
+ Valor total da CBS estornada
+
+
+
+
+
+
+
+
+
+ Grupo de informações de totais da CBS/IBS com monofasia
+
+
+
+
+ Total Base de Calculo
+
+
+
+
+ Totalização do IBS
+
+
+
+
+
+ Totalização do IBS de competência da UF
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total do IBS Estadual
+
+
+
+
+
+
+
+ Totalização do IBS de competência Municipal
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total do IBS Municipal
+
+
+
+
+
+
+
+ Valor total do IBS
+
+
+
+
+ Total do Crédito Presumido
+
+
+
+
+ Total do Crédito Presumido Condição Suspensiva
+
+
+
+
+
+
+
+ Totalização da CBS
+
+
+
+
+
+ Total do Diferimento
+
+
+
+
+ Total de devoluções de tributos
+
+
+
+
+ Valor total da CBS
+
+
+
+
+ Total do Crédito Presumido
+
+
+
+
+ Total do Crédito Presumido Condição Suspensiva
+
+
+
+
+
+
+
+ Totais da Monofasia
+ Só deverá ser utilizado para DFe modelos 55 e 65
+
+
+
+
+
+ Valor total do IBS monofásico
+
+
+
+
+ Valor total da CBS monofásica
+
+
+
+
+ Valor total do IBS monofásico sujeito a retenção
+
+
+
+
+ Valor total da CBS monofásica sujeita a retenção
+
+
+
+
+ Valor do IBS monofásico retido anteriormente
+
+
+
+
+ Valor da CBS monofásica retida anteriormente
+
+
+
+
+
+
+
+ Totalização do estorno de crédito
+
+
+
+
+
+ Valor total do IBS estornado
+
+
+
+
+ Valor total da CBS estornada
+
+
+
+
+
+
+
+
+
+ Tipo Monofasia
+
+
+
+ Monofasia
+
+
+
+ Grupo de informações da Tributação Monofásica padrão
+
+
+
+
+
+ Quantidade tributada na monofasia
+
+
+
+
+ Alíquota ad rem do IBS
+
+
+
+
+ Alíquota ad rem da CBS
+
+
+
+
+ Valor do IBS monofásico
+
+
+
+
+ Valor da CBS monofásica
+
+
+
+
+
+
+
+ Grupo de informações da Tributação Monofásica sujeita a retenção
+
+
+
+
+
+ Quantidade tributada sujeita a retenção.
+
+
+
+
+ Alíquota ad rem do IBS sujeito a retenção
+
+
+
+
+ Valor do IBS monofásico sujeito a retenção
+
+
+
+
+ Alíquota ad rem da CBS sujeita a retenção
+
+
+
+
+ Valor da CBS monofásica sujeita a retenção
+
+
+
+
+
+
+
+ Grupo de informações da Tributação Monofásica retida anteriormente
+
+
+
+
+
+ Quantidade tributada retida anteriormente
+
+
+
+
+ Alíquota ad rem do IBS retido anteriormente
+
+
+
+
+ Valor do IBS retido anteriormente
+
+
+
+
+ Alíquota ad rem da CBS retida anteriormente
+
+
+
+
+ Valor da CBS retida anteriormente
+
+
+
+
+
+
+
+ Grupo de informações do diferimento da Tributação Monofásica
+
+
+
+
+
+ Percentual do diferimento do imposto monofásico
+
+
+
+
+ Valor do IBS monofásico diferido
+
+
+
+
+ Percentual do diferimento do imposto monofásico
+
+
+
+
+ Valor da CBS monofásica diferida
+
+
+
+
+
+
+
+ Total de IBS monofásico do item
+
+
+
+
+ Total da CBS monofásica do item
+
+
+
+
+
+
+ Tipo CBS IBS Completo
+
+
+
+ IBS / CBS
+
+
+
+ Valor do BC
+
+
+
+
+
+ Grupo de informações do IBS na UF
+
+
+
+
+
+ Aliquota do IBS de competência das UF (em percentual)
+
+
+
+
+ Grupo de campos do Diferimento
+
+
+
+
+ Grupo de Informações da devolução de tributos
+
+
+
+
+ Grupo de campos da redução de aliquota
+
+
+
+
+ Valor do IBS de competência das UF
+
+
+
+
+
+
+
+ Grupo de Informações do IBS no Município
+
+
+
+
+
+ Aliquota do IBS Municipal (em percentual)
+
+
+
+
+ Grupo de campos do Diferimento
+
+
+
+
+ Grupo de Informações da devolução de tributos
+
+
+
+
+ Grupo de campos da redução de aliquota
+
+
+
+
+ Valor do IBS Municipal
+
+
+
+
+
+
+
+ Valor do IBS
+
+
+
+
+
+ Grupo de Tributação da CBS
+
+
+
+
+
+ Aliquota da CBS (em percentual)
+
+
+
+
+ Grupo de campos do Diferimento
+
+
+
+
+ Grupo de Informações da devolução de tributos
+
+
+
+
+ Grupo de campos da redução de aliquota
+
+
+
+
+ Valor da CBS
+
+
+
+
+
+
+
+ Grupo de informações da Tributação Regular. Informar como seria a tributação caso não cumprida a condição resolutória/suspensiva. Exemplo 1: Art. 442, §4. Operações com ZFM e ALC. Exemplo 2: Operações com suspensão do tributo.
+
+
+
+
+ Grupo de informações da composição do valor do IBS e da CBS em compras governamental
+
+
+
+
+
+
+ Tipo Redução Base de Cálculo
+
+
+
+
+ Percentual de redução de aliquota do cClassTrib
+
+
+
+
+ Aliquota Efetiva que será aplicada a Base de Calculo (em percentual)
+
+
+
+
+
+
+ Tipo Crédito Presumido
+
+
+
+
+ Percentual do Crédito Presumido
+
+
+
+
+
+ Valor do Crédito Presumido
+
+
+
+
+ Valor do Crédito Presumido Condição Suspensiva, preencher apenas para cCredPres que possui indicação de Condição Suspensiva
+
+
+
+
+
+
+
+ Tipo Diferimento
+
+
+
+
+ Percentual do diferimento
+
+
+
+
+ Valor do diferimento
+
+
+
+
+
+
+ Tipo Devolução Tributo
+
+
+
+
+ Valor do tributo devolvido. No fornecimento de energia elétrica, água, esgoto e
+gás natural e em outras hipóteses definidas no regulamento
+
+
+
+
+
+
+ Tipo Tributação Regular
+
+
+
+
+ Código da Situação Tributária do IBS e CBS
+ Informar qual seria o CST caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Informar qual seria o cClassTrib caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Alíquota do IBS da UF
+ Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Valor do IBS da UF
+ Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Alíquota do IBS do Município
+ Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Valor do IBS do Município
+ Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Alíquota da CBS
+ Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+ Valor da CBS
+ Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
+
+
+
+
+
+
+ Tipo Tributação Compra Governamental
+
+
+
+
+
+ Valor que seria devido a UF, sem aplicação do Art. 473. da LC 214/2025
+
+
+
+
+
+ Valor que seria devido ao município, sem aplicação do Art. 473. da LC 214/2025
+
+
+
+
+
+ Valor que seria devido a CBS, sem aplicação do Art. 473. da LC 214/2025
+
+
+
+
+
+
+ Tipo Compras Governamentais
+ Cada DFe que utilizar deverá utilizar esses tipo no grupo ide
+
+
+
+
+ Para administração pública direta e suas autarquias e fundações:
+1=União
+2=Estados
+3=Distrito Federal
+4=Municípios
+
+
+
+
+ Percentual de redução de aliquota em compra governamental
+
+
+
+
+
+
+ Tipo Compras Governamentais
+ Cada DFe que utilizar deverá utilizar esses tipo no grupo ide
+
+
+
+
+ Para administração pública direta e suas autarquias e fundações:
+1=União
+2=Estados
+3=Distrito Federal
+4=Municípios
+
+
+
+
+ Percentual de redução de aliquota em compra governamental
+
+
+
+
+ Tipo da operação com ente governamental:
+1 - Fornecimento
+2 - Recebimento do Pagamento
+
+
+
+
+
+
+ Tipo Transferência de Crédito
+
+
+
+
+ Valor do IBS a ser transferido
+
+
+
+
+ Valor da CBS a ser transferida
+
+
+
+
+
+
+ Tipo Estorno de Crédito
+
+
+
+
+ Valor do IBS a ser estornado
+
+
+
+
+ Valor da CBS a ser estornada
+
+
+
+
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
+
+
+
+
+
+ Tipo Ajuste de Competência
+
+
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
+
+
+ Valor do IBS
+
+
+
+
+ Valor da CBS
+
+
+
+
+
+
+ Tipo Crédito Presumido da Operação
+
+
+
+
+ Valor da Base de Cálculo do Crédito Presumido da Operação
+
+
+
+
+ Código de Classificação do Crédito Presumido do IBS e da CBS
+
+
+
+
+ Grupo de Informações do Crédito Presumido referente ao IBS, quando aproveitado pelo emitente do documento.
+
+
+
+
+ Grupo de Informações do Crédito Presumido referente a CBS, quando aproveitado pelo emitente do documento.
+
+
+
+
+
+
+ Tipo Informações do crédito presumido de IBS para fornecimentos a partir da ZFM
+
+
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
+
+
+ Classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM
+ 0 - Sem crédito presumido;
+1 - Bens de consumo final (55%);
+2 - Bens de capital (75%);
+3 - Bens intermediários (90,25%);
+4 - Bens de informática e outros definidos em legislação (100%).
+OBS: Percentuais definidos no art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido
+
+
+
+
+
+ Valor do crédito presumido calculado sobre o saldo devedor apurado
+
+
+
+
+
\ No newline at end of file
diff --git a/schemas/nfe/v4_00/leiauteNFe_v4.00.xsd b/schemas/nfe/v4_00/leiauteNFe_v4.00.xsd
index 71af1f1d..7d6fb69e 100644
--- a/schemas/nfe/v4_00/leiauteNFe_v4.00.xsd
+++ b/schemas/nfe/v4_00/leiauteNFe_v4.00.xsd
@@ -1,5 +1,5 @@
-
+
@@ -13,9 +13,15 @@
+
+
+
+
+
+
Tipo Nota Fiscal Eletrônica
@@ -88,6 +94,11 @@ SCAN 900-999
Data e Hora da saída ou de entrada da mercadoria / produto (AAAA-MM-DDTHH:mm:ssTZD)
+
+
+ Data da previsão de entrega ou disponibilização do bem (AAAA-MM-DD)
+
+
Tipo do Documento Fiscal (0 - entrada; 1 - saída)
@@ -118,6 +129,12 @@ SCAN 900-999
Código do Município de Ocorrência do Fato Gerador (utilizar a tabela do IBGE)
+
+
+ Informar o município de ocorrência do fato gerador do fato gerador do IBS / CBS.
+Campo preenchido somente quando “indPres = 5 (Operação presencial, fora do estabelecimento) ”, e não tiver endereço do destinatário (Grupo: E05) ou local de entrega (Grupo: G01).
+
+
Formato de impressão do DANFE (0-sem DANFE;1-DANFe Retrato; 2-DANFe Paisagem;3-DANFe Simplificado;
@@ -185,7 +202,19 @@ SCAN 900-999
1 - NFe normal
2 - NFe complementar
3 - NFe de ajuste
-4 - Devolução/Retorno
+4 - Devolução/Retorno
+5 - Nota de crédito
+6 - Nota de débito
+
+
+
+
+ Tipo de Nota de Débito
+
+
+
+
+ Tipo de Nota de Crédito
@@ -276,7 +305,7 @@ para tpEmis diferente de 1
-
+
Grupo de infromações da NF referenciada
@@ -287,6 +316,11 @@ para tpEmis diferente de 1
Chave de acesso das NF-e referenciadas. Chave de acesso compostas por Código da UF (tabela do IBGE) + AAMM da emissão + CNPJ do Emitente + modelo, série e número da NF-e Referenciada + Código Numérico + DV.
+
+
+ Referencia uma NF-e (modelo 55) emitida anteriormente pela sua Chave de Acesso com código numérico zerado, permitindo manter o sigilo da NF-e referenciada.
+
+
Dados da NF modelo 1/1A referenciada ou NF modelo 2 referenciada
@@ -456,6 +490,25 @@ Preencher com "2B", quando se tratar de Cupom Fiscal emitido por máqu
+
+
+ Grupo de Compras Governamentais
+
+
+
+
+ Informado para abater as parcelas de antecipação de pagamento, conforme Art. 10. § 4º
+
+
+
+
+
+ Chave de acesso da NF-e de antecipação de pagamento
+
+
+
+
+
@@ -547,7 +600,8 @@ Preencher com "2B", quando se tratar de Cupom Fiscal emitido por máqu
Este campo será obrigatoriamente preenchido com:
1 – Simples Nacional;
2 – Simples Nacional – excesso de sublimite de receita bruta;
-3 – Regime Normal.
+3 – Regime Normal.
+4 - Simples Nacional - Microempreendedor individual - MEI
@@ -555,6 +609,7 @@ Este campo será obrigatoriamente preenchido com:
+
@@ -907,6 +962,41 @@ Formato ”CFOP9999”.
+
+
+ Grupo de informações sobre o CréditoPresumido
+
+
+
+
+
+ Código de Benefício Fiscal de Crédito Presumido na UF aplicado ao item
+
+
+
+
+
+
+
+
+
+
+ Percentual do Crédito Presumido
+
+
+
+
+ Valor do Crédito Presumido
+
+
+
+
+
+
+
+ Classificação para subapuração do IBS na ZFM
+
+
Código EX TIPI (3 posições)
@@ -995,7 +1085,7 @@ Formato ”CFOP9999”.
- Valor unitário de tributação - - alterado para aceitar 0 a 10 casas decimais e 11 inteiros
+ Valor unitário de tributação - alterado para aceitar 0 a 10 casas decimais e 11 inteiros
@@ -1032,16 +1122,26 @@ Formato ”CFOP9999”.
+
+
+ Indicador de fornecimento de bem móvel usado: 1-Bem Móvel Usado
+
+
+
+
+
+
+
+
- Delcaração de Importação
-(NT 2011/004)
+ Declaração de Importação (NT 2011/004)
- Numero do Documento de Importação DI/DSI/DA/DRI-E (DI/DSI/DA/DRI-E) (NT2011/004)
+ Número do Documento de Importação (DI, DSI, DIRE, DUImp) (NT2011/004)
@@ -1078,7 +1178,7 @@ Formato ”CFOP9999”.
- Via de transporte internacional informada na DI
+ Via de transporte internacional informada na DI ou na Declaração Única de Importação (DUImp):
1-Maritima;2-Fluvial;3-Lacustre;4-Aerea;5-Postal;6-Ferroviaria;7-Rodoviaria;8-Conduto;9-Meios Proprios;10-Entrada/Saida Ficta;
11-Courier;12-Em maos;13-Por reboque.
@@ -1120,11 +1220,18 @@ Formato ”CFOP9999”.
-
-
- CNPJ do adquirente ou do encomendante
-
-
+
+
+
+ CNPJ do adquirente ou do encomendante
+
+
+
+
+ CPF do adquirente ou do encomendante
+
+
+
Sigla da UF do adquirente ou do encomendante
@@ -1160,7 +1267,7 @@ Formato ”CFOP9999”.
- Número seqüencial do item dentro da Adição
+ Número seqüencial do item
@@ -1182,7 +1289,7 @@ Formato ”CFOP9999”.
- Valor do desconto do item da DI – adição
+ Valor do desconto do item
@@ -1287,7 +1394,7 @@ Formato ”CFOP9999”.
Número do lote do produto.
-
+
@@ -1797,7 +1904,7 @@ N-NormalVIN
Descrição do Produto conforme ANP. Utilizar a descrição de produtos do Sistema de Informações de Movimentação de Produtos - SIMP (http://www.anp.gov.br/simp/).
-
+
@@ -1926,6 +2033,42 @@ ambiente.
+
+
+ Percentual do índice de mistura do Biodiesel (B100) no Óleo Diesel B instituído pelo órgão regulamentador
+
+
+
+
+ Grupo indicador da origem do combustível
+
+
+
+
+
+ Indicador de importação 0=Nacional; 1=Importado;
+
+
+
+
+
+
+
+
+
+
+
+ UF de origem do produtor ou do importado
+
+
+
+
+ Percentual originário para a UF
+
+
+
+
+
@@ -1956,7 +2099,7 @@ ambiente.
Valor estimado total de impostos federais, estaduais e municipais
-
+
@@ -2038,6 +2181,47 @@ ambiente.
+
+
+ Tributação monofásica própria sobre combustíveis
+
+
+
+
+
+ origem da mercadoria
+
+
+
+
+ Tributção pelo ICMS
+02= Tributação monofásica própria sobre combustíveis;
+
+
+
+
+
+
+
+
+
+
+ Quantidade tributada.
+
+
+
+
+ Alíquota ad rem do imposto.
+
+
+
+
+ Valor do ICMS própri
+
+
+
+
+
Tributação pelo ICMS
@@ -2202,6 +2386,83 @@ ambiente.
+
+
+ Tributação monofásica própria e com responsabilidade pela retenção sobre combustíveis
+
+
+
+
+
+ origem da mercadoria
+
+
+
+
+ Tributção pelo ICMS
+15= Tributação monofásica própria e com responsabilidade pela retenção sobre combustíveis;
+
+
+
+
+
+
+
+
+
+
+ Quantidade tributada.
+
+
+
+
+ Alíquota ad rem do imposto.
+
+
+
+
+ Valor do ICMS próprio
+
+
+
+
+ Quantidade tributada sujeita a retenção.
+
+
+
+
+ Alíquota ad rem do imposto com retenção.
+
+
+
+
+ Valor do ICMS com retenção
+
+
+
+
+
+ Percentual de redução do valor da alíquota ad rem do ICMS.
+
+
+
+
+ Motivo da redução do adrem
+ 1= Transporte coletivo de passageiros; 9=Outros;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Tributção pelo ICMS
@@ -2305,6 +2566,20 @@ ambiente.
+
+
+ Indica se o valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd):
+0=Valor do ICMS desonerado (vICMSDeson) não deduz do valor do item (vProd) / total da NF-e;
+1=Valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd) / total da NF-e.
+
+
+
+
+
+
+
+
+
@@ -2423,6 +2698,20 @@ ambiente.
+
+
+ Indica se o valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd):
+0=Valor do ICMS desonerado (vICMSDeson) não deduz do valor do item (vProd) / total da NF-e;
+1=Valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd) / total da NF-e.
+
+
+
+
+
+
+
+
+
@@ -2501,29 +2790,40 @@ Informar o motivo da desoneração:
+
+
+ Indica se o valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd):
+0=Valor do ICMS desonerado (vICMSDeson) não deduz do valor do item (vProd) / total da NF-e;
+1=Valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd) / total da NF-e.
+
+
+
+
+
+
+
+
+
- Tributção pelo ICMS
-51 - Diferimento
-A exigência do preenchimento das informações do ICMS diferido fica à critério de cada UF.
+ Tributção pelo ICMS 51 - Diferimento. A exigência do preenchimento das informações do ICMS diferido fica à critério de cada UF.
origem da mercadoria: 0 - Nacional
-1 - Estrangeira - Importação direta
-2 - Estrangeira - Adquirida no mercado interno
+ 1 - Estrangeira - Importação direta
+ 2 - Estrangeira - Adquirida no mercado interno
- Tributção pelo ICMS
-20 - Com redução de base de cálculo
+ Tributação pelo ICMS 51 - Tributação com Diferimento
@@ -2535,10 +2835,10 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
Modalidade de determinação da BC do ICMS:
-0 - Margem Valor Agregado (%);
-1 - Pauta (valor);
-2 - Preço Tabelado Máximo (valor);
-3 - Valor da Operação.
+ 0 - Margem Valor Agregado (%);
+ 1 - Pauta (valor);
+ 2 - Preço Tabelado Máximo (valor);
+ 3 - Valor da Operação.
@@ -2555,6 +2855,17 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
Percentual de redução da BC
+
+
+ Código de Benefício Fiscal na UF aplicado ao item quando houver RBC.
+
+
+
+
+
+
+
+
Valor da BC do ICMS
@@ -2622,6 +2933,72 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
+
+
+ Tributação monofásica sobre combustíveis com recolhimento diferido
+
+
+
+
+
+ origem da mercadoria
+
+
+
+
+ Tributção pelo ICMS
+53= Tributação monofásica sobre combustíveis com recolhimento diferido;
+
+
+
+
+
+
+
+
+
+
+ Quantidade tributada.
+
+
+
+
+ Alíquota ad rem do imposto.
+
+
+
+
+ Valor do ICMS da operação
+
+
+
+
+ Percentual do diferemento
+
+
+
+
+ Valor do ICMS diferido
+
+
+
+
+ Valor do ICMS próprio devido
+
+
+
+
+ Quantidade tributada diferida.
+
+
+
+
+ Alíquota ad rem do imposto diferido
+
+
+
+
+
Tributação pelo ICMS
@@ -2715,6 +3092,47 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
+
+
+ Tributação monofásica sobre combustíveis cobrada anteriormente;
+
+
+
+
+
+ origem da mercadoria
+
+
+
+
+ Tributção pelo ICMS
+61= Tributação monofásica sobre combustíveis cobrada anteriormente
+
+
+
+
+
+
+
+
+
+
+ Quantidade tributada retida anteriormente
+
+
+
+
+ Alíquota ad rem do imposto retido anteriormente
+
+
+
+
+ Valor do ICMS retido anteriormente
+
+
+
+
+
Tributação pelo ICMS
@@ -2884,6 +3302,20 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
+
+
+ Indica se o valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd):
+0=Valor do ICMS desonerado (vICMSDeson) não deduz do valor do item (vProd) / total da NF-e;
+1=Valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd) / total da NF-e.
+
+
+
+
+
+
+
+
+
@@ -3081,6 +3513,20 @@ A exigência do preenchimento das informações do ICMS diferido fica à critér
+
+
+ Indica se o valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd):
+0=Valor do ICMS desonerado (vICMSDeson) não deduz do valor do item (vProd) / total da NF-e;
+1=Valor do ICMS desonerado (vICMSDeson) deduz do valor do item (vProd) / total da NF-e.
+
+
+
+
+
+
+
+
+
@@ -3393,7 +3839,7 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o
-
+
origem da mercadoria: 0 - Nacional
1 - Estrangeira - Importação direta
@@ -3712,11 +4158,11 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o
- Tributação do ICMS pelo SIMPLES NACIONAL, CRT=1 – Simples Nacional e CSOSN=900 (v2.0)
+ Tributação do ICMS pelo SIMPLES NACIONAL, CRT=1 – Simples Nacional, CRT=4 - MEI e CSOSN=900 (v2.0)
-
+
origem da mercadoria: 0 - Nacional
1 - Estrangeira - Importação direta
@@ -3971,7 +4417,7 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o
Código do serviço prestado dentro do município
-
+
@@ -3999,7 +4445,7 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o
Número do Processo administrativo ou judicial de suspenção do processo
-
+
@@ -4631,6 +5077,16 @@ Substituição Tributaria;
+
+
+ Grupo de informações do Imposto Seletivo
+
+
+
+
+ Grupo de informações dos tributos IBS, CBS e Imposto Seletivo
+
+
@@ -4729,6 +5185,36 @@ Substituição Tributaria;
+
+
+ Valor total do Item, correspondente à sua participação no total da nota. A soma dos itens deverá corresponder ao total da nota.
+
+
+
+
+ Referenciamento de item de outros DFe
+
+
+
+
+
+ Chave de Acesso do DFe referenciado
+
+
+
+
+ Número do item do documento referenciado. Corresponde ao atributo nItem do elemento det do documento original.
+
+
+
+
+
+
+
+
+
+
+
@@ -4810,6 +5296,36 @@ Substituição Tributaria;
Valor Total do FCP (Fundo de Combate à Pobreza) retido anteriormente por substituição tributária.
+
+
+ Valor total da quantidade tributada do ICMS monofásico próprio
+
+
+
+
+ Valor total do ICMS monofásico próprio
+
+
+
+
+ Valor total da quantidade tributada do ICMS monofásico sujeito a retenção
+
+
+
+
+ Valor total do ICMS monofásico sujeito a retenção
+
+
+
+
+ Valor total da quantidade tributada do ICMS monofásico retido anteriormente
+
+
+
+
+ Valor do ICMS monofásico retido anteriormente
+
+
Valor Total dos produtos e serviços
@@ -4997,6 +5513,21 @@ Substituição Tributaria;
+
+
+ Valores totais da NF com Imposto Seletivo
+
+
+
+
+ Valores totais da NF com IBS / CBS
+
+
+
+
+ Valor Total da NF considerando os impostos por fora IBS, CBS e IS
+
+
@@ -5381,17 +5912,34 @@ Substituição Tributaria;
Valor do Pagamento. Esta tag poderá ser omitida quando a tag tPag=90 (Sem Pagamento), caso contrário deverá ser preenchida.
+
+
+ Data do Pagamento
+
+
+
+
+
+ CNPJ transacional do pagamento - Preencher informando o CNPJ do estabelecimento onde o pagamento foi processado/transacionado/recebido quando a emissão do documento fiscal ocorrer em estabelecimento distinto
+
+
+
+
+ UF do CNPJ do estabelecimento onde o pagamento foi processado/transacionado/recebido.
+
+
+
- Grupo de Cartões
+ Grupo de Cartões, PIX, Boletos e outros Pagamentos Eletrônicos
- Tipo de Integração do processo de pagamento com o sistema de automação da empresa/
- 1=Pagamento integrado com o sistema de automação da empresa Ex. equipamento TEF , Comercio Eletronico
- 2=Pagamento não integrado com o sistema de automação da empresa Ex: equipamento POS
+ Tipo de Integração do processo de pagamento com o sistema de automação da empresa:
+1 - Pagamento integrado com o sistema de automação da empresa (Ex.: equipamento TEF, Comércio Eletrônico, POS Integrado);
+2 - Pagamento não integrado com o sistema de automação da empresa (Ex.: equipamento POS Simples).
@@ -5419,12 +5967,28 @@ Substituição Tributaria;
- Número de autorização da operação cartão de crédito/débito
+ Número de autorização da operação com cartões, PIX, boletos e outros pagamentos eletrônicos
-
+
+
+
+
+
+
+ CNPJ do beneficiário do pagamento
+
+
+
+
+ Identificador do terminal de pagamento
+
+
+
+
+
@@ -5574,7 +6138,8 @@ concessório
1 - Justiça Federal;
2 - Justiça Estadual;
3 - Secex/RFB;
-9 - Outros
+4 - CONFAZ;
+9 - Outros.
@@ -5583,6 +6148,7 @@ concessório
+
@@ -5592,9 +6158,11 @@ concessório
Tipo do ato concessório
Para origem do Processo na SEFAZ (indProc=0), informar o
tipo de ato concessório:
-08=Termo de Acordo;
-10=Regime Especial;
-12=Autorização específica;
+08 - Termo de Acordo;
+10 - Regime Especial;
+12 - Autorização específica;
+14 - Ajuste SINIEF;
+15 - Convênio ICMS.
@@ -5602,6 +6170,8 @@ tipo de ato concessório:
+
+
@@ -5820,7 +6390,7 @@ tipo de ato concessório:
Solicitação do pedido de emissão da NFF
-
+
@@ -5829,6 +6399,88 @@ tipo de ato concessório:
+
+
+ Produtos Agropecurários Animais, Vegetais e Florestais
+
+
+
+
+
+ Defensivo Agrícola / Agrotóxico
+
+
+
+
+
+ Número do Receituário ou Receita do Defensivo / Agrotóxico
+
+
+
+
+
+
+
+
+
+
+ CPF do Responsável Técnico pelo receituário
+
+
+
+
+
+
+
+ Guias De Trânsito de produtos agropecurários animais, vegetais e de origem florestal.
+
+
+
+
+
+ Tipo da Guia: 1 - GTA; 2 - TTA; 3 - DTA; 4 - ATV; 5 - PTV; 6 - GTV; 7 - Guia Florestal (DOF, SisFlora - PA e MT, SIAM - MG)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Série da Guia
+
+
+
+
+
+
+
+
+
+
+ Número da Guia
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5864,9 +6516,18 @@ tipo de ato concessório:
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5875,7 +6536,7 @@ tipo de ato concessório:
Informar a URL da "Consulta por chave de acesso da NFC-e". A mesma URL que deve estar informada no DANFE NFC-e para consulta por chave de acesso.
-
+
@@ -6657,8 +7318,7 @@ alterado para tamanho variavel 1-4. (NT2011/004)
- Tipo Origem da mercadoria CST ICMS origem da mercadoria: 0-Nacional exceto as indicadas nos códigos 3, 4, 5 e 8;
-1-Estrangeira - Importação direta; 2-Estrangeira - Adquirida no mercado interno; 3-Nacional, conteudo superior 40% e inferior ou igual a 70%; 4-Nacional, processos produtivos básicos; 5-Nacional, conteudo inferior 40%; 6-Estrangeira - Importação direta, com similar nacional, lista CAMEX; 7-Estrangeira - mercado interno, sem simular,lista CAMEX;8-Nacional, Conteúdo de Importação superior a 70%.
+ Tipo Origem da mercadoria CST ICMS origem da mercadoria: 0-Nacional exceto as indicadas nos códigos 3, 4, 5 e 8;1-Estrangeira - Importação direta; 2-Estrangeira - Adquirida no mercado interno; 3-Nacional, conteudo superior 40% e inferior ou igual a 70%; 4-Nacional, processos produtivos básicos; 5-Nacional, conteudo inferior 40%; 6-Estrangeira - Importação direta, com similar nacional, lista CAMEX; 7-Estrangeira - mercado interno, sem simular,lista CAMEX;8-Nacional, Conteúdo de Importação superior a 70%.
@@ -6683,6 +7343,51 @@ alterado para tamanho variavel 1-4. (NT2011/004)
+
+
+
+
+
+
+ Tipo de Nota de Débito:
+ 01=Transferência de créditos para Cooperativas;
+ 02=Anulação de Crédito por Saídas Imunes/Isentas;
+ 03=Débitos de notas fiscais não processadas na apuração;
+ 04=Multa e juros;
+ 05=Transferência de crédito na sucessão;
+ 06=Pagamento antecipado;
+ 07=Perda em estoque;
+ 08=Desenquadramento do SN;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tipo de Nota de Crédito:
+ 01=Multa e juros;
+ 02=Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25);
+ 03=Retorno por recusa na entrega ou por não localização do destinatário na tentativa de entrega;
+ 04=Redução de valores;
+ 05=Transferência de crédito na sucessão;
+
+
+
+
+
+
+
+
+
@@ -6871,4 +7576,4 @@ alterado para tamanho variavel 1-4. (NT2011/004)
-
+
\ No newline at end of file
diff --git a/schemas/nfe/v4_00/nfe_v4.00.xsd b/schemas/nfe/v4_00/nfe_v4.00.xsd
index 4fe917ae..b8e3dd25 100644
--- a/schemas/nfe/v4_00/nfe_v4.00.xsd
+++ b/schemas/nfe/v4_00/nfe_v4.00.xsd
@@ -1,9 +1,10 @@
-
-
-
-
-
- Nota Fiscal Eletrônica
-
-
-
+
+
+
+
+
+
+ Nota Fiscal Eletrônica
+
+
+
diff --git a/schemas/nfe/v4_00/tiposBasico_v4.00.xsd b/schemas/nfe/v4_00/tiposBasico_v4.00.xsd
index 02ca29a8..0ddf6ef7 100644
--- a/schemas/nfe/v4_00/tiposBasico_v4.00.xsd
+++ b/schemas/nfe/v4_00/tiposBasico_v4.00.xsd
@@ -61,8 +61,8 @@
-
-
+
+
@@ -81,8 +81,8 @@
-
-
+
+
@@ -189,6 +189,15 @@
+
+
+ Tipo Decimal com 3 inteiros (no máximo 100), com 4 decimais, não aceita valor zero
+
+
+
+
+
+
Tipo Decimal com 3 inteiros (no máximo 100), com até 4 decimais
diff --git a/tests/nfe/v4_00/leiauteNFe/nfe_reforma_tributaria.xml b/tests/nfe/v4_00/leiauteNFe/nfe_reforma_tributaria.xml
new file mode 100644
index 00000000..c9b78651
--- /dev/null
+++ b/tests/nfe/v4_00/leiauteNFe/nfe_reforma_tributaria.xml
@@ -0,0 +1,306 @@
+
+
+
+
+
+ 15
+ 42701508
+ Vnd prod.est.opr.c/pr.suj.reg.sub.trib.cnd.sub.tri
+ 55
+ 1
+ 664350
+ 2025-07-01T10:00:01-00:00
+ 2025-07-01T10:00:02-00:00
+ 1
+ 2
+ 1504208
+ 1
+ 1
+ 8
+ 1
+ 1
+ 0
+ 0
+ 0
+ SAP NFE 10.0
+
+ 35250137241249000107550014231152171571688010
+
+
+ 21323412888283895737729149494949494171688099
+
+
+
+ 00127786000102
+ Contribuinte A
+ Contribuinte A
+
+ rua
+ S/N
+ km 425
+ Distrito Industrial
+ 1504208
+ Maraba
+ PA
+ 68501535
+ Brasil
+ 998926994
+
+ 151198446
+ 0043763020020
+ 30368
+ 2423702
+ 3
+
+
+ 00127912000129
+ Contribuinte B
+
+ rua
+ 2470
+ bairro
+ 3106200
+ BELO HORIZONTE
+ MG
+ 30870100
+ 1058
+ Brasil
+ 3100000000
+
+ 1
+ 5462681890178
+
+
+
+ 98007
+ 7896014400287
+ POLPA BRASFRUT 100G ACEROLA
+ 08119000
+ 1708900
+ S
+ 5405
+ UN1
+ 6.0000
+ 2.4800000000
+ 14.88
+ 7896014400287
+ UN1
+ 6.0000
+ 2.4800000000
+ 1.40
+ 1
+
+
+
+
+ 0
+ 10
+ 3
+ 56768.66
+ 12.0000
+ 6812.24
+ 4
+ 35.0000
+ 76637.69
+ 12.0000
+ 2384.28
+
+
+
+ 999
+
+ 51
+
+
+
+
+ 01
+ 49956.42
+ 1.6500
+ 824.28
+
+
+
+
+ 01
+ 49956.42
+ 7.6000
+ 3796.69
+
+
+
+ 000
+ 000001
+
+ 800
+
+ 2
+
+ 1
+ 8
+
+
+ 15
+
+
+ 1
+ 1.50
+
+ 16
+
+
+ 2
+
+ 1
+ 8
+
+
+ 15
+
+
+ 1
+ 1.50
+
+ 25
+
+ 0
+
+ 0.09
+
+ 0
+ 0
+
+
+ 0
+
+
+ 0
+ 0
+
+ 101
+
+
+ 000
+ 000000
+ 1.50
+ 10.50
+ 2
+ 20
+ 3
+ 30.50
+
+
+
+
+ Venda com ICMS-ST, conforme Decreto Estadual do Para no 2.401/2022 e Protocolos ICMS no 196/2009, 26/10 e 85/11.
+
+
+
+ 158106.35
+ 18972.77
+ 0.00
+ 0.00
+ 213443.57
+ 6640.46
+ 0.00
+ 0.00
+ 158106.35
+ 30.00
+ 20.00
+ 45.80
+ 0.00
+ 0.00
+ 0.00
+ 2295.71
+ 10574.15
+ 50.00
+ 164746.81
+
+
+ 2000.50
+
+
+ 4
+ 96
+ 30
+
+
+ 4
+ 96
+ 40
+
+ 50
+ 43.10
+ 41.90
+
+
+ 41.88
+ 8
+ 87.29
+ 0
+ 1.20
+
+
+ 0.42
+ 1
+ 89.56
+ 55.55
+ 100
+ 90
+
+
+ 5000
+
+
+ 0
+
+ 49929194000284
+ ACO CEARENSE LOGISTICA LTDA
+ 158882881
+ ROD PA 150 0
+ MARABA
+ PA
+
+
+ 16
+ 30983.000
+ 30983.000
+
+
+
+
+ 0000664350
+ 164746.81
+ 0.00
+ 164746.81
+
+
+ 001
+ 2023-12-31
+ 54915.05
+
+
+ 002
+ 2024-01-10
+ 54915.05
+
+
+ 003
+ 2024-01-20
+ 54916.71
+
+
+
+
+ 1
+ 15
+ 164746.81
+
+
+
+ Venda com ICMSST, conforme Decreto Estadual do Para no 2.401/2022 e Protocolos ICMS no 196/2009, 26/10 e 85/11.
+ Venda com ICMSST, conforme Decreto Estadual do Para no 2.401/2022 e Protocolos ICMS no 196/2009, 26/10 e 85/11. Condicao de Pagamento: 25/35/45 dias. PLACA 01: ASV9D02 SP, PLACA 02: EBD8942 FORMA DE PAGAMENTO: COB BOLETO (BANCO EMITE). Numero do Orcamento:06/12/2023002154.
+
+
+
+