Esta es la tercera versión de este año 2020. Se han hecho varias mejoras, algunas visuales y por fin tenemos una versión numerada de la Biblioteca de LibreDTE en PHP, la versión 20.7.0
Esta versión incluye 5 mejoras importantes más un bonus:
- Nuevo diseño de la sección de documentos recibidos ¡al fin!
- Se pueden obtener precios netos con decimales a partir del precio bruto.
- Acceso a editar el JSON de un DTE temporal.
- Eliminación de boletas.
- Mensaje “Cargando…”. Puede no parecer importante, pero lo es.
- Publicación de
Preguntas Frecuentas de LibreDTE.
Además, se hicieron muchos cambios pequeños en diseño, mejora de procesos automáticos, validaciones, nuevos triggers y mucho más.
El listado completo de los cambios más relevantes es:
- Biblioteca:
- Es posible cargar en EnvioDte un XML con tag SetDTE.
- Se muestra el detalle del item en papel continuo de 75 y 80mm.
- Se mejoraron las glosas descriptivas de ILA.
- Se corrigió un error grave en el detalle de los items cuando se usaba el carácter “<“. Ya que dañaba el resto del PDF.
- Se agregó el dato del descuento por item al formato de papel continuo.
- Se quitan, con proceso de normalización, los datos de transporte en boletas.
- Aplicación web:
- Se quitó la dependencia de api.default.token introducida por error en la versión 20.04. Ya no es necesaria esa configuración.
- Datos de la firma se pueden obtener aplanados, útil para usar en Postman con la documentación de
api.libredte.cl - Se corrigió proceso que genera los datos de contacto para el proceso de intercambio en la certificación. Generaba problemas con nombres muy largos.
- Se corrigió el procedimiento almacenado de detalle de items cuando no hay XML del DTE. Esto ocurre por ejemplo con un DTE emitido que viene de Sincronización con el portal MIPYME.
- Se corrigió un error grave en el proceso de intercambio automático de documentos emitidos que enviaba los documentos en base a su fecha de emisión del DTE. Esto evitaba que se enviaran de manera automática documentos que eran emitidos con fecha hacia atrás. Ahora se usa la fecha de creación del DTE en LibreDTE.
- Ahora se muestran los errores que ocurrieron al procesar los correos de intercambio.
- Se agregó servicio web para obtener los datos de un DTE temporal (borrador / cotización).
- Los RCOF rechazados ahora incluyen los casos con código 106.
- Ahora cualquier administrador de una empresa podrá acceder a la pestaña “Avanzada” de un DTE temporal. Donde podrá editar el JSON directamente (opción peligrosa, pero muy útil).
- Se agregó el usuario real que creó el DTE, tanto temporal como real, en la pestaña avanzado.
- El reporte de documentos emitidos ahora incluye el indicador de traslado.
- Se agregó opción para copiar fácilmente los enlaces de PDF tanto en documentos temporales como en reales.
- Se agregó opción para enviar fácilmente el PDF de un documento temporal o real vía WhatsApp.
- Se normaliza con el nuevo método, igual a DTE emitidos en versión 20.04, la obtención del PDF o código ESCPOS de un DTE temporal.
- Se crea servicio web para obtener el código ESCPOS de un DTE temporal.
- Se diseño de 0 la sección de documentos recibidos. Ahora cada documento podrá ser “visto”, igual que como se hace con un DTE real.
- Desde ahora las empresas que son sólo exentas tendrán por defecto en la emisión los items exentos.
- Se agregó opción para que administradores de la empresa puedan borrar boletas. Por defecto viene esta opción desactivada y se puede habilitar para borrar boletas del día, del mes, de los últimos 2 meses o cualquiera. Esta opción permite ahorrar la emisión de nota de crédito.
- En muchas acciones que implican que LibreDTE “se demore” por estar haciendo algún proceso se agregó un mensaje central del estilo “Cargando…”. Con esto, el usuario ahora sabrá que LibreDTE está procesando su requerimiento.
- Se agregó trigger para obtener datos extras en el servicio web de información de un item. Además el mismo trigger permite hacer algunas validaciones mediante excepciones.
- Se agregaron 2 triggers para obtener al proveedor de correo SMTP (salida) e IMAP (entrada).
- Se corrigió un error menor cuando se solicitaba la versión comprimida de un PDF. Se entregaba comprimida, pero con extensión “.pdf” lo cual, normalmente, impedía abrir el archivo.
- Se adjunta siempre el enlace al PDF en el correo por defecto que se envía con cotizaciones o con documentos reales.
- Se agrega la variable “rut” a la plantilla de correo del envío de documento.
- Se mejoró la consulta de búsqueda por DTE y folio en la bandeja de intercambio. Habían casos que no eran mostrados como por ejemplo si se buscaba por folio 123 pero en realidad era 000123.
- Se mejoraron reglas de limpieza de la bandeja de intercambio.
- Se agregó servicio web para obtener el resumen de los documentos emitidos en el registro de ventas del SII.
- La emisión masiva ahora permite especificar el nombre del archivo PDF que se generará. Se pueden usar variables además para ciertos datos en el nombre del archivo.
- Se puede especificar vía la URL la cantidad de meses a sincronizar en los documentos pendientes en el registro de compras.
- Se permite a los contribuyentes elegir cuántos decimales quieren usar cuando tengan precios brutos y se deba calcular el neto.
- Es posible cargar un XML en la bandeja de intercambio de manera manual. Esto es útil para encontrar errores en los XML que se reciben por correo y saber por qué no se cargaron automáticamente al actualizar la bandeja de intercambio.
- Un administrador de la empresa ahora puede eliminar los RCOF.
Recuerden actualizar el framework SowerPHP.
Si tienen dudas pueden escribir al foro o en el Grupo de Facebook. Si son clientes con soporte oficial de SASCO SpA pueden abrir un ticket de soporte.
Anexo: nueva página de documento recibido
Se creó una nueva sección de documentos recibidos, con una vista similar a la de un DTE emitido. Ahora se tendrán las siguientes pestañas:
- Datos básicos: permite bajar PDF, XML y JSON. Así como ver el estado del DTE recibido en el SII.
- PDF: permite bajar el PDF del DTE recibido en cualquiera de los formatos soportados.
- Proceso intercambio: entrega los datos asociados al proceso de intercambio del DTE recibido. Permite ver los datos en el Registro de Compras o bien ingresar una acción directamente en el SII vía LibreDTE.
- Referencias: muestras las referencias que el DTE recibido tiene.
- Avanzado: permite eliminar o modificar el documento. Además se muestran datos del documento, igual a como se hace con un DTE real
Hasta la versión anterior, cuando uno tenía un producto codificado en LibreDTE y obtenía su precio en la pantalla de emisión, este precio se entregaba sin decimales.
Entonces, por ejemplo si teníamos el producto P1 con precio 200 bruto al ser consultado en la pantalla de emisión el precio neto era: 168.
Si agregamos ese precio y emitimos una boleta todo ok ¿cierto?
- Item: P1
- Precio neto: 168
- Cantidad: 1
- Total con IVA: 200
Ok, pero ¿y si nos compran 100 de ese producto?
- Item: P1
- Precio neto: 168
- Cantidad: 100
- Total con IVA: 19.992
Para eso está la nueva opción de “decimales”, con esta opción podemos elegir cuántos decimales queremos usar al obtener el precio neto del item. De esta forma, ya no serán 168 pesos el precio, sino, por ejemplo, 168.0672 pesos. El resto de la matemática se las dejo.
Anexo: Edición del JSON de un DTE temporal
Esta es una opción que existe hace mucho tiempo, ¿años quizás?. Es una pestaña “Avanzado” en la página del DTE temporal. Esta pestaña permite a un administrador de la empresa editar el JSON.
Antiguamente, sólo estaba disponible para usuarios de soporte. Pero ahora cualquier administrador de una empresa tendrá acceso.
¡Es una opción peligrosa! Pero puede resultar muy útil en algunos casos. Por ejemplo, un cliente nos dijo “necesito que en el teléfono vaya un nombre”. Nosotros usamos el campo Contacto para el teléfono del contribuyente. Pero en estricto rigor ahí puede ir cualquier texto. Con esta edición se puede cambiar.
Lo que NO hay que hacer, es cambiar montos, o cantidad de items. O cualquier otra cosa que afecte al DTE de manera negativa.
Por ahora la opción está activada sólo a los administradores. Se podría modificar en el futuro el comportamiento para que se deba habilitar o algo más.Anexo: Eliminación de Boletas
Si queremos anular una boleta, la opción correcta es emitir una nota de crédito. Pero debido a que las boletas no se envían (en la actualidad) al SII, uno podría:
- Eliminar la boleta.
- Reenviar el RCOF.
Eso es justamente lo que permite esta opción.
Tu estarás pensando “pero el SII exigirá el envío de las boletas desde septiembre”, si, lo tengo considerado 😉
Anexo: Mensaje cargando
Esto es algo meramente estético, pero que podría calmar los nervios de los usuarios más “apurados”. Antes, cuando LibreDTE se quedaba “pegado” por estar haciendo un proceso que toma más tiempo que la simple carga de la página un usuario podía pensar que la página no estaba haciendo nada. Cuando en realidad estaba procesando la consulta.
El mensaje se ve así:Este es el caso del mensaje al actualizar la bandeja de intercambio. A propósito, generalmente es mala idea actualizar 3 meses. Lo hice para tomar la captura de pantalla con calma.
Puede parecer banal el cambio. Pero acá un caso relevante:
Cuando se genera un DTE real, este se envía inmediatamente al SII. Esto significa una demora en la carga de la página. Detectamos que algunos usuarios presionaban más de una vez el botón “Generar DTE” pensando que LibreDTE estaba pegado sin trabajar. El resultado: DTE repetido. O sea, se enviaba 2 veces el DTE y, peor aun, LibreDTE guardaba el Track ID del segundo envío que era rechazado.
Ahora, este mensaje de “Generando DTE”, no sólo le dirá al usuario que se está haciendo algo, sino que además impedirá que presione el botón nuevamente.
Anexo: Preguntas Frecuentes de LibreDTE
El soporte oficial de LibreDTE es muy bueno, lo sabemos. Y por eso, queremos que ustedes también tengan acceso a ese soporte.
Se publicaronAdemás, se aprovecho de usar estas preguntas frecuentes para eliminar un portal antiguo y que costaba mucho mantener actualizado: el wiki ¡al fin desapareció! Bueno, no desapareció completo, sigue existiendo como referencia por si alguien tiene un enlace apuntando aun al wiki pueda saber donde encontrar la nueva información: en el FAQ.
En las preguntas frecuentes encontrarán de todo, desde temas técnicos, certificación, arquitectura, hasta los problemas diarios que resolvemos por soporte, como por ejemplo vencimiento de folios.
También actualizamos una sección muy querida por nosotros del wiki y que ahora está en el FAQ, que es el tutorial de configuración de correos.
¿Cuál es la mejor parte del FAQ? que lo estaremos actualizando muy seguido. Lo vamos mejorando, cuando un cliente nos da retroalimentación de una respuesta la volvemos a revisar y redactamos mejor si corresponde. O por ejemplo, si hay algo nuevo, que no esté documentado lo agregamos. Es una muy buena fuente para resolver problemas comunes.
LibreDTE versión 20.07