¡Descubre Cómo Generar y Usar tu Certificado de Sello Digital para CFDI y Facturación Electrónica Fácilmente!post-template-default single single-post postid-46 single-format-standard et_pb_button_helper_class et_fixed_nav et_show_nav et_secondary_nav_enabled et_primary_nav_dropdown_animation_fade et_secondary_nav_dropdown_animation_fade et_header_style_left et_pb_footer_columns4 et_cover_background et_pb_gutter et_pb_gutters3 et_right_sidebar et_divi_theme et-db
771 715 4434

¡Hola! El objetivo de esta entrada es explicar cómo crear un sello digital para la facturación electrónica. Si estás listo para empezar a facturar electrónicamente, uno de los primeros pasos es obtener tu Certificado de Sello Digital (CSD).

¿Qué es el Certificado de Sello Digital (CSD)?

Un Certificado de Sello Digital o por tus siglas CSD, es un certificado necesario para generar CFDIs en servicios de facturación electrónica distintos al portal de Mis Cuentas del SAT.

El Certificado de Sello Digital (CSD) es un conjunto de archivos digitales que te permiten generar facturas electrónicas con proveedores autorizados de facturación.

Los certificados de sello digital (CSD) son utilizados para emitir facturas electrónicas.

Aunque el CSD y la E.firma (anteriormente conocida como FIEL) pueden parecer similares, tienen funciones distintas.

Lea también: Requisitos CSD SAT

Recuerda que el sello digital para facturar está integrado de tu certificado (archivo .cer), el archivo .key y la contraseña que capturaste en el programa CERTIFICA.

Requisitos Previos para Obtener el CSD

Para iniciar el proceso, necesitas una firma electrónica vigente.

Para generar tu CSD, necesitas instalar el programa Certifica del SAT.

Descarga e Instalación de Java

La aplicación CERTIFICA requiere de Java para su ejecución. A continuación, se detallan los pasos para su descarga e instalación:

  1. Busca en tu Windows "acerca de tu PC" y ve si tu equipo tiene un sistema de 32 o 64 bits.
  2. El tipo de archivo, 32 bits o 64 bits, depende del sistema operativo en que corra el equipo de cómputo donde se va a ejecutar esta aplicación.
  3. Accede a tu cuenta de Java o crea una si todavía no la tienes.
  4. Ejecuta Java dando doble clic al archivo .exe.
  5. Finalmente da clic en instalar.

Generación de la Solicitud de CSD con la Aplicación CERTIFICA

Necesitarás un programa del SAT llamado CERTIFICA el cual te permitirá generar y descargar los archivos necesarios para generar tu Certificado de Sello Digital. Estos son todos los pasos en bloque que debes seguir para generar tu solicitud de sellos en la aplicación de escritorio CERTIFICA:

Lea también: ¿Necesitas un CSD? Aprende cómo obtenerlo

  1. Descarga la aplicación CERTIFICA en la siguiente página:
  2. Descarga la versión según tu sistema.
  3. Para ejecutar CERTIFICA ve a descargas, da clic derecho en el archivo .rar y dale abrir con Java Platform SE.
  4. Una vez abierta la aplicación CERTIFICA, selecciona 'Solicitud de Certificados de Sello Digital (CSD)' (2).
  5. En la primer pantalla, presiona el botón “Seleccionar Archivo” para cargar el .CER de nuestra Firma Electrónica (eFirma antes FIEL).
  6. Selecciona el archivo .cer de tu firma electrónica (E.firma/FIEL).
  7. Click en 'Abrir'.
  8. El sistema cargará los datos de tu RFC y razón social, ingresa el nombre de tu sucursal y asigna una contraseña.
  9. En la segunda pantalla, debes agregar el nombre de la sucursal o unidad que usará este certificado de sello digital. Asigna un nombre a tu CSD, según su uso (ejemplo: FACTURACIÓN, NÓMINAS, etc.).
  10. Crea una contraseña (puede ser la misma de la firma electrónica o una nueva).
  11. Es importante mencionar que esta será la contraseña de nuestro CSD por lo que debemos apuntarla en un lugar seguro para recordarla en el futuro.
  12. Verifica que la eFirma corresponda a la empresa deseada y captura una contraseña alfanumérica.
  13. La contraseña puede ser diferente a la que usaste para la eFirma. Te sugerimos anotar esta contraseña.
  14. Click en 'Agregar'.
  15. Se pulsa sobre el botón “Agregar”, y se agrega la solicitud al recuadro de “Solicitudes realizadas”.
  16. Click en 'Siguiente'.
  17. En la siguiente pantalla deberemos mover nuestro mouse rápidamente por toda nuestra pantalla hasta que se llene la barra al 100%.
  18. Firma la solicitud con tu E.firma. Click en 'Seleccionar Archivo'.
  19. Dirígete a la opción de Seleccionar Archivo y selecciona el archivo .KEY de tu firma electrónica e.firma.
  20. Selecciona el archivo .key.
  21. Click en 'Abrir'.
  22. Ingresa la contraseña de la clave privada.
  23. Posteriormente haz click en Firmar y guardar.
  24. Al darle clic en 'Firmar y Guardar', se abrirá una ventana, la cual será para guardar la solicitud de generación de CSD.
  25. Es necesario ubicar donde queremos guardar dicho archivo, se recomienda sea en un lugar de fácil acceso ya que se necesitará más adelante.
  26. Da click en Guardar para que el archivo .KEY del Certificado de Sello Digital y el requerimiento .SDG se guarden en la carpeta que creaste en el paso anterior.
  27. El sistema te pedirá mover el mouse para generar los archivos. Guarda los archivos en una carpeta.
  28. ¡Listoooo! Se ha guardado los archivos .key y .sdg, éste último deberás enviarlo en la página CERTISAT.
  29. Se mostrará un mensaje informativo confirmando que la solicitud de CSD se ha generado con éxito.
  30. Al concluir deberás de tener el archivo .KEY del Certificado de Sello Digital (CSD) y el archivo .SDG con el que descargarás el archivo .CER del Certificado de Sello Digital (CSD) directamente en la página del SAT.
  31. A continuación da click en Terminar.

Envío de Solicitud y Descarga del Certificado .CER del CSD en el Portal CertiSAT

Una vez generada la solicitud, es necesario enviarla a través de la plataforma 'CertiSAT' para obtener el archivo .CER de tu CSD.

  1. Para acceder, abre un navegador de internet como Google Chrome, Firefox o Edge y busca 'CertiSAT'.
  2. Al pulsar el enlace de “CertiSAT WEB” abrirá el sitio del SAT para autenticarse.
  3. Ingresa con tu eFirma al siguiente sitio web:
  4. A continuación deberás ingresar con tu RFC o con tu e.firma.
  5. Al ingresar a la página, se abrirá una sección donde deberás autenticarte con tu firma electrónica (FIEL/e.firma).
  6. Al ingresar aparece una ventana con diversas opciones.
  7. Una vez dentro, se mostrará un menú con varias opciones de trámites.
  8. Selecciona la opción "envío de solicitud de sello digital".
  9. Aparece la pantalla a través de la cual se carga el archivo .sdg que se generó en el Certifica.
  10. Busca en tu computadora el archivo .sdg que previamente creaste en la aplicación CERTIFICA.
  11. Una vez cargado el archivo, haz clic en 'Enviar requerimiento' (4).
  12. Una vez enviado el requerimiento, se mostrará un mensaje indicando que la solicitud está en proceso.
  13. Aparece un número de operación, y un botón para dar “Seguimiento”.
  14. Para dar seguimiento al envío de la solicitud, accede a otro menú dentro de la misma página.
  15. En el menú 'Recuperación de Certificados', ingresa tu RFC en el campo correspondiente para buscar los certificados.
  16. ¡Listo! Una vez subido el archivo .sdg te dará un acuse de recibido y en algunos minutos podrás descargar el archivo .cer en la opción "Recuperación de certificados".
  17. Al hacer clic en el número de serie, el archivo se descargará automáticamente con un icono de diploma.
  18. Al pulsar sobre el certificado se descargará.
  19. Se sugiere guardar este archivo en la misma carpeta donde se guardó el archivo “.key” recién generado.
  20. Da click en el Número de Operación para descargar el archivo .CER del Certificado del Sello Digital.
  21. Por último da click en Acuse de recibo para guardar el archivo generado.

Nota: El Certificado de Sello Digital (CSD) puede tardar hasta 72 horas en activarse en la Lista de Contribuyentes Obligados (LCO) del SAT.

Uso del Sello Digital (CSD) en Java para la Firma de CFDI

Al programar la facturación electrónica, un desafío común es la manipulación de la llave privada. Mi primer problema fue el poder leer la llave privada que te da el SAT, ya que esta viene encriptada con un password y encontré poca información de como leerla en Java.

Lo primero que hay que hacer es generar la cadena original, la creación de esta cadena esta especificada en el anexo 20 de la Resolución Miscelánea Fiscal inciso D. Esta es una cadena formada con los datos de la factura, estos datos están separados por el carácter pipe ”|”, y se inicia y finaliza esta cadena con un doble pipe “||”.

Ya que tenemos la cadena original lo siguiente es pasarla por un algoritmo de digestión como es el MD5, y el resultado pasarlo por un algoritmo de encriptación RSA, estos dos pasos se pueden hacer en uno solo con el API de Java.

Lea también: Pasos sencillos para bajar tu sello digital del SAT

Para esto lo primero que necesitamos es la clave privada (archivo.key) que nos proporcionó el SAT junto con su password. Esta clave está codificada según el estándar PKCS8 en formato DER. Además esta clave está encriptada con un password.

Para poder desencriptarla utilizaremos la librería commons-ssl de apache.

Donde clavePrivada es un arreglo de bytes que contiene la clave privada.

Lo siguiente que hay que hacer es obtener el objeto que codificará en MD5 y RSA nuestra cadena, e inicializarlo con la clave privada este es java.security.Signature.

Donde pk es la clave privada que obtuvimos y obtenemos el arreglo de bytes con la cadena original encriptada.

A continuación se codifica en base 64 la cadena para poder obtener caracteres imprimibles con el objeto sun.misc.BASE64Encoder.

El proceso de firma en Java implica:

  • Encripción RSA con la clave privada.
  • Teniendo como resultado una cadena imprimible.

Integración y Gestión del CSD en Sistemas de Facturación Electrónica

Es fundamental subir correctamente los archivos de tu CSD a tu sistema de facturación. Los archivos que deben cargarse al sistema son los del CSD (Certificado del Sello Digital), no los de la FIEL.

Para subir los archivos del CSD (Certificado de Sello Digital) a Contadigital®, ya sea por configuración inicial o por renovación, se requiere:

  1. Ingresar a Menú>facturación>configurar CFDI>Parámetros generales>Datos generales.
  2. Dar clic en el botón editar de la parte superior derecha de la pantalla.
  3. Si es la primera ocasión que se están configurando los parámetros generales, deberás capturar los datos generales de la empresa.
  4. Subir los archivos "Certificado(.cer):" y "Llave privada(.key):".
  5. Para subir estos archivos el nombre debe tener como máximo 50 caracteres incluidas las extensiones .CER y .KEY.
  6. Las extensiones .CER y .KEY no deben ser eliminadas a fin de evitar errores.
  7. Copiar y pegar la contraseña guardada, que corresponda a los archivos del CSD que se subieron.
  8. Antes de editar el nombre de los archivos recomendamos crear una copia de ellos para evitar que se dañen en caso de borrar accidentalmente las terminaciones .CER y .KEY.

¿Contadigital® me avisa del vencimiento de mi sello?

Sí, el sistema envía un aviso por correo 30 y 7 días antes del vencimiento.

Empieza a Facturar Electrónicamente

Una vez que tengas tu CSD, regístrate en Munzen para empezar a facturar. 🎉 ¡Regístrate en Munzen y obtén 5 facturas gratis! Empieza a facturar sin costo y sin complicaciones.

tags: #sello #digital #del #cfdi #ejemplo #java