Gestiono

Eventos de la plataforma

Catálogo de eventos para sincronización externa, auditoría y automatizaciones.

Gestiono registra cada cambio relevante mediante un stream de eventos. Esta guía resume los eventos disponibles para sincronización externa, auditoría y automatizaciones personalizadas.

Acceso vía API

Consulta el historial de eventos de tu organización usando el endpoint REST protegido. El response incluye paginación y filtros por tipo.

bash
curl -X GET "https://api.gestiono.app/v1/organization/events?type=invoice:created&page=1&itemsPerPage=25" \
  -H "X-Bitnation-Apikey: TU_CLAVE_PUBLICA" \
  -H "Authorization: FIRMA_CALCULADA" \
  -H "X-Bitnation-Organization-Id: TU_ORGANIZACION"
  • type acepta un identificador exacto o un grupo JSON para filtrar múltiples eventos.
  • payload puede recibirse como JSON serializado para filtrar por campos específicos.
  • itemsPerPage y page controlan la paginación del feed.

Cada evento incluye un id, la marca de tiempo createdAt y el payload descrito a continuación. Úsalos para desencadenar procesos en tus propios servicios o mantener reportes en tiempo real.

Comunicacion y conversaciones

Eventos emitidos por el modulo de chats cuando cambian los estados de las conversaciones, la asignacion de agentes o la ejecucion de herramientas automatizadas.

conversation:assigned

Se dispara cuando una conversacion cambia de responsable, ya sea hacia un usuario humano o hacia un bot configurado.

Campos de payload

  • conversationIdIdentificador interno de la conversacion en el modulo de chats.
  • userIdUsuario asignado a la conversacion. (opcional)
  • botIdIdentificador del bot asignado cuando la conversacion pasa a una automatizacion. (opcional)

Notas

  • Si userId y botId estan ausentes, la conversacion quedo sin responsable.
conversation:openconversation:closed

Indica que la conversacion se abrio nuevamente o se marco como resuelta. Puede originarse por un agente, el sistema o un bot.

Campos de payload

  • conversationIdConversacion afectada.
  • userIdUsuario que provoco el cambio de estado. (opcional)
  • bySystemBandera para cambios automaticos ejecutados por reglas del sistema. (opcional)
  • byAiAgentMarca verdadero cuando el cambio lo realizo un agente inteligente. (opcional)
  • agentResolveReasonTexto explicativo sobre por que se cerro la conversacion. (opcional)
conversation:instagram-comment

Se registra al sincronizar un comentario proveniente de Instagram dentro de una conversacion existente.

Campos de payload

  • conversationIdConversacion en la que se adjunto el comentario.
  • userIdUsuario que inicio la sincronizacion, cuando aplica. (opcional)
conversation:seen

Marcar que un usuario reviso la conversacion y consumio los mensajes pendientes.

Campos de payload

  • conversationIdConversacion visualizada.
  • userIdUsuario que leyo la conversacion.
conversation:message-deleted

Se produce cuando se elimina un mensaje especifico en cualquiera de los canales conectados.

Campos de payload

  • conversationIdConversacion que contenia el mensaje.
  • channelMessageIdIdentificador del mensaje en el canal de origen.
  • deletedByUserIdUsuario que solicito la eliminacion, si existio una accion manual. (opcional)
conversation:bot-failed-to-answer

Generado cuando el bot asignado no pudo producir una respuesta valida para la conversacion en curso.

Campos de payload

  • conversationIdConversacion en la que ocurrio el fallo.
  • botIdBot que intento responder.
  • detailsMensaje con la causa o mensaje de error que devolvio la integracion. (opcional)
conversation:bot-failed-to-send

Se emite cuando la plataforma no puede entregar un mensaje generado por el bot al canal destino.

Campos de payload

  • conversationIdConversacion en la que debia entregarse el mensaje.
  • botIdBot que origino el mensaje.
  • detailsInformacion adicional sobre el error de entrega. (opcional)
conversation:function-call

Describe la ejecucion de una herramienta o funcion externa por parte de un agente automatizado dentro de la conversacion.

Campos de payload

  • conversationIdConversacion en la que se ejecuto la herramienta.
  • botIdBot que disparo la accion.
  • typeIdentificador de la herramienta utilizada (por ejemplo, obtener inventario, crear pago).
  • toolCallIdIdempotency key que agrupa la invocacion.
  • argsParametros de entrada suministrados a la herramienta. (opcional)
  • resultRespuesta estructurada que devolvio la herramienta. (opcional)
  • submitedVerdadero cuando la accion derivo en un envio confirmado al usuario final. (opcional)

Cobros, facturacion y recurrencias

Eventos relacionados con la generacion de facturas, el ciclo de vida de las recurrencias y las acciones de cobranza.

invoice:created

Se emite al crear una factura manualmente o desde una automatizacion.

Campos de payload

  • invoiceIdIdentificador de la factura generada.
  • userIdUsuario que realizo la creacion, si fue manual. (opcional)
invoice:updated

Registra cambios relevantes en una factura existente, incluyendo modificaciones masivas desde el panel o la API.

Campos de payload

  • invoiceIdFactura modificada.
  • editorIdUsuario que aplico la edicion. (opcional)
  • oldSnapshot parcial con los valores previos.
  • newSnapshot parcial con los valores actualizados.

Notas

  • Los objetos old y new solo incluyen los campos que cambiaron.
invoice:paidinvoice:past-due

Notifica el cambio de estado financiero de una factura: pago completado o vencimiento sin cobro.

Campos de payload

  • invoiceIdFactura afectada.
invoice:voucher-printed

Emitido cuando se genera o imprime un comprobante fiscal asociado a una factura.

Campos de payload

  • invoiceIdFactura cuya representacion impresa se genero.
invoice:shared-via-email

Indicador de que la factura se envio por correo electronico a uno o varios contactos asociados.

Campos de payload

  • invoiceIdFactura compartida.
  • userIdUsuario que inicio el envio. (opcional)
  • beneficiaryIdContacto principal que recibio la comunicacion.
  • beneficiaryEmailCorreo destino usado en el envio.
  • beneficiaryNameNombre del contacto referenciado en el correo.
  • emailsSentLista completa de direcciones notificadas.
  • emailCountCantidad total de correos enviados en la operacion.
return:voucher-printed

Se genera al producir el comprobante fiscal de una devolucion o nota de credito.

Campos de payload

  • returnIdIdentificador de la devolucion documentada.
recurrency:invoice-created

Se dispara cuando una recurrencia crea automaticamente una nueva factura programada.

Campos de payload

  • recurrencyIdRecurrencia que origino la factura.
  • invoiceIdFactura emitida por la recurrencia.
recurrency:past-due

Indica que una recurrencia no genero su factura a tiempo o que quedo vencida.

Campos de payload

  • recurrencyIdRecurrencia fuera de fecha.
recurrency:failed-to-create-invoice

Se emite cuando la recurrencia encontro un error al intentar generar la factura programada.

Campos de payload

  • recurrencyIdRecurrencia que sufrio el error.
  • messageDetalle del motivo de fallo.
  • correspondingDateFecha del ciclo que no pudo cumplirse.
recurrency:updated

Refleja cambios importantes en la configuracion de una recurrencia activa.

Campos de payload

  • recurrencyIdRecurrencia modificada.
  • editorIdUsuario que aplico el cambio. (opcional)
  • oldValores anteriores relevantes para la recurrencia.
  • newValores actualizados despues de la edicion.

Contabilidad y operaciones financieras

Eventos que registran movimientos estructurales en la contabilidad, cierres de periodos y conciliaciones bancarias.

account:created

Se dispara cuando se registra una nueva cuenta contable en la organizacion.

Campos de payload

  • accountIdIdentificador de la cuenta recien creada.
  • userIdUsuario que genero la cuenta. (opcional)
chart-account:created

Registro de creacion de una cuenta dentro del plan contable (catalogo de cuentas).

Campos de payload

  • chartAccountIdId de la cuenta contable dentro del plan.
  • userIdUsuario que ejecuto la accion. (opcional)
record:created

Marca la creacion de un asiento contable o registro financiero en el libro mayor.

Campos de payload

  • recordIdRegistro contable creado.
  • editorIdUsuario responsable del alta.
record:updated

Audita modificaciones especificas sobre un registro contable ya existente.

Campos de payload

  • recordIdRegistro afectado.
  • editorIdUsuario que aprobo el cambio. (opcional)
  • oldCampos previos relevantes del registro.
  • newValores resultantes despues del ajuste.
division:balance-closeddivision:balance-close-canceled

Representa el cierre de balances por division o la reversion de dicho cierre cuando se detectan inconsistencias.

Campos de payload

  • divisionIdDivision o sucursal cuyos balances se cerraron.
  • userIdUsuario que confirmo o revirtio el cierre. (opcional)
  • detailsNotas adicionales ingresadas por el operador. (opcional)
  • balancesDetalle por cuenta: incluye accountId y los montos balance, in, out y transfered presentes en el cierre.
  • lastRecordRegisteredIdUltimo registro contable incluido en el cierre. (opcional)
account:conciliatedaccount:conciliation-canceled

Se emite al conciliar una cuenta bancaria o al revertir una conciliacion anterior.

Campos de payload

  • accountIdCuenta bancaria o contable afectada.
  • userIdUsuario que realizo la conciliacion. (opcional)
  • detailsComentarios ingresados durante la conciliacion. (opcional)
  • transactionsListado de movimientos conciliados (recordId, amount, date, description y paymentMethod).
  • totalInTotal de ingresos conciliados.
  • totalOutTotal de egresos conciliados.
  • lastConciliationDateFecha del Ultimo corte conciliado previamente. (opcional)
  • lastRecordRegisteredIdUltimo registro tomado en la conciliacion. (opcional)

Notas

  • En el evento account:conciliation-canceled los totales representan el rango que se reabrio.

Inventario y recursos

Eventos emitidos por el modulo de recursos para reflejar cambios de catalogo, movimientos de inventario y alertas de stock.

resource:created

Alta de un nuevo recurso o producto dentro del inventario.

Campos de payload

  • resourceIdIdentificador del recurso creado.
  • userIdUsuario que realizo el alta. (opcional)
resource:updated

Cambios de precio, atributos o reglas comerciales de un recurso existente.

Campos de payload

  • resourceIdRecurso modificado.
  • editorIdUsuario que aplico los cambios. (opcional)
  • oldCampos del recurso antes de la edicion.
  • newValores del recurso despues de la edicion.
resource:stock-alert

Advertencia automatica cuando un recurso cae por debajo del umbral de stock minimo.

Campos de payload

  • divisionIdDivision o almacen en el que se detecto la alerta.
  • resourceIdRecurso vigilado.
  • quantityNivel de stock actual disponible.
  • minStockAlertUmbral configurado que activo la alerta.
resource:record-created

Se genera cuando se registra un movimiento de inventario (entrada, salida, ajuste).

Campos de payload

  • resourceIdRecurso implicado en el movimiento.
  • resourceRecordIdIdentificador del movimiento de inventario.
  • userIdUsuario que lo registro. (opcional)
  • serialNumbersNúmeros de serie involucrados en el movimiento. (opcional)
  • typeTipo de movimiento: IN, OUT o TRANSFER. (opcional)
  • divisionIdDivisión o almacén donde ocurrió el movimiento. (opcional)
resource:record-updated

Se genera cuando se actualiza un registro de inventario, específicamente cuando cambian los números de serie.

Campos de payload

  • resourceIdRecurso implicado en el movimiento.
  • resourceRecordIdIdentificador del movimiento de inventario.
  • userIdUsuario que realizó la actualización. (opcional)
  • serialNumbersNúmeros de serie actuales después del cambio. (opcional)
  • typeTipo de movimiento: IN, OUT o TRANSFER. (opcional)
  • divisionIdDivisión o almacén donde ocurrió el movimiento. (opcional)
  • oldValores anteriores, incluyendo serialNumbers. (opcional)
  • newValores nuevos, incluyendo serialNumbers. (opcional)
resource-list:created

Creacion de una lista de recursos (por ejemplo, combos, kits o colecciones).

Campos de payload

  • resourceListIdLista creada.
  • nameNombre visible de la lista.
  • typeTipo de lista (ej. PACK, BUNDLE, etc.).
  • userIdUsuario creador. (opcional)
resource-list:updated

Cambios en la composicion o metadatos de una lista de recursos.

Campos de payload

  • resourceListIdLista editada.
  • userIdUsuario que aplico los cambios. (opcional)
  • oldValores previos relevantes de la lista.
  • newValores resultantes tras la edicion.
resource-list:deleted

Registro de eliminacion de una lista de recursos existente.

Campos de payload

  • resourceListIdLista eliminada.
  • nameNombre que tenia la lista al eliminarse.
  • typeTipo al que pertenecia la lista.

Gestion de tareas y productividad

Eventos emitidos por los tableros de tareas que permiten auditar progresos y recordatorios.

task:created

Se dispara cuando se crea una nueva tarea dentro de un tablero.

Campos de payload

  • taskIdIdentificador de la tarea creada.
  • creatorIdUsuario que origino la tarea. (opcional)
  • columnIdColumna inicial en la que se coloco la tarea. (opcional)
task:updated

Audita cambios de estado, asignaciones o campos personalizados de una tarea existente.

Campos de payload

  • taskIdTarea afectada.
  • editorIdUsuario que realizo las modificaciones. (opcional)
  • columnIdColumna resultante luego del cambio. (opcional)
  • oldValores previos relevantes.
  • newValores actualizados.
task-schedule:proximity-alert

Notificacion programada antes de la fecha limite o recordatorio configurado de una tarea.

Campos de payload

  • scheduleIdProgramacion que genero la alerta.
  • taskIdTarea relacionada.
  • intervalAnticipacion con la que se disparo (1_day, 3_hours, 1_hour, 30_minutes).
  • scheduledStartFecha y hora objetivo del recordatorio.
  • titleTitulo opcional mostrado en la alerta. (opcional)
  • descriptionDetalle adicional presentado a los responsables. (opcional)
  • locationUbicacion asociada, cuando aplica. (opcional)
  • urlEnlace de referencia para la reunion o recurso externo. (opcional)

Automatizaciones y flujos

Eventos generados por el motor de automatizaciones para monitorear ejecuciones, fallos y validaciones de condiciones.

automation:run

Se emite cuando una automatizacion comienza a ejecutarse para un evento o programacion especifica.

Campos de payload

  • automationIdAutomatizacion que se esta ejecutando.
  • automationThreadIdIdentificador de la corrida especifica.
  • eventIdEvent ID que detono la ejecucion.
  • scheduleIdIdentificador del schedule asociado, cuando aplica.
automation:failed

Registra fallos en la ejecucion de una automatizacion, incluyendo el mensaje de error devuelto.

Campos de payload

  • automationIdAutomatizacion que fallo.
  • automationThreadIdEjecucion especifica que arrojo el error.
  • eventIdEvento que disparo la automatizacion.
  • errorMensaje o stacktrace resumido del error.

Notas

  • Utiliza este evento para alertar a tu equipo cuando una automatizacion deja de funcionar.
automation:condition-failed

Se genera cuando una automatizacion no cumple las condiciones configuradas y aborta su ejecucion.

Campos de payload

  • automationIdAutomatizacion evaluada.
  • automationThreadIdIdentificador de la evaluacion fallida.
  • eventIdEvento que estaba disparando la automatizacion.
  • conditionsArreglo con las condiciones evaluadas.
  • conditionObjectContexto completo utilizado para evaluar las condiciones.

Colaboracion, comentarios y formularios

Eventos colaborativos que documentan interacciones dentro de registros, formularios y comentarios de los usuarios.

comment:created

Se dispara cada vez que un usuario agrega un comentario en cualquier entidad soportada.

Campos de payload

  • userIdAutor del comentario.
  • messageContenido del comentario (admite menciones @id).
  • invoiceIdFactura relacionada, si corresponde. (opcional)
  • divisionIdDivision referenciada. (opcional)
  • beneficiaryIdContacto o cliente al que refiere el comentario. (opcional)
  • recurrencyIdRecurrencia asociada. (opcional)
  • resourceIdRecurso o producto mencionado. (opcional)
  • taskIdTarea asociada al comentario. (opcional)
  • productionIdProceso de produccion referenciado. (opcional)
  • recordIdRegistro contable asociado. (opcional)
  • accountIdCuenta relacionada. (opcional)

Notas

  • Usa los ids opcionales para relacionar el comentario con la entidad adecuada en tu sistema.
form:submitted

Se emite al recibir una respuesta completa de un formulario externo o interno.

Campos de payload

  • formIdFormulario que recibio la respuesta.
  • formSubmissionIdIdentificador Unico de la respuesta almacenada.
  • userIdUsuario autenticado que envio el formulario.

Clientes y contactos

Eventos emitidos por el modulo de CRM y gestion de contactos.

beneficiary:created

Se dispara cuando se crea un nuevo contacto o beneficiario en la organizacion.

Campos de payload

  • beneficiaryIdIdentificador del contacto creado.
  • userIdUsuario que registro el contacto.
contact:date

Se dispara cuando la fecha almacenada en un dato de contacto de tipo fecha coincide con el dia y mes actuales.

Campos de payload

  • contactDataIdIdentificador del dato de contacto.
  • beneficiaryIdIdentificador del contacto o beneficiario.
  • contactTypeTipo del dato de contacto (ej: "cumpleaños", "aniversario", etc.).
  • dateFecha almacenada en formato YYYY-MM-DD.
  • dayDia del mes (1-31).
  • monthMes (1-12).

Numerales y control fiscal

Eventos utilizados para auditar la creacion y actualizacion de rangos de comprobantes fiscales (NCF).

numerals:created

Alta de un nuevo rango de comprobantes para facturacion.

Campos de payload

  • numeralsIdIdentificador interno del bloque de comprobantes.
  • typeTipo de comprobante (ej. B01, B02, etc.).
  • startNumero inicial del rango.
  • endNumero final del rango.
  • userIdUsuario que cargo el rango. (opcional)
numerals:updated

Documenta ajustes o correcciones sobre un rango de comprobantes existente.

Campos de payload

  • numeralsIdBloque de comprobantes actualizado.
  • typeTipo de comprobante afectado.
  • startNuevo inicio del rango.
  • endNuevo final del rango.
  • userIdUsuario que realizo la modificacion. (opcional)

Configuracion y gobierno de la plataforma

Eventos transversales que auditan cambios en configuraciones organizacionales o preferencias individuales.

settings:organization:updated

Audita cambios en secciones de configuracion general de la organizacion.

Campos de payload

  • sectionSeccion modificada (ej. accounting, resources, tasks).
  • oldValores anteriores de la configuracion.
  • newValores actualizados.
  • userIdUsuario que realizo la modificacion. (opcional)
settings:user:updated

Refleja cambios de preferencias o permisos en la configuracion personal de un usuario.

Campos de payload

  • targetUserIdUsuario impactado por el cambio.
  • sectionSeccion especifica editada dentro de la configuracion personal.
  • oldValores anteriores de la preferencia.
  • newValores resultantes tras la edicion.
  • userIdUsuario que ejecuto el cambio (puede ser un administrador). (opcional)

Errores operativos

Eventos tecnicos enviados para alertar sobre fallos en la experiencia del usuario o integraciones internas.

error

Captura de errores de interfaz o componentes criticos dentro de la plataforma.

Campos de payload

  • componentNombre del componente o modulo donde ocurrio el error.
  • errorObjeto de error serializado con el mensaje y stacktrace.

Notas

  • Puedes subscribirte a este evento para monitorear regresiones en tiempo real.