Layout Factura

Reglas para la creación del archivo de interfaz

  • Los Elementos indicados en Rojo son obligatorias y deberán de ser cubiertas por el ERP.
  • Cada Sección debe estar estructurada por la etiqueta seguida del carácter pipe “|” Cada elemento de la sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”, es importante mencionar que no puede existir más de una Sección en la misma línea.
  • Cada seción debe iniciar su estructura con una etiqueta, seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último ele-mento siempre termina con un pipe “|”.
  • El Nombre del archivo debe de tener la siguiente nomenclatura: “FE[nombre de archivo].txt”.
  • Debe existir también un archivo “bandera” con la misma nomenclatura que el archivo de interfaz:“FE[nombre del archivo].ban”.
  • El archivo de interfaz y el archivo bandera deben de ser creados en la carpeta de entrada del sistema de Facturación y en el siguiente orden:
    FE[nombre del archivo].txt
    FE[nombre del archivo].ban

Definiciones

Sección:
Esta formada por una etiqueta y al menos un elemento divididos por un pipe “|”

Etiqueta:
Formada por las palabras reservadas: COMPROBANTE, CFDI_RELACION, CFDI_RELACIONADO, EMISOR, RECEPTOR, CONCEPTO, CONCEPTO_IMPUESTO_RETENCION, CONCEPTO_IMPUESTO_TRASLADO, IMPUESTOS, RETENCIONES, TRASLADOS.

Elemento:
Valor que tomará el servicio de facturación dependiendo del orden en el que aparezca en la sección. Un elemento está precedido por un pipe “|”

Elementos de comprobante

La sección del Comprobante está estructurada por la etiqueta “COMPROBANTE” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”.

COMPROBANTE |RFCEmisor|Serie|RFCReceptor|Versión|Forma_Pago|Condiciones_Pago|Subtotal|Descuentos | Total|Metodo_Pago|Pedido|Remision|Cita|NoCliente|Moneda|TipoDeCambio|Observaciones|Folio|LugarExpedicion| TipoDocumento|Confirmacion|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1RFCEmisorAtributo requerido para la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente emisor del comprobante sin guiones o espacios.12-13string--
2SerieDefine la serie a la que corresponde el comprobante, sin acentos.1-10string--
3RFCReceptorExpresa la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente receptor del comprobante en caso de que el mismo esté registrado ante el SAT12-13string--
4VersiónAtributo requerido con valor prefijado a 3.3 que indica la versión del estándar bajo el que se encuentra expresado el comprobante.-string-3.3
5Forma_PagoAtributo condicional para expresar la clave de la forma de pago de los bienes o servicios amparados por el comprobante, Si no se conoce la forma de pago este atributo se debe omitir.Catalogo: c_FormaPago--
6Condiciones_PagoAtributo condicional para expresar las condiciones comerciales aplicables para el pago del comprobante fiscal digital por Internet. Este atributo puede ser condicionado mediante atributos o complementos.50string--
7SubtotalAtributo requerido para representar la suma de los importes de los conceptos antes de descuentos e impuesto. No se permiten valores negativos.6 decimalesdecimal--
8DescuentosAtributo condicional para representar el importe total de los descuentos aplicables antes de impuestos. No se permiten valores negativos. Se debe registrar cuando existan conceptos con descuento.6 decimalesstring--
9TotalAtributo requerido para representar la suma del subtotal, menos los descuentos aplicables, más las contribuciones recibidas (impuestos trasladados - federales o locales, derechos, productos, aprovechamientos, aportaciones de seguridad social, contribuciones de mejoras) menos los impuestos retenidos. Si el valor es superior al límite que establezca el SAT en la Resolución Miscelánea Fiscal vigente, el emisor debe obtener del PAC que vaya a timbrar el CFDI, de manera no automática, una clave de confirmación para ratificar que el valor es correcto e integrar dicha clave en el atributo Confirmación. No se permiten valores negativos.6 decimalesdecimal--
10Metodo_PagoAtributo condicional para precisar la clave del método de pago que aplica para este comprobante fiscal digital por Internet, conforme al Artículo 29-A fracción VII incisos a y b del CFF.Catalogo: c_MetodoPagoPUE,PIP,PPD-
11PedidoNumero de Pedido50string--
12RemisiónNumero de Remisión50String--
13CitaNumero de Cita50String--
14NoClienteNumero de Cliente50String--
15MonedaAtributo requerido para identificar la clave de la moneda utilizada para expresar los montos, cuando se usa moneda nacional se registra MXN. Conforme con la especificación ISO 4217.Catalogo: c_Moneda--
16Tipo de CambioAtributo condicional para representar el tipo de cambio conforme con la moneda usada. Es requerido cuando la clave de moneda es distinta de MXN y de XXX. El valor debe reflejar el número de pesos mexicanos que equivalen a una unidad de la divisa señalada en el atributo moneda. Si el valor está fuera del porcentaje aplicable a la moneda tomado del catálogo c_Moneda, el emisor debe obtener del PAC que vaya a timbrar el CFDI, de manera no automática, una clave de confirmación para ratificar que el valor es correcto e integrar dicha clave en el atributo Confirmación.6 decimalesdecimal--
17ObservacionesObservaciones de la factura.255string--
18FolioAtributo opcional para control interno del contribuyente que expresa el folio del comprobante, acepta una cadena de caracteres.> 0int--
19LugarExpedicionAtributo requerido para incorporar el código postal del lugar de expedición del comprobante (domicilio de la matriz o de la sucursal).-Catalogo: c_CodigoPostal--
20TipoDocumentoAtributo requerido para expresar la clave del efecto del comprobante fiscal para el contribuyente emisor.Catalogo: c_TipoDeComprobanteI,E,T,N,P-
21ConfirmacionAtributo condicional para registrar la clave de confirmación que entregue el PAC para expedir el comprobante con importes grandes. 5String--

Ejemplo:

COMPROBANTE |AAA010101AAA|A|BBB010101BBB|3.3|01|Pague al entregar|700|Descuentos | 1000|PUE|||||MXN|1|Ejemplo de CFDI 3.3|33|66612|I||

Elementos de CFDI Relacion

La sección del CFDI Relacion está estructurada por la etiqueta “CFDI_RELACION” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección opcional para precisar la información de los comprobantes relacionados. Esta sección solo debe existir si se llenan todos los elementos.

CFDI_RELACION|TipoRelacion|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1TipoRelacionAtributo requerido para indicar la clave de la relación que existe entre éste que se está generando y el o los CFDI previos.Catalogo: c_TipoRelacion--

Ejemplo:

CFDI_RELACION|01|

Elementos de CFDI Relacionado

La sección de CFDI Relacionado está estructurada por la etiqueta “CFDI_RELACIONADO” seguida por el caracter “|” (pipe).

Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección requerida para precisar la información de los comprobantes relacionados. Esta sección debe existir cuando se utilice la sección opcional CFDI_RELACION.

CFDI_RELACIONADO|UUID|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1UUIDAtributo opcional para registrar el folio fiscal (UUID) de un CFDI relacionado con el presente comprobante, por ejemplo: Si el CFDI relacionado es un comprobante de traslado que sirve para registrar el movimiento de la mercancía. Si este comprobante se usa como nota de crédito o nota de débito del comprobante relacionado. Si este comprobante es una devolución sobre el comprobante relacionado. Si éste sustituye a una factura cancelada.36string--

Ejemplo:

CFDI_RELACIONADO| 832AB0D1-F482-44B7-975F-C565C21C983B |

Elementos de Emisor

La sección de Emisor está estructurada por la etiqueta “EMISOR” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”.

Nota: Sección requerida para expresar la información del contribuyente emisor del comprobante.

EMISOR |RFC|Nombre|RegimenFiscal|Calle|No_Ext|No_Int|Colonia|Localidad|Referencia|Municipio|Estado|País|C.P.|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1RFCAtributo requerido para registrar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente emisor del comprobante.12-13string--
2NombreAtributo opcional para registrar el nombre, denominación o razón social del contribuyente emisor del comprobante.100string--
3RegimenFiscalAtributo requerido para incorporar la clave del régimen del contribuyente emisor al que aplicará el efecto fiscal de este comprobante.Catalogo: c_RegimenFiscal--
4CalleDefine la avenida, calle, camino o carretera donde se da la ubicación100string--
5No_ExtExpresa el número particular en donde se dá la ubicación sobre una calle dada100string--
6No_IntExpresa información adicional para especificar la ubicación cuando calle y número exterior (No_Ext) no resulten suficientes para determinar la ubicación de forma precisa.100string--
7ColoniaDefina la colonia en donde se da la ubicación cuando se desea ser más específico en caso de ubicaciones urbanas100string--
8LocalidadDefine la ciudad, pueblo o poblado donde se da la ubicación.100string--
9ReferenciaAtributo opcional para expresar una referencia de ubicación adicional.100string--
10MunicipioDefine el municipio o delegación en donde se da la ubicación.100string--
11EstadoDefine el estado o entidad federativa donde se da la ubicación.100string--
12PaísDefine el país donde se da la ubicación.100string--
13C.P.Define el código postal en donde se da la ubicación.100string--

Ejemplo:

EMISOR |AAA010101AAA|Empresa Emisora|601| Ave. Lazaro Cardenas|401||Emiliano Zapata|Localidad Norte||Monterrey|Nuevo Leon|Mexico|64390|

Elementos de Receptor

La sección del Receptor está estructurada por la etiqueta “RECEPTOR” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”.

Nota: Sección requerida para precisar la información del contribuyente receptor del comprobante.

Nota: Los datos del domicilio del receptor son opcionales y sólo se utilizan para mostrarse en la representación impresa

RECEPTOR|RFC|Nombre|ResidenciaFiscal|NumRegIdTrib|UsoCFDI|Calle|No_Ext|No_Int|Colonia|Localidad|Referencia| Municipio|Estado|País|C.P.|Add_1|Add_2|Add_3|Add_4|

IDElementosDescripciónTamañoTipo de DatoEnumeración Valor
1RFCAtributo requerido para precisar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente receptor del comprobante.12-13string--
2NombreAtributo opcional para precisar el nombre, denominación o razón social del contribuyente receptor del comprobante.100string--
3ResidenciaFiscalAtributo condicional para registrar la clave del país de residencia para efectos fiscales del receptor del comprobante, cuando se trate de un extranjero, y que es conforme con la especificación ISO 3166-1 alpha-3. Es requerido cuando se incluya el complemento de comercio exterior o se registre el atributo NumRegIdTrib.-Catalogo: c_Pais--
4NumRegIdTribAtributo condicional para expresar el número de registro de identidad fiscal del receptor cuando sea residente en el extranjero. Es requerido cuando se incluya el complemento de comercio exterior.100String--
5UsoCFDIAtributo requerido para expresar la clave del uso que dará a esta factura el receptor del CFDI.-Catalogo: c_UsoCFDI--
6CalleDefine la avenida, calle, camino o carretera donde se da la ubicación100string--
7No_ExtExpresa el número particular en donde se dá la ubicación sobre una calle dada.100string--
8No_IntExpresa información adicional para especificar la ubicación cuando calle y número exterior (No_Ext) no resulten suficientes para determinar la ubicación de forma precisa.100string--
9ColoniaDefina la colonia en donde se da la ubicación cuando se desea ser más específico en caso de ubicaciones urbanas.100string--
10LocalidadDefine la ciudad, pueblo o poblado donde se da la ubicación.100string--
11ReferenciaAtributo opcional para expresar una referencia de ubicación adicional.100string--
12MunicipioDefine el municipio o delegación en donde se da la ubicación.100string--
13EstadoDefine el estado o entidad federativa donde se da la ubicación.100string--
14PaísDefine el país donde se da la ubicación.100string--
15C.P.Define el código postal en donde se da la ubicación.100string--
16Add_1Información adicional 1.100string--
17Add_2Información adicional 2.100string--
18Add_3Información adicional 3.100string--
19Add_4Información adicional 4.100string--

Ejemplo:

RECEPTOR|BBB010101BBB|Cliente Receptor| | |G01|Ave. Lazaro Cardenas|401||Emiliano Zapata| | |Monterrey|Nuevo Leon|Mexico|64390|

Elementos de Concepto

La sección del Concepto está estructurada por la etiqueta “CONCEPTO” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”.

Nota: Sección requerida para listar los conceptos cubiertos por el comprobante. Esta sección puede repetirse más de una vez.

CONCEPTO|ID_Concepto|ClaveProdServ|NoIdentificacion|Cantidad|ClaveUnidad|Unidad|Descripcion|ValorUnitario|Importe| Descuento|Aduana|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1ID_ConceptoConsecutivo del Concepto-Int--
2ClaveProdServAtributo requerido para expresar la clave del producto o del servicio amparado por el presente concepto. Es requerido y deben utilizar las claves del catálogo de productos y servicios, cuando los conceptos que registren por sus actividades correspondan con dichos conceptos. -Catalogo: c_ClaveProdServ--
3NoIdentificacionAtributo opcional para expresar el número de parte, identificador del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto. Opcionalmente se puede utilizar claves del estándar GTIN.100String--
4CantidadAtributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por el presente concepto.6 Decimalesdecimal--
5ClaveUnidadAtributo requerido para precisar la clave de unidad de medida estandarizada aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto.-Catalogo: c_ClaveUnidad--
6UnidadAtributo opcional para precisar la unidad de medida propia de la operación del emisor, aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto.20String--
7DescripcionAtributo requerido para precisar la descripción del bien o servicio cubierto por el presente concepto.100string--
8ValorUnitarioAtributo requerido para precisar el valor o precio unitario del bien o servicio cubierto por el presente concepto.6 Decimalesdecimal--
9ImporteAtributo requerido para precisar el importe total de los bienes o servicios del presente concepto. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en el concepto. No se permiten valores negativos.6 Decimalesdecimal--
10DescuentoAtributo opcional para representar el importe de los descuentos aplicables al concepto. No se permiten valores negativos.6 DecimalesDecimal--
11AduanaAtributo Opcional para registrar el número de pedimento para la Aduana21String--

Ejemplo:

CONCEPTO|1|01010101| |1| MTK | Metro cuadrado |Pasto sintetico|5000|5000| ||

Elementos de Impuesto Traslado del Concepto

La sección del Impuesto Traslado del Concepto está estructurada por la etiqueta “CONCEPTO_IMPUESTO_TRASLADO” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección opcional para asentar los impuestos trasladados aplicables al presente concepto. La sección solo debe existir si se llenan todos los elementos requeridos.

Esta sección puede existir más de una vez.

CONCEPTO_IMPUESTO_TRASLADO |ID_Concepto|Base|Impuesto|TipoFactor|TasaOCuota|Importe|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1ID_ConceptoConsecutivo del Concepto-Int--
2BaseAtributo requerido para señalar la base para el cálculo del impuesto, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.6 Decimalesdecimal--
3ImpuestoAtributo requerido para señalar la clave del tipo de impuesto trasladado aplicable al concepto.-Catalogo: c_Impuesto001,002,003-
4TipoFactorAtributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.-Catalogo: c_TipoFactorTasa,Cuota,Exento-
5TasaOCuotaAtributo condicional para señalar el valor de la tasa o cuota del impuesto que se traslada para el presente concepto. Es requerido cuando el atributo TipoFactor tenga un valor que corresponda a Tasa o Cuota.-Catalogo: c_TasaOCuota--
6ImporteAtributo condicional para señalar el importe del impuesto trasladado que aplica al concepto. No se permiten valores negativos. Es requerido cuando TipoFactor sea Tasa o Cuota.6 Decimalesdecimal--

Ejemplo

CONCEPTO_IMPUESTO_TRASLADO |1|16|002|Tasa| 0.160000 |50|

Elementos de Impuesto Retención del Concepto

La sección del Impuesto Retención del Concepto está estructurada por la etiqueta “CONCEPTO_IMPUESTO_RETENCION” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección requerida para asentar la información detallada de una retención de impuestos aplicable al presente concepto. La sección solo debe existir si se llenan todos los elementos.

CONCEPTO_IMPUESTO_RETENCION |ID_Concepto|Base|Impuesto|TipoFactor|TasaOCuota|Importe|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1ID_ConceptoConsecutivo del Concepto-int--
2BaseAtributo requerido para señalar la base para el cálculo de la retención, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.6 Decimalesdecimal--
1ID_ConceptoConsecutivo del Concepto-int--
3ImpuestoAtributo requerido para señalar la clave del tipo de impuesto retenido aplicable al concepto.-Catalogo: c_Impuesto001,002,003-
4TipoFactorAtributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.-Catalogo: c_TipoFactorTasa,Cuota,Exento-
5TasaOCuotaAtributo requerido para señalar la tasa o cuota del impuesto que se retiene para el presente concepto.6 Decimalesdecimal--
6ImporteAtributo requerido para señalar el importe del impuesto retenido que aplica al concepto. No se permiten valores negativos.6 Decimalesdecimal--

Ejemplo:

CONCEPTO_IMPUESTO_RETENCION|1|16|001|Tasa|0.16|50|

Elementos de Impuestos

La sección del Impuestos está estructurada por la etiqueta “IMPUESTOS” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección condicional para expresar el resumen de los impuestos aplicables. Es requerida cuando en los conceptos se registren impuestos retenidos o trasladados.

IMPUESTOS|TotalImpuestosRetenidos|TotalImpuestosTrasladados|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1TotalImpuestosRetenidosAtributo condicional para expresar el total de los impuestos retenidos que se desprenden de los conceptos expresados en el comprobante fiscal digital por Internet. No se permiten valores negativos. Es requerido cuando en los conceptos se registren impuestos retenidos6 Decimalesdecimal--
2TotalImpuestosTrasladadosAtributo condicional para expresar el total de los impuestos trasladados que se desprenden de los conceptos expresados en el comprobante fiscal digital por Internet. No se permiten valores negativos. Es requerido cuando en los conceptos se registren impuestos trasladados.6 Decimalesdecimal--

Ejemplo:

IMPUESTOS|50|50|

 Elementos de Retenciones

La sección del Retenciones está estructurada por la etiqueta “RETENCIONES” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección condicional para capturar los impuestos retenidos aplicables. Es requerida cuando en los conceptos se registre algún impuesto retenido.

Esta sección puede existir más de una vez..

RETENCIONES |Impuesto|Importe|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1ImpuestoAtributo requerido para señalar la clave del tipo de impuesto retenido.Catalogo: c_Impuesto--
2ImporteAtributo requerido para señalar el monto del impuesto retenido. No se permiten valores negativos.6 Decimalesdecimal--

Ejemplo:

RETENCIONES|001|50|

Elementos de Traslados

La sección del Traslados está estructurada por la etiqueta “TRASLADOS” seguida por el caracter “|” (pipe). Cada elemento de esta sección es dividida por este mismo símbolo. El último elemento siempre termina con un “pipe”

Nota: Sección condicional para capturar los impuestos trasladados aplicables. Es requerida cuando en los conceptos se registre un impuesto trasladado.

Esta sección puede existir más de una vez.

TRASLADOS|Impuesto|TipoFactor|TasaOCuota|Importe|

IDElementosDescripciónTamañoTipo de DatoEnumeraciónValor
1ImpuestoAtributo requerido para señalar la clave del tipo de impuesto trasladado.-c_Impuesto--
2TipoFactorAtributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.Catalogo: c_TipoFactor--
3TasaOCuotaAtributo requerido para señalar el valor de la tasa o cuota del impuesto que se traslada por los conceptos amparados en el comprobante.-Catalogo: c_TasaOCuota--
4ImporteAtributo requerido para señalar la suma del importe del impuesto trasladado, agrupado por impuesto, TipoFactor y TasaOCuota. No se permiten valores negativos.6 Decimalesdecimal--

Ejemplo:

TRASLADOS|002|Tasa|0.160000|50|

 

Ejemplo Layout Factura

COMPROBANTE|AAA010101AAA|A|BBB010101BBB|3.3|01|Pague al entregar|700|Descuentos|1000|PUE|||||MXN|1|Ejemplo de CFDI 3.3|33|66612|I||

CFDI_RELACION|01|

CFDI_RELACIONADO|832AB0D1-F482-44B7-975F-C565C21C983B|

EMISOR |AAA010101AAA|Empresa Emisora|601| Ave. Lazaro Cardenas|401||Emiliano Zapata|Localidad Norte||Monterrey|Nuevo Leon|Mexico|64390|

RECEPTOR|BBB010101BBB|Cliente Receptor|||G01|Ave. Lazaro Cardenas|401||Emiliano Zapata|||Monterrey|Nuevo Leon|Mexico|64390|

CONCEPTO|1|01010101||1|MTK|Metro cuadrado|Pasto sintetico|5000|5000||

CONCEPTO_IMPUESTO_TRASLADO|1|16|002|Tasa|0.160000|50|

CONCEPTO_IMPUESTO_RETENCION|1|16|001|Tasa|0.16|50|

IMPUESTOS|50|50|

RETENCIONES|001|50|

TRASLADOS|002|Tasa|0.160000|50|