PWL DTE para Bsale

Descripción

PWL DTE para Bsale conecta tu tienda WooCommerce con Bsale, la plataforma líder en facturación electrónica y punto de venta en Chile. Al completarse un pedido, el plugin genera automáticamente el documento tributario correspondiente (boleta o factura electrónica) y lo envía al SII.

Funciones principales

  • Boleta electrónica automática — se genera al completar el pedido (codeSii 39)
  • Factura electrónica — el cliente marca “Necesito factura” al finalizar la compra e indica su RUT y su razón social
  • Validación de RUT en tiempo real — verificación del dígito verificador con respuesta inmediata
  • Compatible con la finalización de compra clásica y la de bloques — funciona con la finalización de compra por shortcode de WooCommerce y con la de bloques (WC 8.6+)
  • Sincronización manual de stock — actualiza el stock de WooCommerce desde Bsale con un solo clic
  • Prevención de duplicados — usa referenceId para no emitir el mismo DTE dos veces
  • Shortcode [pwl_dte] — muestra el documento tributario en la página de confirmación del pedido o en Mi cuenta
  • Modo sandbox — prueba sin afectar documentos reales ante el SII
  • Registros de actividad — registro detallado de cada DTE emitido con su estado y número de folio

Requisitos

  • WordPress 6.0 o superior
  • WooCommerce 8.0 o superior
  • PHP 8.0 o superior
  • Cuenta activa de Bsale con token de la API

Lite versus Pro

La edición gratuita (Lite) incluye boleta, factura, campos en la página de finalizar compra, sincronización manual de stock y el shortcode de DTE.

La versión Pro agrega: sincronización automática de stock mediante cron, sucursal dedicada para el stock, soporte multi-sucursal (método de envío asignación de sucursal), reintento automático de DTE fallidos, webhooks en tiempo real y notas de crédito en devoluciones.

Servicios externos

Este plugin se conecta a la API de Bsale para generar y gestionar documentos tributarios electrónicos (DTE) exigidos por la normativa tributaria chilena (SII).

Qué datos se envían y cuándo

  • Al completarse un pedido de WooCommerce, los datos del pedido (productos, cantidades, precios y datos de facturación del cliente, como el RUT y la razón social) se envían a Bsale para crear un documento tributario (boleta o factura electrónica).
  • Cuando el administrador de la tienda ejecuta la sincronización manual de stock, se envían los SKU de los productos para obtener los niveles de stock actuales desde Bsale.
  • Al probar la conexión con la API desde la pantalla de configuración, se realiza una solicitud sencilla para verificar que el token es válido. No se envían datos de los clientes.

Información del servicio

Código fuente y herramientas de compilación

Este plugin incluye recursos de producción generados en assets/ (por ejemplo assets/admin/js/admin.js y assets/public/js/checkout*.js).

El código fuente sin compilar está disponible públicamente en el repositorio del proyecto:

Para generar los recursos en local:

  1. Instalar dependencias: npm install
  2. Modo desarrollo con vigilancia de archivos: npm run dev
  3. Compilación de recursos para producción: npm run build

Instalación

  1. Sube el plugin a /wp-content/plugins/pwl-dte-for-bsale/ o instálalo desde el directorio de plugins de WordPress.
  2. Activa el plugin desde el menú Plugins de WordPress.
  3. Ve a PWL DTE Configuración e ingresa el token de la API de Bsale.
  4. Selecciona el modo (sandbox o producción) y la sucursal emisora.
  5. Haz clic en Probar conexión para comprobar que el token es válido.
  6. ¡Listo! Los DTE se generarán automáticamente al completarse los pedidos.

FAQ

¿Necesito una cuenta de Bsale?

Sí. Este plugin requiere una cuenta activa de Bsale y un token de la API con permiso para emitir documentos.

¿Funciona en modo sandbox?

Sí. En PWL DTE Configuración, pestaña Conexión, puedes activar el modo sandbox para probar sin emitir documentos reales ante el SII.

¿Qué pasa si falla la generación del DTE?

El error queda registrado en PWL DTE Registros DTE con el mensaje de error de Bsale. Puedes reintentar manualmente desde el metabox del pedido en la administración de WooCommerce.

¿Es compatible con la finalización de compra por bloques de WooCommerce?

Sí. Los campos RUT, razón social y giro funcionan tanto con la finalización de compra clásica ([woocommerce_checkout]) como con la finalización de compra por bloques (WC 8.6+).

¿Este plugin descuenta stock en Bsale?

Sí, si la opción está activada en la configuración. Puedes controlarlo mediante el parámetro dispatch en los ajustes del documento.

¿Dónde puedo ver los DTE generados?

Cada pedido de WooCommerce incluye un metabox “Bsale — Documento tributario” con el tipo de documento, folio, estado y enlaces al PDF y a la URL pública. También puedes ver el historial completo en PWL DTE Registros DTE.

¿El plugin está traducido al español?

Yes. Volunteers add and update translations on translate.wordpress.org. If your WordPress dashboard is in Spanish, the plugin’s admin screens can appear in Spanish like other plugins.

Reseñas

No hay reseñas para este plugin.

Colaboradores & Desarrolladores

“PWL DTE para Bsale” es software de código abierto. Las siguientes personas han contribuido a este plugin.

Colaboradores

“PWL DTE para Bsale” ha sido traducido en 2 idiomas. Gracias a los traductores por sus contribuciones.

Traduce “PWL DTE para Bsale” a tu idioma.

¿Interesado en el desarrollo?

Revisa el código, echa un vistazo al repositorio SVN, o suscríbete al registro de desarrollo por RSS .

Historial de cambios

2.0.10

  • Readme: simplified FAQ answer about Spanish translations (end-user wording).

2.0.9

  • Corrección: detectar WooCommerce en plugins_loaded para que el orden alfabético de carga de plugins no muestre un aviso falso de «requiere WooCommerce».
  • Corrección: cargar las traducciones de inmediato (evita un hook plugins_loaded anidado) y usar como respaldo el es_CL.mo incluido para locales en español (p. ej. es_ES) cuando no exista un archivo específico del locale.

2.0.8

  • i18n: cadenas fuente en inglés (msgid) para traductores; catálogo completo en español (Chile) (es_CL) y POT actualizado.
  • Descripción de la cabecera del plugin alineada con las expectativas de metadatos en inglés de WordPress.org.

2.0.7

  • Se eliminó la lógica automática de desactivación cruzada entre plugins para cumplir la política de activación de WordPress.org (el usuario resuelve manualmente los conflictos entre Lite y Pro).
  • Se cerraron las actualizaciones de coherencia 2.0.7 en los metadatos del plugin y la documentación de la versión.

2.0.6

  • Se corrigieron los hallazgos del escáner Plugin Check reforzando el uso de consultas preparadas en las consultas de eventos de webhook.
  • Se reemplazaron las llamadas de registro heredadas en tiempo de ejecución por la integración con el logger de WooCommerce para un registro seguro en producción.
  • Mejora de la coherencia entre versiones y compilación y de la validación de metadatos (incluidas salvaguardas de URI en la cabecera del plugin y flujo de despliegue sin incremento de versión).

2.0.5

  • Mayor cumplimiento de la revisión de WordPress.org en el escape, la carga de recursos en la administración y el comportamiento de i18n.
  • Se agregó un flujo E2E Lite ejecutable con Playwright y se actualizó la documentación de pruebas de Lite.

2.0.0

  • Plugin renombrado a PWL DTE para Bsale (slug: pwl-dte-for-bsale) para cumplir la política de marcas de WordPress.org.
  • Scripts en línea migrados a wp_add_inline_script() según las buenas prácticas de WordPress.
  • Se agregó la sección Servicios externos en el readme documentando el uso de la API de Bsale.

1.0.5

  • Versión heredada anterior al nombre actual del plugin conforme a la política de marcas.

1.0.1

  • Corrección: en la finalización de compra por bloques (WC Blocks), el campo “Necesito factura electrónica” se lee correctamente usando el prefijo _wc_other/ que WooCommerce Blocks utiliza internamente. Corrige el problema por el que siempre se generaba una boleta en lugar de una factura al usar la finalización de compra por bloques.

1.0.0

  • Primera versión pública.
  • Generación automática de boleta y factura electrónica al completar el pedido.
  • Campos RUT, razón social y giro en la finalización de compra (clásica y bloques).
  • Validación de RUT en tiempo real mediante AJAX.
  • Sincronización manual de stock desde Bsale.
  • Shortcode de DTE para mostrar el documento en el sitio público.
  • Modo sandbox para pruebas.
  • Registros de actividad con filtros.