REDA One Centro de ayuda
ES
Idioma
English EN Español ES Português PT Italiano próximamente Français FR Deutsch próximamente العربية próximamente
reda.one ↗
Inicio / REDA Financials AI / API e integración / APIs de Salesforce / Streaming API (eventos en tiempo real)

Streaming API (eventos en tiempo real)

¿Quieres que tu almacén de datos, tu middleware o tu sistema de notificaciones se enteren en el instante en que se contabiliza una factura? Los eventos estándar de Salesforce — Change Data Capture y los eventos de plataforma — funcionan en los objetos de REDA Financials igual que en cualquier objeto personalizado. El paquete no publica ningún bus de eventos propietario, lo cual es una buena noticia: configuras mecanismos estándar que ya gobiernas, sin necesidad de construir un consumidor específico del proveedor.

Change Data Capture en objetos contables

Habilita CDC para los objetos que te interesan

Configuración → Change Data Capture → selecciona los objetos refin__ (Factura de venta, Factura de compra, Recibo de caja, Transacción contable…). Cada uno obtiene un canal estándar de eventos de cambio.

Suscríbete desde tu consumidor

Suscriptores CometD/gRPC, o triggers de Flujo/Apex sobre los eventos de cambio — patrones estándar. Los eventos llevan los campos modificados y el tipo de cambio.

Filtra las transiciones que importan

El momento contablemente significativo suele ser el cambio de estado: refin__Status__c llegando a 'Contabilizado' (el documento entró a los libros) o saliendo de ese estado (descontabilizado/anulado). Para feeds a nivel de libro mayor, CDC en refin__Accounting_Transaction__c transmite las contabilizaciones reales.

Patrones de consumidor probados

  • Sincronización con el almacén de datos: CDC en Transacción contable → réplica de libro mayor de solo anexado, siempre al día.
  • Notificaciones: un Flujo activado por registro en Factura de venta (se dispara igual con cambios de API y de la interfaz) que publica en tu herramienta de chat cuando se contabilizan facturas grandes.
  • Sistemas posteriores: archivos de pago, sistemas de propiedades — dispara con la transición a contabilizado en lugar de sondear.
Diseña para el ciclo de vida contable. Los documentos se pueden descontabilizar y volver a contabilizar — tu consumidor verá el mismo registro entrar en 'Contabilizado' más de una vez, y salir de ese estado. Basa la clave en el Id del registro + las transiciones de estado (no en "visto una vez"), y trata la anulación como la señal de cancelación. El flujo del libro mayor (Transacciones contables creadas/eliminadas) es intrínsecamente correcto si prefieres reflejar los efectos en lugar de los documentos.

Qué viene incluido y qué habilitas tú

Mecanismo¿Viene incluido?Notas
Eventos de plataforma (__e)Ninguno viene incluidoEl paquete no publica ningún evento personalizado — no busques canales de REDA en el selector de eventos
Change Data CaptureNada viene preactivadoTú seleccionas los objetos refin__ en Configuración; los canales siguen la nomenclatura estándar — refin__Sales_Invoice__ChangeEvent y similares
Webhooks / HTTP salienteNinguno viene incluidoLas únicas llamadas salientes del paquete son sus dos integraciones de servicio propias (IA, tipos de cambio); la entrega de eventos a tus sistemas es algo que tú configuras mediante mecanismos estándar
Flujos activados por registro / triggersLos construyes túSe disparan igual con cambios de API y de la interfaz — a menudo el consumidor de "streaming" más simple para una sola reacción del lado del org
Compruébalo primero en un sandbox. Como nada relacionado con eventos viene empaquetado, el comportamiento de CDC en los objetos refin__ — asignaciones, volumen de eventos por ráfagas de contabilización, contenido a nivel de campo — es una propiedad de la configuración y la edición de tu org. Habilita, suscríbete y contabiliza un documento de prueba de principio a fin antes de diseñar el consumidor de producción basándote en suposiciones.

Cómo elegir tu señal

NecesidadMejor mecanismoPor qué
Un sistema externo refleja los cambios contables de forma continuaSuscripción a CDC (CometD/gRPC)Ordenado, reproducible, entregado fuera de la transacción — pensado para consumidores externos
Una sola reacción dentro del org ante una contabilizaciónFlujo activado por registro en el cambio de estadoSin infraestructura de suscriptor; la condición que dispara el flujo es el filtro
Cargas nocturnas al almacén de datos, sin necesidad de tiempo realSondeo programado por consulta REST/BulkLo más simple de operar; el libro mayor es la verdad consultable — el streaming es una optimización, no un requisito
Réplica a nivel de libro mayor (cada débito y crédito)CDC en refin__Accounting_Transaction__cRefleja los efectos en lugar de los documentos; por naturaleza es casi exclusivamente de anexado

Un consumidor real: el caso de Meridian

El almacén de datos financieros de Meridian Properties Group se suscribe a refin__Accounting_Transaction__ChangeEvent tras habilitar CDC en el objeto de libro mayor. El consumidor anexa las creaciones, marca las eliminaciones (descontabilizar borra filas del libro mayor — el evento de eliminación es la señal de reversión) y basa todo en el Id del registro. El trabajo de conciliación nocturno compara luego los saldos del almacén con una consulta Bulk del mismo objeto — el streaming mantiene el día al corriente, el lote demuestra que se mantuvo honesto. Cuando los auditores preguntaron cómo maneja la réplica una factura anulada, la respuesta fue una sola frase: el flujo del libro mayor lleva las filas contables de la anulación como cualquier otra.

Errores comunes que debes evitar

ErrorPor qué perjudicaHaz esto en su lugar
Tratar 'Contabilizado' como un evento de una sola vezLos documentos se descontabilizan y vuelven a contabilizarse — los consumidores de "visto una vez" cuentan por duplicado o pierden reversionesBasa la clave en el Id + la transición; procesa los cambios de estado, no los estados
Habilitar CDC en todos los objetos refin "por si acaso"Las asignaciones se consumen en canales que nadie usa; solo el objeto de libro mayor ya es de alto volumenHabilita exactamente lo que tiene un consumidor; agrega canales cuando existan consumidores
Construir un canal en tiempo real para un informe diarioInfraestructura de streaming para responder algo que un sondeo resuelve en una sola consultaAjusta el mecanismo al requisito de actualidad — la tabla de elección de arriba
Esperar contenido de evento específico de REDANo existen — los eventos son eventos de cambio estándar con los campos modificados y el tipo de cambioDiseña los consumidores sobre el sobre estándar de CDC; es un comportamiento de la plataforma totalmente documentado

Qué sigue

  1. API REST — el homólogo de solicitud/respuesta.
  2. Integración con Salesforce Flows — consumidores declarativos.
  3. Descripción general de la API — el panorama completo.
Documentación oficial de Salesforce Los eventos son una capacidad estándar de Salesforce. Las referencias autorizadas son la Platform Events Developer Guide y la Change Data Capture Developer Guide. Los enlaces se abren en una pestaña nueva.

Preguntas frecuentes

El CDC estándar ya entrega eventos de cambio confiables, ordenados y reproducibles bajo la gobernanza y los límites de tu org — un bus propietario duplicaría eso con menos herramientas. Una superficie pequeña y estable, y todo lo demás estándar.

Sí — se aplican las asignaciones estándar de CDC según tu edición de Salesforce. Habilita los objetos que realmente vas a consumir; el objeto de libro mayor es de alto volumen por naturaleza, así que dimensiona en consecuencia.

La misma receta: CDC (o un Flujo activado por registro) en refin__Bank_Reconciliation__c, vigilando que el Estado llegue a 'Completado' o 'Aprobado'. Cualquier objeto, cualquier transición — esa es la ventaja del mecanismo estándar.

Sí — CDC captura los cambios de datos sin importar quién los haya hecho, así que los documentos generados por plantillas recurrentes o contabilizados por trabajos programados llegan a tu consumidor igual que las acciones de un usuario. Espera ráfagas alrededor de los horarios de los procesos nocturnos.

No existen webhooks empaquetados. Las arquitecturas estándar son: un suscriptor externo en el canal de CDC (streaming de tipo pull), o tu propio Flujo/Apex reaccionando al cambio y haciendo la llamada saliente bajo la gobernanza de sitios remotos y credenciales de tu org.

¿Te resultó útil?