Hola.
El SAT publico el Anexo 20 2010 y ahora las reglas cambian. Quien ya creia tener todo para factura electronica, se equivoco
, porque en Enero del 2011 no sera igual.
Formato electrónico único
C. Estándar y uso del complemento obligatorio Timbre Fiscal Digital del SAT
Elemento: TimbreFiscalDigital
Diagrama
Descripción
Complemento requerido para el Timbrado Fiscal Digital del SAT que da validez a un Comprobante Fiscal Digital por Internet.
Atributos
Version
Descripción
Atributo requerido para la expresión de la versión del estándar del Timbre Fiscal Digital
Uso
requerido
Valor Prefijado
1.0
UUID
Descripción
Atributo requerido para expresar los 36 caracteres del UUID de la transacción de timbrado conforme al estándar (RFC) 4122
Uso
requerido
Tipo Base
xs:string
Longitud
36
Espacio en Blanco
Colapsar
Patrón
[a-f0-9A-F]{8}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{12}
FechaTimbrado
Descripción
Atributo requerido para expresar la fecha y hora de la generación del timbre por la certificación digital del SAT conforme con la especificación ISO 8601.
Uso
Requerido
Tipo Base
xs:dateTime
Espacio en Blanco
Colapsar
selloCFD
Descripción
Atributo requerido para contener el sello digital del comprobante fiscal, que será timbrado. El sello deberá ser expresado como una cadena de texto en formato Base 64.
Uso
Requerido
Tipo Base
xs:string
Espacio en Blanco
Colapsar
noCertificadoSAT
Descripción
Atributo requerido para expresar el número de serie del certificado del SAT usado para el Timbre
Uso
Requerido
Tipo Base
xs:string
Longitud
20
Espacio en Blanco
Colapsar
selloSAT
Descripción
Atributo requerido para contener el sello digital del Timbre Fiscal Digital, al que hacen referencia las reglas de Resolución Miscelánea aplicable. El sello deberá ser expresado como una cadena de texto en formato Base 64.
Uso
Requerido
Tipo Base
xs:string
Espacio en Blanco
Colapsar
Secuencia de Elementos a Integrar en la Cadena Original del Timbre Fiscal Digital del SAT.
Cadena Original
Se entiende como cadena original, a la secuencia de datos formada con la información contenida dentro del Timbre fiscal digital del SAT. Siguiendo para ello las reglas y la secuencia aquí especificadas:
Reglas Generales:
- Ninguno de los atributos que conforman al comprobante fiscal digital deberá contener el carácter | (“pipe”) debido a que este será utilizado como carácter de control en la formación de la cadena original.
- La cadena original resultante del complemento será integrada a la cadena original del comprobante de acuerdo con lo especificado en el anexo 20 de la Resolución Miscelánea Fiscal para 2010.
- Se expresará únicamente la información del dato sin expresar el atributo al que hace referencia. Esto es, si el atributo tipoOperación tiene el valor “monedero” solo se expresará |monedero| y nunca |tipoOperacion monedero|.
- Cada dato individual se encontrará separado de su dato anterior, en caso de existir, mediante un carácter | (“pipe” sencillo).
- Los espacios en blanco que se presenten dentro de la cadena original serán tratados de la siguiente manera:
- Se deberán remplazar todos los tabuladores, retornos de carro y saltos de línea por espacios en blanco.
- Acto seguido se elimina cualquier carácter en blanco al principio y al final de cada separador | (“pipe” sencillo).
- Finalmente, toda secuencia de caracteres en blanco intermedias se sustituyen por un único carácter en blanco.
- Los datos opcionales, cuando no existan, no aparecerán expresados en la cadena original y no tendrán delimitador alguno.
- Toda la cadena de original se expresará en el formato de codificación UTF-8.
Secuencia de Formación
La secuencia de formación será siempre en el orden que se expresa a continuación, tomando en cuenta las reglas generales expresadas en el párrafo anterior.
- Atributos del elemento raíz TimbreFiscalDigital
- version
- UUID
- FechaTimbrado
- selloCFD
- noCertificadoSAT
Ejemplo de cadena original de un timbre:
||1.0|ad662d33-6934-459c-a128-bdf0393e0f44|2001-12-17T09:30:47Z|iYyIk1MtEPzTxY3h57kYJnEXNae9lvLMgAq3jGMePsDtEOF6XLWbrV2GL/2TX00vP2+YsPN+5UmyRdzMLZGEfESiNQF9fotNbtA487dWnCf5pUu0ikVpgHvpY7YoA4lB1D/JWc+zntkgW+Ig49WnlKyXi0LOlBOVuxckDb7EAx4=|12345678901234 567890||
Nota: El atributo selloCFD será el sello previo del Comprobante Fiscal Digital, el sello del timbre será guardado dentro del atributo selloSAT. Esta cadena original será sellada utilizando el algoritmo de digestión SHA-1.
El resultado de la validación de un CFDI, asignación de un folio fiscal e incorporación del sello digital del SAT se entenderá como el Timbrado Fiscal Digital. El folio fiscal digital será referido como el UUID. Para integrar el complemento TimbreFiscalDigital a un comprobante fiscal digital por Internet, la estructura resultante deberá integrarse como un nodo hijo del nodo Comprobante/Complemento/TimbreFiscalDigital.