![]() |
Facturacion electronica en México Voy a especificar muy bien mi problema para ver si me pueden ayudar: Lo que quiero es: GENERAR SELLO DIGITAL EN PHP PARA FACTURA ELECTRÓNICA EN MÉXICO CON LOS REQUERIMIENTOS DEL SAT Para ello contamos con: INFORMACIÓN SOBRE COMO HACER LA FACTURA ELECTRÓNICA SEGÚN EL SAT: Anexo 20: http://www.sat.gob.mx/sitio_internet...s/15_3445.html Los archivos de ejemplo se encuentran en: http://www.sat.gob.mx/sitio_internet...s/15_6522.html Dentro trae: ftp://ftp2.sat.gob.mx/asistencia_ser...uestra_xml.zip - Un xml de muestra (Muestra.xml) del CFD (Comprobante Fiscal Digital) ftp://ftp2.sat.gob.mx/asistencia_ser.../Cer_Sello.zip - Certificados de muestra Cer_Sellos.zip y dentro trae: - Certificados de muestra pero quiero que hagan enfasis en: - aaa010101aaa_CSD_01.cer (El primer certificado solo necesitamos 1) - aaa010101aaa_CSD_01.key (La primera key y solo necesitamos 1) - Contraseña de Clave Privada.txt (Pass para abrir el key) Nos facilita también una cadena original: ||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5|| Y su digestión MD5: 8aa2b617944427353697e694a2e35a07 PROBLEMA CON ARCHIVOS DE EJEMPLO EN EL SAT Hasta aquí todo va bien, tenemos todo claro y suficiente información de muestra, pero... al pasar el xml de muestra esta mal, pueden constatarlo en: https://www.consulta.sat.gob.mx/SICO...Validador.html Según el marco teórico mostrado en el Anexo 20, y otros recursos, podemos ver que es un proceso extremadamente sencillo, sin embargo, cuando validamos nos arroja que el sello no es válido. DESARROLLO DE SELLO DIGITAL EN PHP Voy a documentar el ensayo que hice para ver si ustedes me pueden auxiliar en ver que parte esta mal: Como referencia usare Muestra.xml que tiene una estructura válida, y cuya cadena esta provista y pasa el validador como correcta y también la digestión MD5 que también es correcta, entonces lo que haré es generar un sello para dicho xml y posteriormente pegarlo para intentar pasar el validador, lo cual debería darme un resultado correcto pero no es así, pero bueno ahora puntualizo el procedimiento que seguí: 1. Primero generamos el PEM en base al key: pem.php
Código php:
Ver original En este punto generamos: aaa010101aaa_CSD_01.key.pem 2. Posteriormente lo usaremos en: seal.php
Código php:
Ver original Hasta aqui el sello que obtengo es: cLBps3/cBUFelW/uxxNmKGvxThUva3AjvppfCxioTBlgqttkrV0yjPvRmA2592l7W QfwN1iXCQT4eyRtblXQre37a+EV4+vGuJD5Oah6ED1U/sVP2ak53nH31RhnQQeQN8NV2TtpjKQaNn64doKwVg9SGDn8Ppk pzlPBiqH5164= Ahora lo que hice para checarlo es pegar dicho sello a Muestra.xml, quedando así:
Código xml:
Ver original RESULTADO Pero a la hora de validarlo con el certificado de ejemplo (aaa010101aaa_CSD_01.cer) en: https://www.consulta.sat.gob.mx/SICO...Validador.html Este sello no es válido. Me gustaría saber si alguien lo obtiene de manera diferente, no puse validaciones ni como generar el xml ya que lo que básicamente me interesa es que el sello sea válido y espero que también les sea de utilidad. Saludos a todos. |
Respuesta: Facturacion electronica en México Encontré un código muy parecido, pero tampoco me resulta, les paso el link: http://phylevn.mexrom.net/index.php/blog/show/145.html en un rato mas les pongo otro que encontré |
Respuesta: Facturacion electronica en México También encontré este código: http://www.lacorona.com.mx/fortiz/sat/ La desventaja es que es muy muy largo y es difícil encontrar el punto al que me refiero, pero en esencia el hace esto: http://www.lacorona.com.mx/fortiz/sat/xml.php Código PHP: Si alguien tiene alguna idea se los agradeceré. |
Respuesta: Facturacion electronica en México Mmm creo deberías reevaluar, si ninguno te esta generando como "valido" es probable que el "validador" este incorrecto, porque no intentas contactar al soporte tecnico del SAT?, digo si ni el ejemplo que ellos mismos exponen es porque igual cambiaron algo que no documentaron.. Saludos. |
Respuesta: Facturacion electronica en México El problema es que en el Chat del SAT no hay personal calificado para responder este tipo de preguntas, no saben ni a que te refieres, ya me dejaron dos veces colgado el chat, estoy una tercera vez para ver que me responden, y llegar a la conclusión de que es lo que esta mal, si los archivos, el validador o el algoritmo. Les comentaré la respuesta en cuanto la tenga, mientras si alguien mas detecta el bug, bienvenido. |
Respuesta: Facturacion electronica en México Hago notar un error mio, pero aun así este no fue el causante... esto sigue inválido: en vez de el certificado que puse el valor es: 10001200000000022517 en vez de 00001000000000000114 en "noCertificado", realmente no afecta este valor ya que no se incluye en la cadena original, pero dejo aqui el ejemplo corregido: Código: <?xml version="1.0" encoding="UTF-8"?> |
Respuesta: Facturacion electronica en México saludos... fijate que estoy intentando igual esto de la facturacion electronica, pero empece por esto de cifrar y todo el roollo. tengo una linea cparecida a la tuya. pero a mi no me sale, inclusive he estado intentando directamente en linea de comandos de openssl. openssl dgst -md5 -sign C:\WEB_SAT\aaa010101aaa.key.pem C:\WEB_SAT\cadenamd5.txt | openssl enc -base64 -a > C:\WEB_SAT\seal.txt pero no me da nada, podrias ayudarme? Saludss..... colega. |
Respuesta: Facturacion electronica en México Mismo caso, voy a intentar de nuevo comunicarme con el SAT (cuarta vez) |
Respuesta: Facturacion electronica en México Cuando ya sea válido será open source, así que si alguien sabe la falla ayudaría bastante, podemos convertir este post en un tutorial, ya que a la fecha no existe un tutorial "probado". |
Respuesta: Facturacion electronica en México Me comenta el autor de: http://phylevn.mexrom.net/index.php/blog/show/145.html esto: Cita:
|
Respuesta: Facturacion electronica en México buenas!! la propuesta de dejarlo como tutorial es buena, creo que a mas de uno nos interesa el tema aunque algunos con poca experiencia como su servidor leemos para aprender ya que no tenemos mucho que poder aportar un saludo!! |
Respuesta: Facturacion electronica en México bueno eso que el validador solo funciona para la version 1.0 es falsa existen dentro del sat 2 validadores, el mas actual en su interface no tiene pesañas y es posible utilizar xml con el certificdo incluido. y ese validador es completamente para ambas versiones, en la pagina www.verificaCFD.com.mx una empresa coloco de manera libre su validador, que aunque tiene algunos defectos al no reconocer un CFD de honorarios jejeje. pero = funciona muy bien, por otro lado, si se documentan mejor podrian lograrlo, lo de la corona tiene unos lijeros errores, sean listos y arreglenlos, o adquieran una consultoria de www.rexsystemssoftwaredeveloper.com bueno saludos, no se desesperen, a los que les interesa implementar con java en JSP o java desktop o php consultenme soy la unica empresa que dota de consultoria para tecnologia JAVA u PHP. aprenderan los mas importante que es respetar el formato para la version 2.0 que pues si no se han dado cuenta ese es su error, un mal formato ocaciona una mala cadena original y por ende un mal sello. bien ya les dije el error, y les repido el verificador del sat funciona muy bien. mis CFD pasan sin problemas saludos... |
Respuesta: Facturacion electronica en México ps le verdad me parece interesante, me gustaria que compartieras lo ke pueda servirnos. yo publico mis avances en diversos foros he publicado ensayos y codigos. NO VENGO A HACER NEGOCIO. Vengo a aprender y compartir. Saludsss. |
Respuesta: Facturacion electronica en México Mira amigo yo estoy completamente deacuerdo con lo que dices de compartir, yo ya les dije cual es su error y que hacer para resolverlo, no es sencillo si no tienes pasion por la programacion, en otras palabras no es para amateurs, php no se equivoca lo que estan haciendo mal es que no siguen el formato establecido, lean el anexo 20 y la diferente informacion que proporciona el sat es lo unico que necesitan. Otra cosa mi estimado compañero que posteo, es licencia gnu aprender no cuesta, pero se sincero, para que quieres aprender eso?, si es porque tu trabajas por honorarios y deseas proporcionar cfd's, existe mi version gratuita. Y como lo dije en el otro post si tu trabajas para alguna empresa no seas valin compa, porque eso es no respetar gnu, ya que tu utilizarias a una comunidad para dar ganancia a otros. Lee las normas gnu. Y se sincero para que buscas esa informacion, porque en tu trabajo necesitan algo asi, o por mero aprendisaje. Si es por lo segundo congusto te proposiono todo lo que necesites para que lo logres, si es lo primero pues no seas valin y respeta las normas gnu. El programador de la corona proporciono completamente todo, tiene ciertos errores que para programadores amateur son imperceptibles. Yo aprendi por gusto, ya que trabajaria en una empresa por honorarios y comence a documentarme hasta que lo logre eso duro 2 meses, de pruebas y pruebas horas y horas de trabajo. Ing en informatica ricky lopez edad: 22 años saludos, les repito, lean el estandar del sat y encontraran los problemas, y respeten gnu. |
Respuesta: Facturacion electronica en México saludos gracias, he estado revisando el anoxo 20 como lo habias posteado y si hay muchas diferncias estoy en eso. me da gusto que pienses en eso, pues yo tambien aprendo por gusto, asi comence con progress, 4gl, php, myslq, java, visual, C#..... y he logrado hacer cosas padres que son mias(GNU), no de una empresa, y las pongo a disposicion de mis cuates que ncesitan de ayuda. cualquiera que sea su necesidad. me gusta programar, me gusta lo que hago. colega ya somos dos. y los que vienen en esto del php. respeto tu esfuerzo y creeme colega, esto es pura vidaaaa...... y por eso busco quien pueda ayudarme, siempre lo hago en la web. y libros. me encanta los retos. somos informaticos, solos aveces no contamos con la suficiente informacion o el camino adecuado para aprender, colegas como tu que ya lo hicieron posible es lo que me agrada, y si me gustaria que nos ayudaras, digo posiblemente algunos de este foro se sientan intocables pero yo si quisiera que ME hecharas la mano. si quisiera aprender mas de esto que esta de BOOOM. saludss colega Lic. en informatica. Hernan Sanchez Glez 24. |
Respuesta: Facturacion electronica en México Hola Nanox, Es bueno que quieras aprender, pero recuerda que el foro es para retroalimentarnos todos, por lo que no esta permitido intercambiar emails dentro del foro, si quieres contactarlo enviale un mensaje privado. Saludos. |
Respuesta: Facturacion electronica en México Saludss GatorV. disculpa, solo era referencia, no sucedera saludss, de paso tendras algo que pueda ayudarnos en esto de la facturacion electronica... |
Respuesta: Facturacion electronica en México bueno aca les dejo esta direccion http://phylevn.mexrom.net/index.php/blog/show/Script_PHP_para_generar_Sello_Digital_requerido_po r_el_estandar_de_SAT_para_facturacin_ele.html segun su creador ya esta funcionando, y es libre y eso, en mi opinion personal esta mal implementado, quiza esta correcto lo que genere sin embargo la manera en que lo hace no es muy recomendable. pero bueno esa es mi humilde opinion, para los que no han encontrado la solucion pues en el link que les pase la muestran. bueno los dejo saludos. |
Respuesta: Facturacion electronica en México fijate que aun tengo el problema de que no obtengo un sello valido puedo generar un xml, pero ya lo revise contra la estructura que da el anexo 20 y da correcto reviso uno por uno los nodos, pero al sacar la cadena y sellar, lo valido y ps nada. colega como le hago para obtener una cadena valida, y ps antes de eso un xml valido. agradecere cualquier comentario al respecto saludsss..... |
Respuesta: Facturacion electronica en México Hola, soy nuevo aquí y también tuve muchos problemas al iniciar este proyecto de factura digital. Aunque yo programo en Visual Studio 2005 creo que la "médula espinal" de todo esto es la misma. Con relación a conseguir una validación correcta, yo también tuve broncas, pero ahora les cuento como le hice. Para empezar, y aunque quizá ya lo sepan, el SAT tiene 2 validadores: 1. La versión 1.0 (ó 1.5, no recuerdo bien) que es la que, en su interfaz, contiene 2 pestañitas. 2. La versión 2.0 (la que no tiene pestañas) Es importante que al validar sepan cuál de las 2 versiones usar, que en teoría debería ser siempre la versión 2, pues es la que compara contra el esquema XML (.XSD) más reciente, expedido por el SAT. Este "validador" hace una revisión, tanto de la SINTAXIS como del Sello digital que generado. Lo primero que tenemos que lograr, es "pasar con 10 :)" la validación de la sintaxis, ya después nos fijamos en el sello. Pasar el examen de la sintaxis es muy simple, solo tenemos que seguir al pie de la letra el "anexo 20", que indica claramente la forma y orden que tenemos que seguir al generar nuestro archivo XML. (Presten mucha atención a los tipos de datos y el formato que deben seguir) En cuanto al sello digital, observen que cuando el validador empieza a verificar nuestro archivo XML, él mismo genera una "Cadena original" en base al archivo que le pasamos (el XML), fíjenseee.... SI LA CADENA ORIGINAL QUE MUESTRA EL VALIDADOR ES DIFERENTE a la que nosotros utilizamos para crear nuestro Sello Digital, obviamente "reprobaremos" esa prueba. NO DEBE EXISTIR ABSOLUTAMENTE NINGUNA DIFERENCIA entre esa cadena original y la nuestra. Bueno, espero haber aportado aunque sea un poco a esta charla. Aporten y digan sus experiencias para que todos aprendamos. Salu2 freebyte :pirata: |
Respuesta: Facturacion electronica en México colegas PHPeros ya tengo un CFD pero no tengo folios validos.... he de pensar que por eso me dice que aun no esta weno el sello. lo he probado en el validador. me dice que es invalido. pero tengo un CFD valido al que le cambio el serie y folio y me da el mismo error. por eso supongo que ya hice solo necesito folios validos....... alguien sabe donde conseguir? otra duda..... es cierto que despues de avisar que se expediran CFDs se tiene un mes para empezar? o es choroooooo........yo no expedire nada, pero ya casi tengo esto.. solo es por aprender..... quien quiera mi codigo mandame un MP. Por que sta medio desordenado, tu gustas mejorarlo perfectooo...... saludssss |
Respuesta: Facturacion electronica en México Eyy compadre, con los Certificados y Llaves que el SAT te da para probar es suficiente para que puedas pasar las verificaciones de tus comprobantes. Entra al sitio del SAT y descarga los Certificados de prueba... Freebyte |
Respuesta: Facturacion electronica en México Hola, Queria saber si alguien pudiera subir un xml de la version 2, como ejemplo ya que yo tampoco estoy pudiendo generar la cadena con el programa del SAT, solo es para comparar si me estoy equivocando en algo o tengo mal una sintaxis q la vdd no creo ya que segui al pie de la letra el anexo 20. Otra duda, q es mejor usar el archivo cadenaoriginal_2_0_.xslt o el (.XSD), mas bien cual es la diferencia entre ambos. Gracias Isaac Lañado |
Respuesta: Facturacion electronica en México Cuidado, los archivos de ejemplo que publica el SAT no están en la versión 2.0 del estándar, en mi caso lo que hice es seguir el estándar publicado y luego compararlo contra el XSD usando la función que para este propósito tiene PHP. El ejemplo que publican en http://lacorona.com.mx/fortiz/sat/xsl.php sigue la versiòn 2.0, por lo que si pude validarlo usando XSD,sin embargo tuve problemas al generar el hash. Tengo varias teorìas, una de ellas es la conversiòn de caracteres a UTF-8, mejor no me detuve en averiguar el problema, pero generé mi mismo sello y si pasé la validaciòn. Por otro lado, ni el validador del SAT ni usando el XSD (que supongo que internamente es lo que hace el SAT) garantiza que estén al 100% dentro del estándar, por ejemplo en el anexo 20 dice que hay que eliminar espacios en blanco redundantes y cosas así que ambas herramientas no se fijan. En resumen, recomiendo que hagan validaciòn extensiva y no confíen únicamente en el XSD. La documentaciòn y herramientas del SAT dejan mucho que desear (es increíble que no puedan poner certificados correctos para sus páginas) y la herramienta que yo usé, que es PHP no hace un mejor papel. Saludos cordiales |
Respuesta: Facturacion electronica en México Yo estoy entrando en este rollo desarrollandolo bajo JAVA, al final también me dice que no es un sello válido, independientemente de todo.. me pueden decir cual es el sello al que llegan usando el .key perteneciente al certificado 1 ??, es decir si tenemos la cadena ||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5|| el hash es 8aa2b617944427353697e694a2e35a07 Aplicando RSA con private key (.key ) y en base 64 obtengo.- Pz9HPz8BOz8/Pj8/PyE/Vj8lPz8/bT8/Pz8HPxA/Pz8/Pz8/cGI/Pz8/RD9KNw4/Pwc/C2J8XUo/ N3x+MTsePz8/KgRCYj8AP2w/IAoEPz8sYj9KPzwWPxY/WBUDPz8NPwFzSEwlYD9TfD8/bj8/Iz5F ay5nQD83GS4TPz8/XQc= alguno obtiene esto mismo ? |
Respuesta: Facturacion electronica en México Cita:
De antemano gracias pero ya pude solucionar los problemas y pasar todas las validaciones... por cierto el resultado del sello digital que pusé arriba no es correcto |
Respuesta: Facturacion electronica en México Cita:
me podrias indicar que es lo que realizaste por favor |
Respuesta: Facturacion electronica en México Alguien me puede decir como se obtiene el noCertificado desde un archivo .pem o desde el archivo .cer? Cuando ejecuto el comando de openSSL para obtener el numero de serie es diferente al que pide hacienda de 20 caracteres. |
Respuesta: Facturacion electronica en México Tlaxiaco, Oaxaca. Buen colaborando con este foro, les informo que despues de un arduo trabajo para la realizacion de una factura digital, llegue a la conclución de que esta mal el procedimiento del SAT para el calculo del sello digital ya que el primer algoritmo no se raliza. Esto es muy lamentable ya que una institucion con tanto prestigio como el SAT, que genera este tipo de aplicaciones para mejorar CFD y resulta que lo que proporcionan como documentación esta mal. Es demasiado complicado generar una factura electronica es a un mas complicado generarla con un a documentacion erronea(anexo 20.- generacion de sello digital) Bueno foreros espero les sirva este tip. Saludos TMLS |
Respuesta: Facturacion electronica en México Buenas, En primer lugar gracias por sus aportes me han sido muy utiles, es segundo lugar va mi inquietud. Eh logrado manipular y convertit los certificados a DER a PEM tal como explican, ahora bien cuando trato de obtener información del certificado publico PEM, por ejemplo el nro. de certificado: openssl x509 -in aaa010101aaa_CSD_01.pem -serial -noout Me muestra el error: 2239:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:644:Expecting: TRUSTED CERTIFICATE eh provado en dos distros linux distintas y me sucede lo mismo, imagino que para operar con los certificados del SAT se requiere el certificado raíz, pero por más que lo busco no logro encontrarlo en el sitio del SAT, ¿sera ese el problema o mi error es otro? |
Respuesta: Facturacion electronica en México veo que aun hay dudas.... saben por que?, por que nadie es tan amable de decir mira asi lo hice y funciona.... asi que dejemonos de posteadores que dicen que el SAT, que esto que el otro. si no van a poner algun HECHO que ayude mejor no pongan. hay va mi respuesta a Destruktor... saludos... ayudanos a avanzar.... esto lo meti en un archito bat, para ejecutarlo junto. @echo off color 30 C:\OpenSSL\bin\openssl.exe pkcs8 -inform DER -in C:\WEB_SAT\EPISA\aaa010101aaa_CSD_01.key -passin pass:xxxxxxxxxxx -out C:\WEB_SAT\EPISA\aaa010101aaa.key.pem echo la llave privada ha sido creada..... C:\OpenSSL\bin\openssl.exe x509 -inform DER -outform PEM -in C:\WEB_SAT\EPISA\aaa010101aaa_CSD_01.cer -pubkey -out C:\WEB_SAT\EPISA\aaa010101aaa.cer.pem echo la llave publica ha sido creada..... cls exit. y para probar uno por uno... $ openssl x509 -in AAA010101AAA.cer.pem -issuer -noout $ openssl x509 -in AAA010101AAA.cer.pem -startdate -enddate -noout $ openssl x509 -in AAA010101AAA.cer.pem -subject -noout $ openssl x509 -in AAA010101AAA.cer.pem -serial -noout EL HECHO, a mi si me funcionan...solo les agregue la ruta. |
Respuesta: Facturacion electronica en México Antes que nada agradecerle a todos los que han aportado sus conocimientos en este foro, y solicitar ayuda debido a que Ya tengo la llave privada y llave publica con forme explico Nanox con un archivo bat @echo off color 30 C:\OpenSSL\bin\openssl.exe pkcs8 -inform DER -in C:\WEB_SAT\EPISA\aaa010101aaa_CSD_01.key -passin pass:xxxxxxxxxxx -out C:\WEB_SAT\EPISA\aaa010101aaa.key.pem C:\OpenSSL\bin\openssl.exe x509 -inform DER -outform PEM –in C:\WEB_SAT\EPISA\aaa010101aaa_CSD_01.cer -pubkey -out C:\WEB_SAT\EPISA\aaa010101aaa.cer.pem echo la llave publica ha sido creada..... Pero no se como obtener el certificado es decir en el archivo xml con versión 2.0 existe un registro llamado certificado Ejemplo: version="2.0" serie="BA" folio="170" fecha="2009-09-01T03:36:59" sello="G6KKmnhBQh06I5h0JQSD9ItM7H4msd4D45Yg4ti81XA SvM9+Zf38g/Q9ANMl6FJaPpqMHnyj4UZWsQgKz7Z+qfMM/gTYqlTQIcily0VT0BCazEnpmn1xGPR6So6ffhnJbYLTfTjqEbS 5Td3t/pvdGsg7CCr/bG+N01WM9py1uc0=" noCertificado="10001200000000022517" certificado="MIIDhDCCAmygAwIBAgIUMTAwMDEyMDAwMDAwM DAwMjI1MTcwDQYJKoZIhvcNAQEFBQAwgcMxGTAXBgNVBAcTEEN pdWRhZCBkZSBNZXhpY28xFTATBgNVBAgTDE1leGljbywgRC5GL jELMAkGA1UEBhMCTVgxGjAYBgNVBAMTEUFDIGRlIFBydWViYXM gU0FUMTYwNAYDVQQLFC1BZG1pbmlzdHJhY2nzbiBkZSBTZWd1c mlkYWQgZGUgbGEgSW5mb3JtYWNp824xLjAsBgNVBAoUJVNlcnZ pY2lvIGRlIEFkbWluaXN0cmFjafNuIFRyaWJ1dGFyaWEwHhcNM DgwODIxMTUyMjA4WhcNMTAwODIxMTUyMjA4WjCBmDElMCMGA1U ELRMcQUFBMDEwMTAxQUFBIC8gQUFBQTAxMDEwMUFBQTEeMBwGA 1UEBRMVIC8gQUFBQTAxMDEwMUhERlJYWDAxMRIwEAYDVQQKEwl NYXRyaXogU0ExEzARBgNVBAsTClVuaWRhZCAxMCAxEjAQBgNVB AMTCU1hdHJpeiBTQTESMBAGA1UEKRMJTWF0cml6IFNBMIGfMA0 GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDpmiW1q9gyzCFtMcbaF DJexk2IpLoTdNXg4ToGRZ/f+hIjmj3N6ODWX1ARNFGYocEHf113GpW5Oe/mj6UqhBpiH4JRTNR4Udb8myJTArIlODynVHuIUuyhKo7gbMbDd XjilTAYY2XWQuQ7aDtWwntUmNg4vAC/F3OtRz3+y9wM5QIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1 UdDwQEAwIGwDANBgkqhkiG9w0BAQUFAAOCAQEAafyD4gMsOvq7 E3raPntmQlJTxpWwNySqskE7fe23HVL9UKFCUlWWx/W8gluxIX9S19y17iWnGbtmbNddHxG5PznPsy/a8PlwNHjDW0FOpia2LsvDrNcdPiJhzL/1OVagkenffFf8bLEetF3ktxZ7ifcH1yxVxpZ7PS/pe8YIOpWRuMmTV4ypGdsw9TW3HVP5IJ/canuQGPTb3LQ8ojihW2dHnC6ojaWW4GHFSZAPhQJ/DaH/UgFjaQke/RBtoAketfROdG+1qYeA1q/is04O4AXNmMByGp7ZnvGNrO9LDBvs3eKN4ZYcQyjxFEbr1X/xUqHCRF1VEkkC5jJQ1ktC4g==" desde php estoy mandando esta instrucción <? Exec("C:\OpenSSL\bin\openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out aaa010101aaa_CSD_01.key.pem"); Exec("C:\OpenSSL\bin\openssl.exe x509 -inform DER -outform PEM -in aaa010101aaa_CSD_01.cer -pubkey -out aaa010101aaa_CSD_01.cer.pem"); $cadenaoriginal="||2.0|A|5|2009-09-03T23:02:15|12345678|2009|ingreso|Pago en una sola exhibicion|Efectivo|20000.00|23000.00|HEOE510629UB 2|MARIA ESTHER HERMOSO ORTUNO|RINCON DE ZAGAROLO|108|RINCONADA DE LOS ANDES|SAN LUIS POTOSI|SAN LUIS POTOSI|SAN LUIS POTOSI|MEXICO|78216|RINCON DE ZAGAROLO|108|RINCONADA DE LOS ANDES|SAN LUIS POTOSI|SAN LUIS POTOSI|SAN LUIS POTOSI|MEXICO|78216|MOR657810UB3|MORAN Y CIS, A.C.|HIMALAYA|580|LOMAS TERCERA SECCION|AGUASCALIENTES|AGUASCALIENTES|AGUASCALIENT ES|MEXICO|78000|1|PZA|ADMIN|SRNADMIN|10000.00|1000 0.00|1|PZA|ADMIN|SRNADMIN|10000.00|10000.00|IVA|15 .00|1500.00|IVA|15.00|1500.00|3000.00||" ; $cadena = utf8_encode($cadenaoriginal) ; $cadena=md5($cadena); $fp = fopen ("md5.txt", "w+"); fwrite($fp, $cadena); fclose($fp); exec("C:\OpenSSL\bin\openssl.exe dgst -sign aaa010101aaa_CSD_01.key.pem md5.txt | openssl enc -base64 -A > sello.txt"); exec("C:\OpenSSL\bin\openssl.exe dgst -sign aaa010101aaa_CSD_01.cer.pem md5.txt | openssl enc -base64 -A > certificado.txt"); $file = readfile("sello.txt"); ?> y en efecto me crea los siguientes archivos cmd5.txt Cadena en MD5 sello.txt Sello generado certificado.txt pero el archivo certificado.txt esta vacio es decir yo estoy realizando esto para obtener el famoso registro certificado que va en el xml, pero no se si estoy realizando la instrucción correcta ó porque ell archivo certificado.txt no me muestra nada. |
Respuesta: Facturacion electronica en México Amigo... como ves el foro esta conjelado, a sido mejor como contacto particular. tu problema lo has solucionado... y me da gusto. aqui una luz mas para quienes de verdad quieren compartir sus codigos y sus experiencias, ya somos dos, que asi como muchos han preguntado como se hace... aqui a los que han ayudado... saludoss... |
Respuesta: Facturacion electronica en México Saludos a todos. Tengo el mismo problema que softrednet, no me genera mi archivo certificado.txt, alguién sabe como le tengo que hacer?? Muchas gracias. |
Respuesta: Facturacion electronica en México Hola a todos, saben si exite algun open source para usar como base para nosotros mexicanos? Yo encontré uno de Chile les dejo el link por si lo quieren ver dobeu dobleu dobleu . open-track.cl/index.php/productos/openfacture.html |
Respuesta: Facturacion electronica en México soy nuevo en el foro, y apenas empiezo a navegar por las aguas turbulentas de la factura digital. tengos varias dudas, me gustaria me ayudaran . 1ro. donde consigo informacion de openssl, para poder enteder lo que estoy haciendo. 2da. que se necesita para poder crear una factura digital, no me queda claro lo que pide hacienda.. por sus atenciones mil gracias pd. tengan por seguro que todo lo que logre lo compartire con uds....si alguien alguna vez necesito imprimir en una impresora termica desde DOS,,yo tengo la solucion ..... |
Respuesta: Facturacion electronica en México Hola kolegas aki respondiendo algo de las facturas electronicas yo estube metido un mes en esto de las facturas electronicas, solo k lo hice en c#, si les sirve les paso la referencias para generar el sello. Usando bouncy castle saludos |
Respuesta: Facturacion electronica en México OK, colega Tienes que descargar uan dll que esta en la pagina de bouncycastle.org usando estas referencias. Leer la clave privada y el certificado en formato PEM PemReader rd = new PemReader(tr); Y con esta otra encryptas ISigner sig = SignerUtilities.GetSigner("MD5WithRSAEncryption"); Esas son las dos referncias para generar tu sello. saludos, espero que les sirva |
Respuesta: Facturacion electronica en México Gracias por tu respuesta..... Aun no he podido terminar una prueba Estoy utilizando este codigo que estare haciendo mal? Dim readFile As System.IO.TextReader = New StreamReader("C:\Factura Electronica\FIEL RENOVADA 05-05-2009\ult870701b55_0906050905.key") Dim Ocert As New PemReader(readFile) Dim o As AsymmetricCipherKeyPair = TryCast(Ocert.ReadObject(), AsymmetricCipherKeyPair) Dim sig As ISigner = SignerUtilities.GetSigner("MD5WithRSAEncryption") sig.Init(True, o.[Private]) Dim signature As Byte() = sig.GenerateSignature() Dim signatureHeader = Convert.ToBase64String(signature) readFile.Close() readFile = Nothing |
Respuesta: Facturacion electronica en México Cita:
Lo que veo es que la clave debe ser .pem, para que lo puedas leer con el pemreader utiliza esto de openssl para pasar de .key a pem @echo off color 30 C:\OpenSSL\bin\openssl.exe pkcs8 -inform DER -in C:\OpenSSL\Keys\aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out C:\OpenSSL\Keys\aaa010101aaa.key.pem echo la llave privada ha sido creada..... C:\OpenSSL\bin\openssl.exe x509 -inform DER -outform PEM -in C:\OpenSSL\Keys\aaa010101aaa_CSD_01.cer -pubkey -out C:\OpenSSL\Keys\aaa010101aaa.cer.pem echo la llave publica ha sido creada..... Esto lo tengo en un bat, checalo saludos |
que tal alguien tendra los archivos del sat es que no los puedo conseguir , los de prueba para empezar a hacer las pruebas que aqui pusieron soy de mexico y esto de la factura electronica tiene a mis jefes con los pelos de punta asi que si alguien tiene los archivos para poder mostrarles a mis jefes como es la implementacion se los agradezco gracias y para el que dice que solicitemos asesoria ahora si que cuanto es lo que cobras por asesorarme, tengo el sistema en php y mysql, xml no lo se manejar entonces cuanto es lo que cobras por ayudarme a desarrollar la implementacion. ayudaaa mis jefes estan desesperados |
Respuesta: Facturacion electronica en México Cita:
Aqui estan: sat.gob.mx/sitio_internet/e_sat/comprobantes_fiscales/15_15564.html |
Respuesta: Facturacion electronica en México que tal softrednet me puse a trabajar tu codigo ya que pude conseguir los certificados yde paso agradecer a Edg_LB analizando un poco tu codigo a mi me genero los tres archivos en el cual solamente el md5 tenia un contenido, los demas salen vacios si a alguien le sirve yo compre el libro de factura electronica de mario Perez Villeda para si a alguien le sirve bueno me despido agradeciendo a todos sus dudas porque con esas dudas que tienen voy aprendiendo |
Respuesta: Facturacion electronica en México Cita:
Listo, Por fin pude terminar el procedimiento para firma el CFD. Gracias Edg_LB por tu ayuda..... Para leer el Certificado o llave publica ¿ Con cuales refencias lo puedo hacer ? lo he hecho con openssl, pero tambien quiero practicar un poco con .net Saludos. |
Respuesta: Facturacion electronica en México Que tal, ante todo me presento y un gusto pertenecer a esta foro, la razón por la que escribo es la siguiente: he seguido con detenimiento sus valiosas aportaciones para la implementación de la facturación electronica según el anexo 20 del SAT, me han servido de mucho he estado probando utilizando los comandos directos del openssl y desde el inicio me he topado con un problema : La cadena que proporciona el SAT (la cual entiendo que debe ser convertida a UTF-8) la grabó en un archivo txt con dicho formato en el bloq de notas. ||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5|| Sin embargo al utilizar esta cadena para realizar la digestión con el metodo MD5 utilizando los comandos de openssl de la manera siguiente: openssl dgst -md5 Cadena_original.txt El resultado siempre es este: 011bd54ffdcb0b3e97e4b9bbc69c5dd9 Cuando debería ser este: 8aa2b617944427353697e694a2e35a07 Alguien podría tener una idea del porque me esta dando este resultado, he investigado arduamente y al parecer se deba a que el bloq este grabando el formato erroneamente, sin embargo me hice a la tarea de bajar aplicadores(Iconv, FileEncodingConverter,etc.) para convertir el fichero ANSI o ISO8859-1 a UTF-8 y el resultado siempre es el mismo. Por lo que he podido ver ustedes no tuvieron ese problema dado que convierten la cadena a utf8 mediante una sentencia de php. ¿Alguien tiene una idea de como podría hacerlo de otra manera ya que mi aplicación no esta en php? lo único que necesito es convertir este fichero o cadena en UTF-8 correcto. Se los agradecería bastante ya que lo demás me queda perfectamente claro y me he atorado en esta parte. Saludos y de antemano gracias |
Respuesta: Facturacion electronica en México Cita:
Amigo, yo utilizo esta forma y no he tenido ningun problema. openssl dgst -md5 -sign pkey.key.pem -out md5.txt utf8.txt |
Respuesta: Facturacion electronica en México Cita:
Ok, me da gusto, k lo hayas echo, te paso mi codigo de como lo tengo //Read Public Key TextReader trCer = new StreamReader(@PublicKey); PemReader rdCer = new PemReader(trCer); X509Certificate Cert = (X509Certificate)rdCer.ReadObject(); AsymmetricKeyParameter pk = Cert.GetPublicKey(); byte[] nSerie = Cert.SerialNumber.ToByteArray(); string nCertificado = Encoding.ASCII.GetString(nSerie); Saludos y suerte, estamos en contacto, por aki andamos echandole un ojo a esto |
Respuesta: Facturacion electronica en México Cita:
Te comento que probando el codigo me marca un error aqui AsymmetricKeyParameter pk = Cert.GetPublicKey(); Referencia a objeto no establecida a que namespace pertenece esa funcion? o que puede ser? |
Respuesta: Facturacion electronica en México Cita:
|
Respuesta: Facturacion electronica en México Cita:
utf8.txt es la cadena original. Saludos |
| La zona horaria es GMT -6. Ahora son las 07:39. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.