Ejemplo de XML (CFD) sin Sellar
<?xml version="1.0" encoding="UTF-8"?>
<cfdi:Comprobante xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:cfdi="http://www.sat.gob.mx/cfd/3"
xmlns:tfd="http://www.sat.gob.mx/TimbreFiscalDigital"
xsi:schemaLocation="http://www.sat.gob.mx/cfd/3
http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd
http://www.sat.gob.mx/TimbreFiscalDigital
http://www.sat.gob.mx/sitio_internet/TimbreFiscalDigital/TimbreFiscalDigital.xsd"
version="3.2"
serie="A"
folio="100"
fecha="2013-12-05T00:07:30"
formaDePago="PAGO EN UNA SOLA EXHIBICION"
noCertificado="20001000000100005867"
certificado="MIIEdDCCA1ygAwIBAgIUMjAwMDEwMDAwMDAxMDAwMDU4NjcwDQYJKoZIhvcNAQEFBQAwggFvMRgwFgYDVQQDDA9BLkMuIGRlIHBydWViYXMxLzAtBgNVBAoMJlNlcnZpY2lvIGRlIEFkbWluaXN0cmFjacOzbiBUcmlidXRhcmlhMTgwNgYDVQQLDC9BZG1pbmlzdHJhY2nDs24gZGUgU2VndXJpZGFkIGRlIGxhIEluZm9ybWFjacOzbjEpMCcGCSqGSIb3DQEJARYaYXNpc25ldEBwcnVlYmFzLnNhdC5nb2IubXgxJjAkBgNVBAkMHUF2LiBIaWRhbGdvIDc3LCBDb2wuIEd1ZXJyZXJvMQ4wDAYDVQQRDAUwNjMwMDELMAkGA1UEBhMCTVgxGTAXBgNVBAgMEERpc3RyaXRvIEZlZGVyYWwxEjAQBgNVBAcMCUNveW9hY8OhbjEVMBMGA1UELRMMU0FUOTcwNzAxTk4zMTIwMAYJKoZIhvcNAQkCDCNSZXNwb25zYWJsZTogSMOpY3RvciBPcm5lbGFzIEFyY2lnYTAeFw0xMjA3MjcxNzAyMDBaFw0xNjA3MjcxNzAyMDBaMIHbMSkwJwYDVQQDEyBBQ0NFTSBTRVJWSUNJT1MgRU1QUkVTQVJJQUxFUyBTQzEpMCcGA1UEKRMgQUNDRU0gU0VSVklDSU9TIEVNUFJFU0FSSUFMRVMgU0MxKTAnBgNVBAoTIEFDQ0VNIFNFUlZJQ0lPUyBFTVBSRVNBUklBTEVTIFNDMSUwIwYDVQQtExxBQUEwMTAxMDFBQUEgLyBIRUdUNzYxMDAzNFMyMR4wHAYDVQQFExUgLyBIRUdUNzYxMDAzTURGUk5OMDkxETAPBgNVBAsTCFVuaWRhZCAxMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2TTQSPONBOVxpXv9wLYo8jezBrb34i/tLx8jGdtyy27BcesOav2c1NS/Gdv10u9SkWtwdy34uRAVe7H0a3VMRLHAkvp2qMCHaZc4T8k47Jtb9wrOEh/XFS8LgT4y5OQYo6civfXXdlvxWU/gdM/e6I2lg6FGorP8H4GPAJ/qCNwIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQUFAAOCAQEATxMecTpMbdhSHo6KVUg4QVF4Op2IBhiMaOrtrXBdJgzGotUFcJgdBCMjtTZXSlq1S4DG1jr8p4NzQlzxsdTxaB8nSKJ4KEMgIT7E62xRUj15jI49qFz7f2uMttZLNThipunsN/NF1XtvESMTDwQFvas/Ugig6qwEfSZc0MDxMpKLEkEePmQwtZD+zXFSMVa6hmOu4M+FzGiRXbj4YJXn9Myjd8xbL/c+9UIcrYoZskxDvMxc6/6M3rNNDY3OFhBK+V/sPMzWWGt8S1yjmtPfXgFs1t65AZ2hcTwTAuHrKwDatJ1ZPfa482ZBROAAX1waz7WwXp0gso7sDCm2/yUVww=="
subTotal="1000.00"
descuento="0.00"
total="1160.00"
metodoDePago="EFECTIVO"
tipoDeComprobante="ingreso"
TipoCambio="1.0000"
Moneda="MXN"
LugarExpedicion="MONTERREY"
>
<cfdi:Emisor
rfc="AAA010101AAA"
nombre="ACCEM SERVICIOS EMPRESARIALES SC">
<cfdi:DomicilioFiscal
calle="JUAREZ"
noExterior="100"
colonia="CENTRO"
localidad="MONTERREY"
municipio="MONTERREY"
estado="NUEVO LEON"
pais="MEXICO"
codigoPostal="01234" />
<cfdi:ExpedidoEn
calle="HIDALGO"
noExterior="240"
colonia="LAS CUMBRES 3 SECTOR"
localidad="MONTERREY"
municipio="MONTERREY"
estado="NUEVO LEON"
pais="MEXICO"
codigoPostal="64610" />
<cfdi:RegimenFiscal Regimen="MI REGIMEN" />
</cfdi:Emisor>
<cfdi:Receptor
rfc="SOHM7509289MA"
nombre="MIGUEL ANGEL SOSA HERNANDEZ">
<cfdi:Domicilio
calle="PERIFERICO"
noExterior="1024"
noInterior="B"
colonia="SAN ANGEL"
localidad="CIUDAD DE MÉXICO"
municipio="ALVARO OBREGON"
estado="DISTRITO FEDERAL"
pais="MEXICO"
codigoPostal="23010" />
</cfdi:Receptor>
<cfdi:Conceptos>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD1" descripcion="PRODUCTO PRUEBA 1" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD2" descripcion="PRODUCTO PRUEBA 2" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD3" descripcion="PRODUCTO PRUEBA 3" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD4" descripcion="PRODUCTO PRUEBA 4" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD5" descripcion="PRODUCTO PRUEBA 5" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD6" descripcion="PRODUCTO PRUEBA 6" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD7" descripcion="PRODUCTO PRUEBA 7" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD8" descripcion="PRODUCTO PRUEBA 8" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD9" descripcion="PRODUCTO PRUEBA 9" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
<cfdi:Concepto cantidad="1" unidad="PIEZA" noIdentificacion="COD10" descripcion="PRODUCTO PRUEBA 10" valorUnitario="100.00" importe="100.00"></cfdi:Concepto>
</cfdi:Conceptos>
<cfdi:Impuestos totalImpuestosTrasladados="160.00">
<cfdi:Traslados>
<cfdi:Traslado impuesto="IVA" tasa="16.00" importe="160.00" />
</cfdi:Traslados>
</cfdi:Impuestos>
</cfdi:Comprobante>
Ejemplo de cadena generada
||3.2|2013-12-05T00:07:30|ingreso|PAGO EN UNA SOLA EXHIBICION|1000.00|0.00|1.0000|MXN|1160.00|EFECTIVO|MONTERREY|AAA010101AAA|ACCEM SERVICIOS EMPRESARIALES SC|JUAREZ|100|CENTRO|MONTERREY|MONTERREY|NUEVO LEON|MEXICO|01234|HIDALGO|240|LAS CUMBRES 3 SECTOR|MONTERREY|MONTERREY|NUEVO LEON|MEXICO|64610|MI REGIMEN|SOHM7509289MA|MIGUEL ANGEL SOSA HERNANDEZ|PERIFERICO|1024|B|SAN ANGEL|CIUDAD DE MéXICO|ALVARO OBREGON|DISTRITO FEDERAL|MEXICO|23010|1|PIEZA|COD1|PRODUCTO PRUEBA 1|100.00|100.00|1|PIEZA|COD2|PRODUCTO PRUEBA 2|100.00|100.00|1|PIEZA|COD3|PRODUCTO PRUEBA 3|100.00|100.00|1|PIEZA|COD4|PRODUCTO PRUEBA 4|100.00|100.00|1|PIEZA|COD5|PRODUCTO PRUEBA 5|100.00|100.00|1|PIEZA|COD6|PRODUCTO PRUEBA 6|100.00|100.00|1|PIEZA|COD7|PRODUCTO PRUEBA 7|100.00|100.00|1|PIEZA|COD8|PRODUCTO PRUEBA 8|100.00|100.00|1|PIEZA|COD9|PRODUCTO PRUEBA 9|100.00|100.00|1|PIEZA|COD10|PRODUCTO PRUEBA 10|100.00|100.00|IVA|16.00|160.00|160.00||
A esta cadena se le aplicarán los certificados para generar el Sello
Si no deseas batallar te recomiendo la librería de multifacturas.com , ingresas todos los elementos de la factura como parámetros y te genera el XML, lo sella, y regresa ya timbrado.
Espero te sirva.
me podrias decir como puedo obtener el noAprobacion y anoAprobacion del certificado
ResponderEliminaresos 2 datos solo son utilizados para facturacion CBB la cual ya no es valida, y esos te los proporcionaba el SAT al momento de solicitar autorizacion para un rango de folios
ResponderEliminarpodría poner cuál les son los datos exactos de la cadena generada.
ResponderEliminarpor ejemplo
||versión|fecha|Tipo de comprobante| ......||
etc...
en la practica no te serviria mucho ya que los primeros elementos son algo fijos con muchos opcionales, los finales referentes a impuestos aparecen y desaparecen segun los tipos de impuestos que tenga la factura, al menos que solo te dediques a un solo formato en especial
Eliminarhola buenas noches se que este no es un foro de ayuda pero tengo una duda estoy tratando de sellar la cadena original con SHA256 anteriormente lo hacia asi...
ResponderEliminar$clave='archivos/claves.key.pem';
$fp = fopen($clave, "r");
$llave_privada = fread($fp, 8192);
fclose($fp);
$id_clave = openssl_get_privatekey($llave_privada);
openssl_sign($cadena_original,$cadenafirmada,$id_clave,OPENSSL_ALGO_SHA1);
$sello = base64_encode($cadenafirmada);
y lo unico que quise cambiar fue el SHA1 por SHA256 pero a la hora de validar me dice que el sello es invalido y lo hago de otra pagina de prueba y si sella bien