Bsale Webhooks

El equipo de Bsale ha puesto a disposición de la comunidad de desarrolladores un conjunto de notificaciones o Webhooks, la cual permite que puedas estar informado cuando en Bsale se ejecuten determinadas acciones, como la creación de un documento, la creación de un producto, la actualización del stock etc.. Esto evitará que tengas que estar preguntando cada cierto tiempo si algo ha cambiado en Bsale. Estas notificaciones o "callback", son informadas mediante webhooks o también conocidos como "user-defined HTTP callbacks", a mediante un POST a una URL que configures para ello. De esta manera por ejemplo cada vez que en Bsale se cree un nuevo documento, te avisaremos mediante una llamada POST a la URL que definiste, con una estructura JSON que contiene la información que te permitirá obtener el documento creado.

Con los datos enviados en el estructura JSON podrás llamar a nuestra API.

Para consumir los recursos notificados, se debe usar https://api.bsale.io como url base

Convenciones utilizadas

  • Cada estructura JSON contendrá al menos:

  • cpnID => Identificador único de la instancia en la cual se generó la acción (La empresa cliente)

  • resource => Endpoint donde podrás obtener el recurso modificado.

  • resourceID => Identificador único del recurso modificado.

  • Topic => Información respecto del tipo de recurso modificado (Documentos, Productos, variantes, stock y precios)

  • acction => Acción ejecutada sobre el recurso. para ello se utiliza RESTful como estándar (POST, PUT o DELETE)

  • send => fecha en formato de entero (Unix Time)

  • Algunas notificaciones contendrán estructuras JSON con campos extras com por ejemplo "officeId", en el caso de creación de documentos.

  • Se solicita que la notificación POS sea sobre SSL.

  • Se usan sustantivos, no verbos.

  • Se utilizan dos urls base por recurso "/clients.json", "clients/1.json"

  • Siempre se usa el nombre del recurso en plural.

  • Se envía la url del recurso.

  • Manejo de versiones en la url.

  • Las fechas se trabaja como enteros, por ejemplo 1388545200 corresponde a la fecha 2014-01-01, la conversión es realizada utilizando el [Tiempo Unix].

Webhooks disponibles