CFDI.
El CFDI es un archivo XML con la estructura definida por el SAT
- Descarga la descripción del esquema versión 3.2 como la documenta el Anexo 20 (30/12/2011)
- Descarga el XSD esquema que puedes usar para validar su estructura.
Contenido del CFDI
- Información propia del comprobante fiscal, como emisor, receptor, conceptos
- Metadatos sobre el propio documento, como la versión del esquema, rfc, fecha de emisión, etc.
- Metadatos de seguridad, como tu certificado, serie y cadena original
- Complemento con el timbre del SAT
El servicio de Conector Fiscal® recibe la estructura de un CFDI básicamente completo, pero sin el complemento de <TimbreFiscalDigital> y sin valor en los atributos de "sello" y "certificado"; ésta es la información devuelta por el servicio en caso de que la petición sea correcta.
Descarga el ejemplo de CFDI para el servicio de Conector Fiscal®
Ejemplo de un CFDI
<?xml version="1.0" encoding="UTF-8"?>
<cfdi:Comprobante NumCtaPago="No Identificado" LugarExpedicion="Monterrey, Nuevo León"
metodoDePago="No Identificado" tipoDeComprobante="ingreso" total="40600.00" Moneda="Pesos"
descuento="0" subTotal="35000.00"
certificado="MIIEdDCCA1ygAwIBAgIUMjAwMDEwMDAwMDAxMDAwMDU4NjcwDQYJKoZIhvcNAQEFBQAwggFvMRgwFgYDVQQDDA9BLkMuIGRlIHBydWViYXMxLzAtBgNVBAoMJlNlcnZpY2lvIGRlIEFkbWluaXN0cmFjacOzbiBUcmlidXRhcmlhMTgwNgYDVQQLDC9BZG1pbmlzdHJhY2nDs24gZGUgU2VndXJpZGFkIGRlIGxhIEluZm9ybWFjacOzbjEpMCcGCSqGSIb3DQEJARYaYXNpc25ldEBwcnVlYmFzLnNhdC5nb2IubXgxJjAkBgNVBAkMHUF2LiBIaWRhbGdvIDc3LCBDb2wuIEd1ZXJyZXJvMQ4wDAYDVQQRDAUwNjMwMDELMAkGA1UEBhMCTVgxGTAXBgNVBAgMEERpc3RyaXRvIEZlZGVyYWwxEjAQBgNVBAcMCUNveW9hY8OhbjEVMBMGA1UELRMMU0FUOTcwNzAxTk4zMTIwMAYJKoZIhvcNAQkCDCNSZXNwb25zYWJsZTogSMOpY3RvciBPcm5lbGFzIEFyY2lnYTAeFw0xMjA3MjcxNzAyMDBaFw0xNjA3MjcxNzAyMDBaMIHbMSkwJwYDVQQDEyBBQ0NFTSBTRVJWSUNJT1MgRU1QUkVTQVJJQUxFUyBTQzEpMCcGA1UEKRMgQUNDRU0gU0VSVklDSU9TIEVNUFJFU0FSSUFMRVMgU0MxKTAnBgNVBAoTIEFDQ0VNIFNFUlZJQ0lPUyBFTVBSRVNBUklBTEVTIFNDMSUwIwYDVQQtExxBQUEwMTAxMDFBQUEgLyBIRUdUNzYxMDAzNFMyMR4wHAYDVQQFExUgLyBIRUdUNzYxMDAzTURGUk5OMDkxETAPBgNVBAsTCFVuaWRhZCAxMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2TTQSPONBOVxpXv9wLYo8jezBrb34i/tLx8jGdtyy27BcesOav2c1NS/Gdv10u9SkWtwdy34uRAVe7H0a3VMRLHAkvp2qMCHaZc4T8k47Jtb9wrOEh/XFS8LgT4y5OQYo6civfXXdlvxWU/gdM/e6I2lg6FGorP8H4GPAJ/qCNwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQUFAAOCAQEATxMecTpMbdhSHo6KVUg4QVF4Op2IBhiMaOrtrXBdJgzGotUFcJgdBCMjtTZXSlq1S4DG1jr8p4NzQlzxsdTxaB8nSKJ4KEMgIT7E62xRUj15jI49qFz7f2uMttZLNThipunsN/NF1XtvESMTDwQFvas/Ugig6qwEfSZc0MDxMpKLEkEePmQwtZD+zXFSMVa6hmOu4M+FzGiRXbj4YJXn9Myjd8xbL/c+9UIcrYoZskxDvMxc6/6M3rNNDY3OFhBK+V/sPMzWWGt8S1yjmtPfXgFs1t65AZ2hcTwTAuHrKwDatJ1ZPfa482ZBROAAX1waz7WwXp0gso7sDCm2/yUVww=="
noCertificado="20001000000100005867" formaDePago="PAGO EN UNA SOLA EXHIBICION"
sello="MMakX8Q1RyedjoNEQdHN64DgpZesmkcPSye2Tb+nELqFNNzITTicyc7WRcr/gj4UQX1ffhBuWmO959453o4pkMO9omip2DiM0Ud2KitU58+P4yRyxdjhmaRS9QSsUSpcKIrLB4viSJ9GD32pJYnxmpxYi8+GO+n3HvIAMHega+A="
fecha="2015-02-18T11:49:20" folio="38" serie="C" version="3.2"
xsi:schemaLocation="http://www.buzonfiscal.com/ns/addenda/bf/2 http://www.buzonfiscal.com/schema/xsd/Addenda_BF_v20.xsd http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd "
xmlns:bfa2="http://www.buzonfiscal.com/ns/addenda/bf/2" xmlns:cfdi="http://www.sat.gob.mx/cfd/3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<cfdi:Emisor nombre="Empresa de Pruebas SA" rfc="AAA010101AAA">
<cfdi:DomicilioFiscal codigoPostal="64000" pais="México" estado="Nuevo León"
municipio="Monterrey" colonia="Fracc. San Pedro" noExterior="1452" calle="Encinos"/>
<cfdi:RegimenFiscal Regimen="Regimen General de Ley Personas Morales de Prueba"/>
</cfdi:Emisor>
<cfdi:Receptor nombre="Exportadora de Ganado HOLSTEIN S.A." rfc="E&Ñ831019M53">
<cfdi:Domicilio codigoPostal="99170" pais="México" estado="Zacatecas" municipio="Zacatecas"
localidad="Ejido La Siembra" colonia="Ejido La Siembra" noExterior="102"
calle="Av. Principal"/>
</cfdi:Receptor>
<cfdi:Conceptos>
<cfdi:Concepto importe="35000.00" valorUnitario="35000.00"
descripcion="Módulo de embarque serie A-6743-Ñ" unidad="LTE" cantidad="1"/>
</cfdi:Conceptos>
<cfdi:Impuestos totalImpuestosTrasladados="5600.00" totalImpuestosRetenidos="0.00">
<cfdi:Retenciones>
<cfdi:Retencion importe="0.00" impuesto="ISR"/>
<cfdi:Retencion importe="0.00" impuesto="IVA"/>
</cfdi:Retenciones>
<cfdi:Traslados>
<cfdi:Traslado importe="5600.00" tasa="16.00" impuesto="IVA"/>
</cfdi:Traslados>
</cfdi:Impuestos>
<cfdi:Complemento>
<tfd:TimbreFiscalDigital xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital"
xsi:schemaLocation="http://www.sat.gob.mx/TimbreFiscalDigital http://www.sat.gob.mx/sitio_internet/cfd/TimbreFiscalDigital/TimbreFiscalDigital.xsd"
selloSAT="HZcDZ/W0obh9pzd6XGSXfAEEzCp1bYLYHmptBRZLhYGgyo/nYegLpv1ULshKA2WiFnf9OpiemBQ9q0Z/To8QFINH1JqTBtEu0lo+8NWDBi6Zwc2VsR3uYE6ZmZKdQS7LtSt6uSqCiejXDqIV57EkJy3LE6JnTBsbQ7GmST1Wx/M="
noCertificadoSAT="20001000000100005761"
selloCFD="MMakX8Q1RyedjoNEQdHN64DgpZesmkcPSye2Tb+nELqFNNzITTicyc7WRcr/gj4UQX1ffhBuWmO959453o4pkMO9omip2DiM0Ud2KitU58+P4yRyxdjhmaRS9QSsUSpcKIrLB4viSJ9GD32pJYnxmpxYi8+GO+n3HvIAMHega+A="
FechaTimbrado="2015-02-17T11:49:20" UUID="e403f396-6a57-4625-adb4-bb436b00789f"
version="1.0"/>
</cfdi:Complemento>
<cfdi:Addenda>
<bfa2:AddendaBuzonFiscal version="2.0">
<bfa2:TipoDocumento descripcion="Factura" nombreCorto="FAC"/>
<bfa2:CFD totalConLetra="Cuarenta mil seiscientos pesos 00/100 M.N."/>
</bfa2:AddendaBuzonFiscal>
</cfdi:Addenda>
</cfdi:Comprobante>
Descripción de campos
Nodo | Atributo | Descripción |
---|---|---|
Comprobante |
(nodo principal) | Estándar de Comprobante fiscal digital a través de Internet. |
versión | Atributo requerido con valor prefijado a 3.2 que indica la versión del estándar bajo el que se encuentra expresado el comprobante. | |
serie | Atributo opcional para precisar la serie para control interno del contribuyente. Este atributo acepta una cadena de caracteres alfabéticos de 1 a 25 caracteres sin incluir caracteres acentuados. | |
folio | Atributo opcional para control interno del contribuyente que acepta un valor numérico entero superior a 0 que expresa el folio del comprobante. | |
fecha | Atributo requerido para la expresión de la fecha y hora de expedición del comprobante fiscal. Se expresa en la forma aaaa-mm-ddThh:mm:ss, de acuerdo con la especificación ISO 8601. | |
sello | Atributo requerido para contener el sello digital del comprobante fiscal, al que hacen referencia las reglas de resolución miscelánea aplicable. El sello deberá ser expresado cómo una cadena de texto en formato Base 64. | |
formaDePago | Atributo requerido para precisar la forma de pago que aplica para este comprobante fiscal digital a través de Internet. Se utiliza para expresar Pago en una sola exhibición o número de parcialidad pagada contra el total de parcialidades, Parcialidad 1 de X. | |
noCertificado | Atributo requerido para expresar el número de serie del certificado de sello digital que ampara al comprobante, de acuerdo al acuse correspondiente a 20 posiciones otorgado por el sistema del SAT. | |
certificado | Atributo requerido que sirve para expresar el certificado de sello digital que ampara al comprobante como texto, en formato base 64. | |
condicionesDePago | Atributo opcional para expresar las condiciones comerciales aplicables para el pago del comprobante fiscal digital a través de Internet. | |
subTotal | Atributo requerido para representar la suma de los importes antes de descuentos e impuestos. | |
descuento | Atributo opcional para representar el importe total de los descuentos aplicables antes de impuestos. | |
motivoDescuento | Atributo opcional para expresar el motivo del descuento aplicable. | |
TipoCambio | Atributo opcional para representar el tipo de cambio conforme a la moneda usada. | |
Moneda | Atributo opcional para expresar la moneda utilizada para expresar los montos. | |
total | Atributo requerido para representar la suma del subtotal, menos los descuentos aplicables, más los impuestos trasladados, menos los impuestos retenidos. | |
tipoDeComprobante | Atributo requerido para expresar el efecto del comprobante fiscal para el contribuyente emisor. | |
metodoDePago | Atributo requerido de texto libre para expresar el método de pago de los bienes o servicios amparados por el comprobante. Se entiende como método de pago leyendas tales como: cheque, tarjeta de crédito o debito, depósito en cuenta, etc. | |
LugarExpedicion | Atributo requerido para incorporar el lugar de expedición del comprobante. | |
NumCtaPago | Atributo Opcional para incorporar al menos los cuatro últimos dígitos del número de cuenta con la que se realizó el pago. | |
FolioFiscalOrig | Atributo opcional para señalar el número de folio fiscal del comprobante que se hubiese expedido por el valor total del comprobante, tratándose del pago en parcialidades. | |
SerieFolioFiscalOrig | Atributo opcional para señalar la serie del folio del comprobante que se hubiese expedido por el valor total del comprobante, tratándose del pago en parcialidades. | |
FechaFolioFiscalOrig | Atributo opcional para señalar la fecha de expedición del comprobante que se hubiese emitido por el valor total del comprobante, tratándose del pago en parcialidades. Se expresa en la forma aaaa-mm-ddThh:mm:ss, de acuerdo con la especificación ISO 8601. | |
MontoFolioFiscalOrig | Atributo opcional para señalar el total del comprobante que se hubiese expedido por el valor total de la operación, tratándose del pago en parcialidades. | |
Emisor |
(nodo hijo de "Comprobante") | Nodo requerido para expresar la información del contribuyente emisor del comprobante. |
rfc | Atributo requerido para la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente emisor del comprobante sin guiones o espacios. | |
nombre | Atributo opcional para el nombre, denominación o razón social del contribuyente emisor del comprobante. | |
DomicilioFiscal |
(nodo hijo de "Emisor") | Nodo opcional para precisar la información de ubicación del domicilio fiscal del contribuyente emisor. |
calle | Este atributo requerido sirve para precisar la avenida, calle, camino o carretera donde se da la ubicación. | |
noExterior | Este atributo opcional sirve para expresar el número particular en donde se da la ubicación sobre una calle dada. | |
noInterior | Este atributo opcional sirve para expresar información adicional para especificar la ubicación cuando calle y número exterior (noExterior) no resulten suficientes para determinar la ubicación de forma precisa. | |
colonia | Este atributo opcional sirve para precisar la colonia en donde se da la ubicación cuando se desea ser más específico en casos de ubicaciones urbanas. | |
localidad | Atributo opcional que sirve para precisar la ciudad o población donde se da la ubicación. | |
referencia | Atributo opcional para expresar una referencia de ubicación adicional. | |
municipio | Atributo requerido que sirve para precisar el municipio o delegación (en el caso del Distrito Federal) en donde se da la ubicación. | |
estado | Atributo requerido que sirve para precisar el estado o entidad federativa donde se da la ubicación. | |
país | Atributo requerido que sirve para precisar el país donde se da la ubicación. | |
codigoPostal | Atributo requerido que sirve para asentar el código postal en donde se da la ubicación. | |
ExpedidoEn |
(nodo hijo de "Emisor") | Nodo opcional para precisar la información de ubicación del domicilio en donde es emitido el comprobante fiscal en caso de que sea distinto del domicilio fiscal del contribuyente emisor. |
calle | Este atributo opcional sirve para precisar la avenida, calle, camino o carretera donde se da la ubicación. | |
noExterior | Este atributo opcional sirve para expresar el número particular en donde se da la ubicación sobre una calle dada. | |
noInterior | Este atributo opcional sirve para expresar información adicional para especificar la ubicación cuando calle y número exterior (noExterior) no resulten suficientes para determinar la ubicación de forma precisa. | |
colonia | Este atributo opcional sirve para precisar la colonia en donde se da la ubicación cuando se desea ser más específico en casos de ubicaciones urbanas. | |
localidad | Atributo opcional que sirve para precisar la ciudad o población donde se da la ubicación. | |
referencia | Atributo opcional para expresar una referencia de ubicación adicional. | |
municipio | Atributo opcional que sirve para precisar el municipio o delegación (en el caso del Distrito Federal) en donde se da la ubicación. | |
estado | Atributo opcional que sirve para precisar el estado o entidad federativa donde se da la ubicación. | |
pais | Atributo requerido que sirve para precisar el país donde se da la ubicación. | |
codigoPostal | Atributo opcional que sirve para asentar el código postal en donde se da la ubicación. | |
RegimenFiscal |
(nodo hijo de "Emisor") | Nodo requerido para incorporar los regímenes en los que tributa el contribuyente emisor. Puede contener más de un régimen. |
Regimen | Atributo requerido para incorporar el nombre del régimen en el que tributa el contribuyente emisor. | |
Receptor |
(nodo hijo de "Comprobante") | Nodo requerido para precisar la información del contribuyente receptor del comprobante. |
rfc | Atributo requerido para precisar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente receptor del comprobante. | |
nombre | Atributo opcional para el nombre, denominación o razón social del contribuyente receptor del comprobante. | |
Domicilio |
(nodo hijo de "Receptor") | Nodo opcional para la definición de la ubicación donde se da el domicilio del receptor del comprobante fiscal. |
calle | Este atributo opcional sirve para precisar la avenida, calle, camino o carretera donde se da la ubicación. | |
noExterior | Este atributo opcional sirve para expresar el número particular en donde se da la ubicación sobre una calle dada. | |
noInterior | Este atributo opcional sirve para expresar información adicional para especificar la ubicación cuando calle y número exterior (noExterior) no resulten suficientes para determinar la ubicación de forma precisa. | |
colonia | Este atributo opcional sirve para precisar la colonia en donde se da la ubicación cuando se desea ser más específico en casos de ubicaciones urbanas. | |
localidad | Atributo opcional que sirve para precisar la ciudad o población donde se da la ubicación. | |
referencia | Atributo opcional para expresar una referencia de ubicación adicional. | |
municipio | Atributo opcional que sirve para precisar el municipio o delegación (en el caso del Distrito Federal) en donde se da la ubicación. | |
estado | Atributo opcional que sirve para precisar el estado o entidad federativa donde se da la ubicación. | |
país | Atributo requerido que sirve para precisar el país donde se da la ubicación. | |
codigoPostal | Atributo opcional que sirve para asentar el código postal en donde se da la ubicación. | |
Conceptos |
(nodo hijo de "Comprobante") | Nodo requerido para enlistar los conceptos cubiertos por el comprobante. |
Concepto |
(nodo hijo de "Conceptos") | Nodo para introducir la información detallada de un bien o servicio amparado en el comprobante. |
cantidad | Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por el presente concepto. | |
unidad | Atributo requerido para precisar la unidad de medida aplicable para la cantidad expresada en el concepto. | |
noIdentificacion | Atributo opcional para expresar el número de serie del bien o identificador del servicio amparado por el presente concepto. | |
descripción | Atributo requerido para precisar la descripción del bien o servicio cubierto por el presente concepto. | |
valorUnitario | Atributo requerido para precisar el valor o precio unitario del bien o servicio cubierto por el presente concepto. | |
importe | Atributo 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. | |
InformacionAduanera |
(nodo hijo de "Concepto") | Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas. |
numero | Atributo requerido para expresar el número del documento aduanero que ampara la importación del bien. | |
fecha | Atributo requerido para expresar la fecha de expedición del documento aduanero que ampara la importación del bien. Se expresa en el formato aaaa-mm-dd. | |
aduana | Atributo opcional para precisar el nombre de la aduana por la que se efectuó la importación del bien. | |
CuentaPredial |
(nodo hijo de "Concepto") | Nodo opcional para asentar el número de cuenta predial con el que fue registrado el inmueble, en el sistema catastral de la entidad federativa de que trate, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable. |
numero | Atributo requerido para precisar el número de la cuenta predial del inmueble cubierto por el presente concepto, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable, tratándose de arrendamiento. | |
ComplementoConcepto |
(nodo hijo de "Concepto") | Nodo opcional donde se incluirán los nodos complementarios de extensión al concepto, definidos por el SAT, de acuerdo a disposiciones particulares a un sector o actividad especifica. |
Parte |
(nodo hijo de "Concepto") | Nodo opcional para expresar las partes o componentes que integran la totalidad del concepto expresado en el comprobante fiscal digital a través de Internet. |
cantidad | Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por la presente parte. | |
unidad | Atributo opcional para precisar la unidad de medida aplicable para la cantidad expresada en la parte. | |
noIdentificacion | Atributo opcional para expresar el número de serie del bien o identificador del servicio amparado por la presente parte. | |
descripcion | Atributo requerido para precisar la descripción del bien o servicio cubierto por la presente parte. | |
valorUnitario | Atributo opcional para precisar el valor o precio unitario del bien o servicio cubierto por la presente parte. | |
importe | Atributo opcional para precisar el importe total de los bienes o servicios de la presente parte. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en la parte. | |
InformacionAduanera |
(nodo hijo de "Parte") | Nodo opcional para introducir la información aduanera aplicable cuando se trate de partes o componentes importados vendidos de primera mano. |
numero | Atributo requerido para expresar el número del documento aduanero que ampara la importación del bien. | |
fecha | Atributo requerido para expresar la fecha de expedición del documento aduanero que ampara la importación del bien. Se expresa en el formato aaaa-mm-dd. | |
aduana | Atributo opcional para precisar el nombre de la aduana por la que se efectuó la importación del bien. | |
Impuestos |
(nodo hijo de "Comprobante") | Nodo requerido para capturar los impuestos aplicables. |
totalImpuestosRetenidos | Atributo opcional para expresar el total de los impuestos retenidos que se desprenden de los conceptos expresados en el comprobante fiscal digital a través de Internet. | |
totalImpuestosTrasladados | Atributo opcional para expresar el total de los impuestos trasladados que se desprenden de los conceptos expresados en el comprobante fiscal digital a través de Internet. | |
Retenciones |
(nodo hijo de "Impuestos") | Nodo opcional para capturar los impuestos retenidos aplicables. |
Retencion |
(nodo hijo de "Retenciones") | Nodo para la información detallada de una retención de impuesto específico. |
impuesto | Atributo requerido para señalar el tipo de impuesto retenido. | |
importe | Atributo requerido para señalar el importe o monto del impuesto retenido. | |
Traslados |
(nodo hijo de "Impuestos") | Nodo opcional para asentar o referir los impuestos trasladados aplicables. |
Traslado |
(nodo hijo de "Traslados") | Nodo para la información detallada de un traslado de impuesto específico. |
impuesto | Atributo requerido para señalar el tipo de impuesto trasladado. | |
tasa | Atributo requerido para señalar la tasa del impuesto que se traslada por cada concepto amparado en el comprobante. | |
importe | Atributo requerido para señalar el importe del impuesto trasladado. | |
Complemento |
(nodo hijo de "Comprobante") | Nodo opcional donde se incluirá el complemento Timbre Fiscal Digital de manera obligatoria y los nodos complementarios determinados por el SAT, de acuerdo a las disposiciones particulares a un sector o actividad específica. |
Addenda |
(nodo hijo de "Comprobante") | Nodo opcional para recibir las extensiones al presente formato que sean de utilidad al contribuyente. Para las reglas de uso del mismo, referirse al formato de origen. |
Complementos
Complemento timbre fiscal
Esta es la información que responde el servicio de Timbre Fiscal® cuando recibimos un comprobante válido.
- xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital"
- version="1.0"
- selloSAT = ...
- Sello de certificación.
- noCertificadoSAT
- Número de certificado de la certificación.
- selloCFD = ...
- Mismo sello de CFDI con que fue enviado el documento.
- FechaTimbrado="2013-12-09T19:57:34"
- La fecha y hora de ejecución del timbrado.
- UUID = ...
- Identificador del comprobante ante el SAT.
* Los campos en negritas representan a los nodos de información que genera diverza como PAC y es entregada al SAT.