En esta entrada vamos a intentar explicar cómo opera internamente el envío de una Factura Electrónica, o cualquier otro documento electrónico de ventas, que llamaremos a partir de ahora DTE (Documento Tributario Electrónico), como los denomina el SII.
Hay alguna partes que tienen un poco de lenguaje técnico, porque es imposible evitarlo. Pero intentemos que sea comprensible. Es importante explicar todo el mecanismo, para que los usuarios sepan dónde puede estar el problema si hay demoras en los envíos/aprobaciones.
Una primera aclaración importante: el SII provee un único mecanismo de envío y comprobación de los DTE, no hay puertas traseras ni ventajas o preferencias para ningún tipo de software o proveedor. Este mecanismo es el que utiliza Laudus, o cualquier otra solución de Factura Electrónica. Toda la información técnica del SII sobre cómo implementar la Factura Electrónica es pública, y se puede descargar desde el sitio web del SII en la sección de Factura Electrónica.
El primer paso que hace Laudus antes de enviar un DTE es generar el archivo XML donde va toda la información de la Factura. El formato XML es un formato estándar internacional para el traspaso de información.
Para generar el XML hay que firmarlo, y por eso Laudus pide la contraseña para descifrar la clave privada del certificado digital. Esta contraseña sólo se pide una vez por sesión, pero se pide en todas las sesiones ya que no se almacena por seguridad.
Una vez creado el archivo del DTE, hay que pedir un identificador de seguridad al SII. Este identificador se pide mediante un servicio web (web service), que es una forma de comunicación entre computadores, entre el computador del usuario y el servidor del SII. El SII responde con un identificador, con el que se puede comenzar la sesión frente al SII.
La mayoría de la comunicación con el SII se hace a través de servicios web, y todos los software de Facturación Electrónica tienen que utilizar éstos, no hay otra forma de hacerlo. Si el servidor del SII está con mucha carga, todos deben esperar lo mismo, no hay preferencias ni maneras de hacerlo más rápido.
Por lo general, en nuestra experiencia, es que casi nunca hay demora en obtener el identificador para iniciar la sesión con el SII. Con Laudus nuestros clientes están enviando miles de DTE todos los meses desde hace 2 años, y poseemos ya una buena base de análisis.
Una vez obtenido el identificador, enviamos el DTE, o los DTE. En un sólo envío pueden ir uno o muchos DTE. Este envío se hace mediante HTTPS, es decir, la versión segura del famoso protocolo HTTP (HyperText Transfer Protocol) que se utiliza para todas las páginas web.
Por eso, el envío se hace mediante la página web del SII o simulando la misma. Dado que sería una lata obligar al usuario a enviar los DTE mediante la página, lo que hacemos en Laudus (y todos los software) es simular un navegador que envía el DTE mediante esta página. Por eso el usuario sólo ve una barra de progreso de cómo se envía el DTE, mientras que Laudus está enviando por debajo el DTE mediante HTTPS.
Este paso no suele presentar demora, ya que casi siempre se obtiene el número de envío en seguida, que es la respuesta que da el SII.
Con este número de envío ya sabemos que el SII ha recibido el/los DTE. Una vez que los recibe, analiza la estructura para ver si son válidos. El SII no analiza el contenido en sí, es decir, le da igual si uno factura 10.000 pesos o 10 millones, o si envía unos productos u otros. Sólo analiza si el DTE se ajusta al formato y estructura definido para los mismos, y si tiene toda la información obligatoria.
El último paso es saber si se aprobó el DTE. Podemos consultar en cualquier momento el «veredicto» del SII sobre el envío, es decir si acepta o rechaza el/los DTE. Si todavía no se han analizado, el SII nos dice que no hay respuesta por el momento. Esta consulta la debemos hacer mediante un servicio web, y nunca sabemos cuánto va a demorar el SII en tener la respuesta.
Este paso es el único que no suele ser inmediato. Podemos obtener la respuesta en pocos segundos, o varias horas. Y repito, opera igual para todos los proveedores de soluciones de Factura Electrónica.
Laudus, por defecto, no deja imprimir un DTE hasta que no tiene la aprobación del SII. Entonces ¿qué hacemos si estamos facturando en un mesón de atención al público? Podemos cambiar esta opción con la siguiente casilla:
y de esta forma poder imprimir el DTE sin haber recibido la confirmación del SII.
¿Cuál es la diferencia? El único problema sería que el SII rechazara el documento, pero es muy poco probable. Cualquier solución de Factura Electrónica que lleve un tiempo en el mercado ha depurado sus fallos en este sentido, y es poco probable que genere un DTE con fallos. Por eso es seguro marcar la casilla e imprimir el documento.
Prácticamente todas las soluciones del mercado que conocemos («nuestra competencia») imprimen el DTE sin necesidad de esperar al SII a aprobarlo. Por eso, puede parece que obtienen la aprobación antes, pero no es así; no hay manera de acelerar al SII, demora lo mismo para todos. Simplemente es permitir imprimir el DTE sin la aprobación.
El SII, ni nadie que tenga computadores, está exento de posibles demoras o problemas en el servicio entregado. Incluso las más grandes compañías de Internet los han tenido. Pero en general funciona como está previsto.
Alguna vez muy esporádica ha habido más retraso en obtener el número de envío al realizar el mismo. En este caso Laudus no permite imprimir el DTE hasta que no tenemos el número del envío del SII; y no queremos hacerlo porque los posibles problemas de hacerlo son mayores que en el caso de la aprobación. Y dado que muy pocas veces se ha producido el caso, no le hemos considerado importante.
Podría haber soluciones que permitan imprimir el DTE sin haber recibido el número de envío del SII, se puede hacer ya que este número no va dentro del timbre del DTE. A nosotros particularmente nos parece un poco arriesgado, ya que incluso el cliente podría intentar consultar por el DTE y obtendría un error.
En este caso podría parecer que Laudus es más lento, ya que obliga a tener el número de envío del DTE; pero como hemos comentado, los casos son muy esporádicos y no merece la pena hacer muchos cambios para este caso, y seguir adoptando una política más segura.
Si hay dudas sobre cómo funciona este modelo, esperamos sus comentarios.