Blog

API Bsale: qué permite y cómo conectarla con tu tienda

Qué es la API de Bsale, cómo obtener el access_token, qué recursos expone (productos, stock, precios, documentos), sus límites, webhooks e integraciones listas.

Si usas Bsale para facturar y controlar inventario, tarde o temprano quieres que tu tienda online o tu marketplace lean el mismo stock y los mismos precios. Hay dos caminos: una integración que Bsale ya ofrece o un desarrollo propio sobre su API. Este artículo explica qué trae la API, cómo se obtiene el acceso y cuándo conviene cada opción.

Qué es la API de Bsale

Bsale publica su API en docs.bsale.dev. Según su documentación, es un conjunto de métodos “orientados a facilitar la integración, desde sistemas externos hacia Bsale”. Sirve para obtener información o enviarla: generar documentos tributarios, leer los documentos emitidos, productos, clientes y más.

Es una API REST sobre HTTPS con estas convenciones, todas tomadas de la guía de primeros pasos:

  • URL base https://api.bsale.io, con la versión en la ruta (por ejemplo /v1/products.json).
  • Métodos estándar: GET para leer, POST para crear, PUT para modificar y DELETE para eliminar.
  • Respuestas en JSON, con atributos en camelCase y mensajes en inglés.
  • Fechas como enteros en tiempo Unix.
  • Respuestas paginadas y un parámetro expand para traer recursos relacionados en una sola petición.

La documentación tiene versiones para Chile, Perú y México. Lo que sigue se basa en la versión de Chile.

Cómo obtener el access_token

Toda petición se autentica con un access_token que va en la cabecera. La documentación aclara que ese token es único para cada usuario. Hay tres formas de conseguirlo según la etapa en que estés.

Para pruebas

Para un ambiente de pruebas (sandbox), Bsale indica que basta con crear una cuenta para generar el token.

Para producción

La página de accesos en producción describe dos vías:

  1. Pedirlo por correo a ayuda@bsale.app. Es lo habitual cuando conectas tu propia empresa.
  2. OAuth 2.0, pensado para integradores que quieren que sus clientes conecten las dos aplicaciones sin pedir un token por correo. El usuario entra a Bsale con sus credenciales, autoriza la aplicación y tu sistema recibe un código que cambia por el token. Para usarlo debes registrarte y obtener un app_id completando un formulario que Bsale enlaza en esa misma página.

Cómo se envía

Este es el ejemplo en curl que entrega la documentación:

curl -i -H "access_token: tutokendeacceso" -X GET https://api.bsale.io/v1/clients.json

Si el token es incorrecto, la API responde con el código 401.

Recursos principales para una tienda

Bsale documenta muchos recursos. Estos son los que importan para conectar un canal de venta.

Recurso Endpoint base Qué permite
Productos /v1/products.json Listar, crear y modificar productos, y ver sus variantes e impuestos
Variantes /v1/variants.json Listar, crear y modificar variantes, con filtros por código y producto
Stock /v1/stocks.json Leer cantidad real, reservada y disponible por variante y sucursal
Listas de precios /v1/price_lists.json Leer las listas y modificar el valor de cada variante
Sucursales /v1/offices.json Listar, crear y modificar sucursales
Documentos /v1/documents.json Emitir y consultar boletas, facturas y otros documentos
Clientes /v1/clients.json Listar y buscar clientes por RUT, con contactos y direcciones

Algunos detalles que conviene saber antes de diseñar la integración:

  • Producto y variante son cosas distintas. El producto agrupa y la variante es la unidad que tiene código, stock y precio. Tu tienda debería mapear cada SKU con una variante de Bsale.
  • El stock se lee por variante y sucursal. Cada registro trae quantity (cantidad real), quantityReserved (reservada en borradores o documentos pendientes de despacho) y quantityAvailable. Se puede filtrar por sucursal con officeid. Para mover stock, la API ofrece recepciones (/v1/stocks/receptions.json) y consumos (/v1/stocks/consumptions.json).
  • Las listas de precios no se crean por API. La documentación dice que no existe un POST de lista de precios, porque todas comparten el total de productos. Solo se editan los valores de cada variante con PUT sobre el detalle de la lista.
  • Los documentos tributarios se emiten por API. Un POST a /v1/documents.json con el tipo de documento, la sucursal y el detalle genera, por ejemplo, una boleta electrónica. La respuesta incluye enlaces al PDF y al XML.
  • Hay recursos de tienda en línea. Si usas el ecommerce de Bsale, el recurso de pedidos web permite listar, editar y generar pedidos asociados a ese panel.

Límites de uso

La API pagina las respuestas. En los recursos de la tabla, limit vale 25 por defecto y el máximo permitido es 50 registros por página, así que leer un catálogo completo implica recorrer varias páginas.

Sobre el límite de peticiones, la documentación no es del todo consistente. La página de errores dice que el código 429 aparece al superar 3.000 peticiones cada 300 segundos. El registro de cambios anota en octubre de 2025 un “ajuste rate-limit 8 requests por segundo”. Si tu integración hace muchas llamadas, diseña para el valor más bajo y maneja el 429 con reintentos.

Otros códigos útiles de la misma página: 402 indica una instancia bloqueada por no pago y 403 que el token no tiene autorización para ese recurso.

Webhooks

Bsale tiene webhooks: avisos que llegan como un POST a una URL que tú defines cada vez que ocurre algo en Bsale. Así evitas consultar cada pocos minutos si algo cambió.

La notificación no trae el dato completo. Trae el identificador de la empresa (cpnId), el recurso modificado, su id, el tema (topic), la acción y la fecha. Con eso llamas a la API para leer el detalle.

Los temas base son documento, stock, producto, variante y precio. Hay además notificaciones de tienda en línea (producto web, colección, venta online) y otras como pagos y documentos de compra. Dos detalles relevantes para inventario:

  • La notificación de stock solo informa actualizaciones (acción PUT) e incluye la sucursal.
  • Al leer un documento notificado puedes obtener el stock disponible de cada variante incluida, lo que Bsale destaca como útil para mantener inventarios externos al día.

Los webhooks no se activan solos. Hay que escribir a ayuda@bsale.app con la URL y el RUT o cpnId de la empresa, e indicar qué temas quieres recibir.

Integraciones que Bsale ya trae

Antes de programar, revisa la página de integraciones de Bsale. Al 8 de noviembre de 2026 lista 41 integraciones. En canales de venta aparecen ocho: Mercado Libre, Falabella, Ripley, Paris, Walmart, Google Shopping, Tienda Nube y Syncventory (para Uber Eats). La categoría está marcada con costo adicional.

También hay integraciones de envíos (Blue Express, Chilexpress, FedEx, Starken, Shipit y otras), pagos online para la tienda de Bsale (Webpay, Khipu, Flow, PayPal, Mercado Pago, Pago Fácil) y contabilidad.

Shopify, WooCommerce, VTEX y Magento no aparecen en ese listado. Para esos casos, la misma página remite a integradores externos que desarrollan conexiones a medida, y aclara que su costo se paga directamente al integrador, aparte del servicio de Bsale.

API o integración lista: cuándo conviene cada una

Usa una integración de Bsale si tu canal está en su listado y lo que necesitas es lo que ofrece: stock sincronizado y, en algunos marketplaces, facturación. Es el camino más corto y lo mantiene Bsale.

Usa la API (o un conector que la use) cuando:

  • Tu tienda está en una plataforma que no figura en el listado, como WooCommerce, Shopify, VTEX o Magento.
  • Necesitas reglas propias: publicar stock de una sola sucursal, usar una lista de precios por canal o decidir qué SKU van a cada tienda.
  • Quieres que los pedidos de la tienda generen documentos en Bsale con tu propia lógica.

Si desarrollas por tu cuenta, considera el trabajo que no se ve en la primera versión: paginar catálogos de 50 en 50, manejar el límite de peticiones, pedir la activación de webhooks, mapear variantes y mantener todo cuando Bsale cambie la API. Su registro de cambios muestra actualizaciones casi todos los meses.

Si ya pasaste por esto con otro ERP, el patrón es el mismo que describimos en el artículo sobre la API de Softland e integración con tiendas.

Dónde entra ERPSync

ERPSync conecta el ERP con tiendas y marketplaces: WooCommerce, Shopify, VTEX, Magento, PrestaShop, Jumpseller, Mercado Libre, Falabella, Ripley, Paris y Walmart. Nuestra especialidad es Softland, y también trabajamos con Bsale previa revisión técnica.

Cuesta 0,80 UF al mes por integración, el mismo precio con cualquier ERP y sin límite de pedidos. Puede haber un costo inicial que se cotiza después de revisar tu caso, y cada contratación pasa por una evaluación. Puedes probarlo 14 días sin tarjeta.

Preguntas frecuentes

¿La API de Bsale tiene costo?

La documentación de la API no publica un costo por usarla. Sí indica que una instancia bloqueada por no pago recibe el error 402, así que el acceso depende de tener la cuenta de Bsale al día.

¿Cómo pido el token de producción?

Escribiendo a ayuda@bsale.app. Si eres integrador y quieres que tus clientes conecten tu aplicación por su cuenta, Bsale ofrece OAuth 2.0 tras registrar tu aplicación.

¿Puedo leer el stock de una sola sucursal?

Sí. El recurso de stock trae la cantidad por variante y sucursal, y acepta el filtro officeid.

¿Bsale avisa cuando cambia el stock?

Sí, con el webhook de stock, que hay que solicitar a ayuda@bsale.app indicando la URL y la empresa.

¿Bsale tiene integración con WooCommerce o Shopify?

No aparecen en su página de integraciones al 8 de noviembre de 2026. Se conectan con la API, mediante un integrador externo o con un conector de terceros.

¿Cuántos registros entrega cada petición?

25 por defecto y hasta 50 con el parámetro limit.

Fuentes

Consultadas el 8 de noviembre de 2026.

Escrito por el equipo de ERPSync, especialistas en integraciones con Softland. Quiénes somos

Conecta tu ERP y deja de digitar pedidos

Revisamos tu instalación gratis y te respondemos en menos de un día hábil.