Imagen

DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.


CARTA PORTE V3.1

ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03


.

Pregunta: ¿Como se agrega el sello digital al archivo XML?

La libreria OpenSSL es la mas usada para generar el sello digital, independientemente del lenguaje aqui encontraras informacion de como usar la libreria
[[ FORO CERRADO DEBIDO A QUE YA LA INFORMACION YA NO ES VIGENTE ]]
mczz
Mensajes: 2
Registrado: Jue Ago 26, 2010 6:56 pm

Pregunta: ¿Como se agrega el sello digital al archivo XML?

Mensaje por mczz »

Hola que tal,
Estoy apenas iniciando en esto de la facturación electrónica. Ya he revisado en el SAT lo referente a las llaves públicas y privadas (.cer y .key) y como solicitarla. Lo que no entiendo es el proceso de cómo agregar el sello digital al archivo XML que se debe generar con los datos de la factura. Lo único que he podido hacer es instalar algunos archivos .cer que ofrecen de ejemplo en el SAT dentro de windows (no me solicitó ningun archivo .key, ni ninguna contraseña) pero ya de ahi no sé como tener acceso al sello ni como agregarlo al XML. ¿Podrian echarme la mano por favor?
Muchas gracias.
Avatar de Usuario
Dado
Mensajes: 15981
Registrado: Mar Jul 06, 2010 7:56 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por Dado »

mczz :

Para generar el sello requieres de un programa que use alguna libreria ya disponible, las que conozco son :

Bouncy Castle. Es gratuito, sirve para programacion en lenguaje C

Chilkat. Cuestan como $300 dolares. Lenguaje C y tambien tienen un "port" a Delphi

OpenSSL. Gratuito, son DLL que pueden ser invocadas desde cualquier lenguaje.

Ahora, si programas en Delphi, estas de suerte, tengo unas rutinas que te ayudan a crear el XML y generar el SELLO. Cuestan $200.00 pesos y si te interesa puedes mandarme un mail a la direccion que aparece en mi firma

Las rutinas que vendo ya estan 100% probadas y aqui en el foro "Delphi" discutimos acerca de las dudas que van surgiendo.
Última edición por Dado el Mié Sep 01, 2010 10:11 pm, editado 1 vez en total.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
mczz
Mensajes: 2
Registrado: Jue Ago 26, 2010 6:56 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por mczz »

Hola Dado
Gracias por tu información. En mi caso, yo manejo un programa de inventarios y facturación que elaboré con PHP, javascripts y Acceso a base de datos con MYSQL . Ahora necesito incorporar la facturación electrónica. Voy a probar con OpenSSL entonces para ver como funciona. Si tienes rutinas para este tipo de aplicación te lo agradecería muchisimo.
Avatar de Usuario
Dado
Mensajes: 15981
Registrado: Mar Jul 06, 2010 7:56 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por Dado »

Para PHP puedes checar esta liga, es de un cuate llamado Fernando Ortiz que trabaja para La Fabrica de Jabones la Corona.

Ya si vas teniendo dudas especificas puedes publicarla aqui y trato de ayudarte.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
antogonare
Mensajes: 1
Registrado: Jue Sep 23, 2010 9:22 am

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por antogonare »

Me inicio en esto de la facturacion electronica, tengo este codigo en PHP, pero me envia error al validar el comprobante alguien sabe donde esta el error

/* Introducimos el nombre del key provisto por hacienda y su respectivo password, al igual que el nombre del archivo de salida PEM */
shell_exec('C:\sellodigital\openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_02.key -passin pass:a0123456789 -out aaa010101aaa_CSD_02.key.pem');

/* Definimos donde esta el key en formato PEM */
$key='aaa010101aaa_CSD_02.key.pem';

/* Introducimos la cadena original provista por el SAT */
$cadenaoriginal="||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||";

/* Transformamos la cadena a UTF8 */
$cadena = utf8_encode($cadenaoriginal) ;
/* Hacemos un echo para ver la cadena en UTF8 (no es necesario pero es para ir paso por paso) */
echo '<h5>UTF8</h5>'.$cadena;
/* Hacemos un echo para ver la cadena en MD5, aquí obtenemos el mismo resultado que el SAT */
$cadena= md5($cadena);echo '<h5>MD5</h2>'.$cadena;

/* Aquí lo que hacemos es escribir un txt (md5.txt) con la digestión MD5 para usarlo en el sellado */
$fp = fopen ("md5.txt", "w+");
fwrite($fp, $cadena);fclose($fp);

/* Aquí sellamos con el MD5 con el key para obtener el sello y guardarlo en sello.txt */
exec("C:\sellodigital\openssl.exe dgst -sign $key md5.txt | C:\sellodigital\openssl.exe enc -base64 -A > sello.txt");

Cadena obtenida
al validar esta cadena me dice que el sello no es valido
cLBps3/cBUFelW/uxxNmKGvxThUva3AjvppfCxioTBlgqttkrV0yjPvRmA2592l7WQfwN1iXCQT4eyRtblXQre37a+EV4+vGuJD5Oah6ED1U/sVP2ak53nH31RhnQQeQN8NV2TtpjKQ=
Avatar de Usuario
Dado
Mensajes: 15981
Registrado: Mar Jul 06, 2010 7:56 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por Dado »

$cadenaoriginal="||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||";
Me parece que tu cadena no esta bien formada, alcanzo a distinguir hasta 3 direcciones : Col. Roma Norte Mexico, DF // Pino Suarez 23 Monterrey // Topochico 52 Monterrey

Normalmente solo debe haber 2 direcciones, la del emisor y la del receptor, tambien te falta la tasa del IVA que es obligatorio, quedaria algo asi IVA|16.0|52.5||

Tambien te falta poner la version del CFD al principio de la cadena ||2.0|

Realmente comparaste la cadena que generas contra la que te dan los validadores? porque si me parece que esta muy mal formada.

Mmmmh, me regrese a editar mi post porque de reojo vi que pusiste:
* Introducimos la cadena original provista por el SAT */
Solo por aclarar las ideas, la Cadena original NO TE LA PROPORCIONA EL SAT, te la tienes que aventar tu en tu programa

Dicho esto, espero que solo haya sido un resbalon de palabras......
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
jericu
Mensajes: 2
Registrado: Lun Sep 27, 2010 5:47 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por jericu »

una duda cuando genero el sello con el .key con el opensll y genero el xml el validador del sat me marca un error dice que no es valido

alguien sabe porque o mejor podrian poner un ejemplo :S
Avatar de Usuario
Dado
Mensajes: 15981
Registrado: Mar Jul 06, 2010 7:56 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por Dado »

jericu escribió:una duda cuando genero el sello con el .key con el opensll y genero el xml el validador del sat me marca un error dice que no es valido

alguien sabe porque o mejor podrian poner un ejemplo :S
Yo tengo un ejemplo, esta en Delphi, se lleva 3,000 lineas de codigo....... :lol:

Ya en serio, si quieres ayuda tienes que darnos TODAS las pistas, que haces? como lo haces? en que lenguaje estas programando? muestra la parte del codigo donde calculas el sello. Es imposible contestar un mensaje del tipo "Tengo un error, alguien sabe en donde?"

Saludos,
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
JonasJhy
Mensajes: 1
Registrado: Mié Oct 06, 2010 5:34 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por JonasJhy »

Hola a todos. Un comentario al respecto.

El dia de hoy, haciendo pruebas de validacion con el sitio del sat:
https://www.consulta.sat.gob.mx/SICOFI_ ... dador.html

me salio el siguiente error :

"El sello del comprobante presenta problemas:

Comprobante C:\PIA-VIO-17003.xml leido exitosamente

Validando encodingComprobante expresado en UTF-8

Realizando validación del sello con un certificado externo
Certificado usado : 30001000000100000800
Certificado reportado : 30001000000100000800

El sello no pudo ser verificado"

ACABO DE HABLAR CON EL PERSONAL DEL SAT A Atención telefónica 01 800 46 36 728.
Y LA PERSONA QUE ME ATENDIO, LUEGO DE VERIFICAR NO SE QUE COSA (PORQUE SE TARDO UN RATO)
TERMINO DICIENDO QUE SI LA PAGINA ME DECIA QUE EL ARCHIVO SE "LEYO EXITOSAMENTE"
(COMO EN MI CASO), QUE TODO ESTABA BIEN, QUE NO ME PREOCUPARA, QUE MI DOCUMENTO
ERA CORRECTO.

El punto es que he estado leyendo en foros al respecto y algunos usuario le atribuyen este error a la
falta de codificacion de los datos en formato UTF-8.

Bueno entre si "son peras o manzanas" yo voy a seguir con otras rutinas que tengo pendientes
y hacerle caso al personal del SAT que me atendio.

Claro que Al final tengo que corroborar lo que les estoy comentando

Aunque las preguntas son obias :

¿A alguno de uds les ha pasado lo mismo?
¿ y como corrigieron el "detallito"?
Francisco.zavala
Mensajes: 1
Registrado: Jue Oct 07, 2010 2:22 pm

Re: Pregunta: ¿Como se agrega el sello digital al archivo XM

Mensaje por Francisco.zavala »

Hola, bunas tardes...

Podrias poener un post de "Como sellar un CFD manualmente usando OpenSSl"
Cerrado