; Archivo INI jerarquico

; Un archivo INI jerarquico o multinivel nos permite expresar de manera sencilla
; con nombres de seccion y pares de valores, una estructura jerarquica o
; en forma de arbol, tal como un archivo XML.

; Dicha estructura puede ser tan grande o tan compleja como queramos,
; el analizador de la DLL libfacturista se encargara de construirla a partir de la
; informacion que pongamos en nuestro archivo INI.

; facturista.com - Ariel Medina

; El presente archivo INI jerarquico sirve para representar un CFDI o factura electronica,
; este archivo sera convertido automaticamente por libfacturista a XML para que se pueda sellar y timbrar.
; La notacion jerarquica nos dara la posibilidad de crear o agregar estructuras complejas
; como el caso de los CFDIs con Complementos o Addendas.


; Un ; al principio de una linea indica que es un comentario

; Cada seccion describe la ruta de los nodos en la jerarquia
; (que corresponde a la estructura de un archivo XML o similar)
; los componentes de una ruta (o nombres de nodos) van separados por / (diagonal)
; Para no poner rutas completas, podra hacer uso de Alias

; Puede usar la ruta completa o puede usar los comodines: ./ , ../ y .
; estos ultimos solo pueden ir al principio de una ruta, no enmedio
; pueden ser contiguos, pero deben ir al principio

; ./ sirve para describir un nodo hijo del ultimo nodo, Ej.:
;[cfdi:Comprobante]
;[./cfdi:Emisor]

; ../ se usa para describir al nodo padre de un nodo, Ej.:
;[./NombreNodoHermano1]
;[../NombreNodoHermano2]
;[../../NombreNodoTio]

; . sirve para describir un nodo con la misma ruta del ultimo nodo, Ej.:
;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;cantidad=25.36
;[.]
;cantidad=36.25


; Los atributos de los nodos se escriben como pares nombre=valor , Ej.:
;precio=12.45
;unidad=PZA


; Para facilitar la generación del archivo, podemos usar alias
; de manera que en vez de poner toda la ruta del nodo, solo ponga el alias
; puede crear cualquier número de alias, el valor de la izquierda solo
; debe estar compuesto de letras, numeros o _
; los alias no deben anidarse, es decir no debe poner un alias
; como componente de la ruta en el valor de otro alias
[Alias]
Comprobante=cfdi:Comprobante
Emisor=cfdi:Comprobante/cfdi:Emisor
EmisorRegimen=cfdi:Comprobante/cfdi:Emisor/cfdi:RegimenFiscal
Receptor=cfdi:Comprobante/cfdi:Receptor
ReceptorDomicilio=cfdi:Comprobante/cfdi:Receptor/cfdi:Domicilio
Conceptos=cfdi:Comprobante/cfdi:Conceptos
Concepto=cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto
ConceptoInformacionAduanera=cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:InformacionAduanera
ConceptoCuentaPredial=cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:CuentaPredial
ConceptoParte=cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:Parte
ConceptoComplemento=cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:ComplementoConcepto
Impuestos=cfdi:Comprobante/cfdi:Impuestos
ImpuestosRetenciones=cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones
ImpuestosRetencion=cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones/cfdi:Retencion
ImpuestosTraslados=cfdi:Comprobante/cfdi:Impuestos/cfdi:Traslados
ImpuestosTraslado=cfdi:Comprobante/cfdi:Impuestos/cfdi:Traslados/cfdi:Traslado

; Empezamos a definir nuestro CFDI
; Antes de cada definición de sección o nodo, verá la ruta completa del nodo
; y la ruta relativa comentadas
; Usamos la notación con Alias por ser más fácil de entender y aplicar
; los comentarios de aquí no son necesarios en los archivos INI que usted genere

;[cfdi:Comprobante]
[Comprobante]
xmlns:cfdi=http://www.sat.gob.mx/cfd/3
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation=http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd
version=3.2
serie=A
folio=1234
fecha=2013-01-12T18:43:11
formaDePago=Pago en una sola exhibición
subTotal=6172.50
TipoCambio=12.34
Moneda=USD
total=7124.75
metodoDePago=Efectivo
tipoDeComprobante=ingreso
LugarExpedicion=Campeche, Campeche
NumCtaPago=3849
condicionesDePago=Venta a credito
descuento=10.55
motivoDescuento=Por pronto pago
FolioFiscalOrig=3463
SerieFolioFiscalOrig=ABC
FechaFolioFiscalOrig=2012-01-11T11:11:11
MontoFolioFiscalOrig=24493.38


;[cfdi:Comprobante/cfdi:Emisor]
;[./cfdi:Emisor]
[Emisor]
rfc=AAA010101AAA
nombre=facturista.com INI


;[cfdi:Comprobante/cfdi:Emisor/cfdi:RegimenFiscal]
;[./cfdi:RegimenFiscal]
[EmisorRegimen]
Regimen=Regimen General de Ley

;[cfdi:Comprobante/cfdi:Emisor/cfdi:RegimenFiscal]
;[.]
[EmisorRegimen]
Regimen=Otro regimen (opcional)

;[cfdi:Comprobante/cfdi:Receptor]
;[../../cfdi:Receptor]
[Receptor]
rfc=X&XX010101AAA
nombre=José Ángel & 'Niño' & "Niña"


;[cfdi:Comprobante/cfdi:Receptor/cfdi:Domicilio]
;[./cfdi:Domicilio]
[ReceptorDomicilio]
calle=Paseo de Montejo
noExterior=1234
noInterior=456
colonia=Col. €uropea
localidad=Ciudad de los Niños
municipio=Municipio de Mérida
estado=Yucatán
pais=México
codigoPostal=38294
referencia=Por la cascada

;[cfdi:Comprobante/cfdi:Conceptos]
;[../../cfdi:Conceptos]
[Conceptos]


;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;[./cfdi:Concepto]
[Concepto]
cantidad=10
unidad=PZA
noIdentificacion=1
descripcion=Memoria USB
valorUnitario=123.45
importe=1234.50


;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:InformacionAduanera]
;[./cfdi:InformacionAduanera]
[ConceptoInformacionAduanera]
numero=12345
fecha=2011-01-01
aduana=Aduana nogales

;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;[../../cfdi:Concepto]
[Concepto]
cantidad=10
unidad=PZA
noIdentificacion=2
descripcion=Memoria USB
valorUnitario=123.45
importe=1234.50


;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:CuentaPredial]
;[./cfdi:CuentaPredial]
[ConceptoCuentaPredial]
numero=3836463729385495

;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;[../../cfdi:Concepto]
[Concepto]
cantidad=10
unidad=PZA
noIdentificacion=3
descripcion=Memoria USB
valorUnitario=123.45
importe=1234.50


;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:Parte]
;[./cfdi:Parte]
[ConceptoParte]
cantidad=10
unidad=PZA
noIdentificacion=3
descripcion=Parte 1
valorUnitario=123.45
importe=1234.50

;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:Parte]
;[.]
[ConceptoParte]
cantidad=10
unidad=PZA
noIdentificacion=3
descripcion=Parte 2
valorUnitario=123.45
importe=1234.50

;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;[../../cfdi:Concepto]
[Concepto]
cantidad=10
unidad=PZA
noIdentificacion=4
descripcion=Memoria USB
valorUnitario=123.45
importe=1234.50


;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto/cfdi:ComplementoConcepto]
;[./cfdi:ComplementoConcepto]
[ConceptoComplemento]

;[cfdi:Comprobante/cfdi:Conceptos/cfdi:Concepto]
;[../../cfdi:Concepto]
[Concepto]
cantidad=10
unidad=PZA
noIdentificacion=5
descripcion=Memoria USB
valorUnitario=123.45
importe=1234.50

;[cfdi:Comprobante/cfdi:Impuestos]
;[../../cfdi:Impuestos]
[Impuestos]
totalImpuestosRetenidos=35.35
totalImpuestosTrasladados=987.60


;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones]
;[./cfdi:Retenciones]
[ImpuestosRetenciones]


;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones/cfdi:Retencion]
;[./cfdi:Retencion]
[ImpuestosRetencion]
impuesto=ISR
importe=12.12

;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Retenciones/cfdi:Retencion]
;[.]
[ImpuestosRetencion]
impuesto=IVA
importe=23.23

;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Traslados]
;[../../cfdi:Traslados]
[ImpuestosTraslados]


;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Traslados/cfdi:Traslado]
;[./cfdi:Traslado]
[ImpuestosTraslado]
impuesto=IVA
importe=987.60
tasa=16.00

;[cfdi:Comprobante/cfdi:Impuestos/cfdi:Traslados/cfdi:Traslado]
;[.]
[ImpuestosTraslado]
impuesto=IEPS
importe=0.00
tasa=0.00