REDA One Centro de ajuda
PT
Idioma
English EN Español ES Português PT Italiano em breve Français FR Deutsch em breve العربية em breve
reda.one ↗
Início / REDA Financials AI / API e integração / APIs do Salesforce / Streaming API (Eventos em Tempo Real)

Streaming API (Eventos em Tempo Real)

Quer que seu data warehouse, middleware ou sistema de notificações saiba no instante em que uma fatura é contabilizada? O sistema de eventos padrão do Salesforce — Change Data Capture e eventos de plataforma — funciona nos objetos da REDA Financials como em qualquer objeto customizado. O pacote não publica nenhum barramento de eventos proprietário, o que é uma boa notícia: você configura mecanismos padrão que já governa, sem precisar construir um consumidor específico do fornecedor.

Change Data Capture em objetos contábeis

Habilite o CDC para os objetos de seu interesse

Configuração → Change Data Capture → selecione os objetos refin__ (Fatura de venda, Fatura de compra, Recebimento, Transação contábil…). Cada um recebe um canal de eventos de alteração padrão.

Inscreva-se a partir do seu consumidor

Assinantes CometD/gRPC, ou Fluxos/gatilhos Apex sobre os eventos de alteração — padrões consagrados. Os eventos carregam os campos alterados e o tipo de alteração.

Filtre pelas transições que importam

O momento contabilmente relevante costuma ser a mudança de status: refin__Status__c chegando a 'Contabilizado' (o documento entrou no livro razão) ou saindo dele (descontabilizado/cancelado). Para feeds no nível do livro razão, o CDC em refin__Accounting_Transaction__c transmite as contabilizações efetivas.

Padrões de consumo comprovados

  • Sincronização de data warehouse: CDC na Transação contábil → réplica do livro razão somente de inserção, sempre atualizada.
  • Notificações: um Fluxo disparado por registro na Fatura de venda (dispara tanto em alterações via API quanto via interface) postando no seu chat corporativo quando faturas grandes são contabilizadas.
  • Sistemas a jusante: arquivos de pagamento, sistemas imobiliários — dispare pela transição para contabilizado em vez de fazer polling.
Projete para o ciclo de vida contábil. Documentos podem ser descontabilizados e recontabilizados — seu consumidor verá o mesmo registro entrar em 'Contabilizado' mais de uma vez, e sair dele. Baseie-se no Id do registro + transições de status (não em "visto uma vez"), e trate o cancelamento como o sinal de anulação. O fluxo do livro razão (Transações contábeis criadas/excluídas) é inerentemente correto se você preferir espelhar efeitos em vez de documentos.

O que vem no pacote versus o que você habilita

MecanismoEmpacotado?Observações
Eventos de plataforma (__e)Nenhum vem no pacoteO pacote não publica nenhum evento customizado — não procure canais da REDA no seletor de eventos
Change Data CaptureNada pré-habilitadoVocê seleciona os objetos refin__ em Configuração; os canais seguem a nomenclatura padrão — refin__Sales_Invoice__ChangeEvent e semelhantes
Webhooks / HTTP de saídaNenhum vem no pacoteAs únicas chamadas de saída do pacote são suas duas integrações de serviço próprias (IA, taxas de câmbio); a entrega de eventos aos seus sistemas fica a seu cargo, configurada via mecanismos padrão
Fluxos/gatilhos disparados por registroVocê constróiDisparam tanto em alterações via API quanto via interface — geralmente o consumidor "em streaming" mais simples para uma única reação dentro da organização
Comprove primeiro em um sandbox. Como nada relacionado a eventos vem empacotado, o comportamento do CDC em objetos refin__ — alocações, volume de eventos gerado por picos de contabilização, payloads no nível de campo — é uma propriedade da configuração e da edição da sua organização. Habilite, inscreva-se e contabilize um documento de teste de ponta a ponta antes de projetar o consumidor de produção a partir de suposições.

Escolhendo o seu sinal

NecessidadeMelhor mecanismoPor quê
Sistema externo espelha continuamente as alterações contábeisAssinatura de CDC (CometD/gRPC)Ordenada, reproduzível, entregue fora da transação — construída para consumidores externos
Uma reação dentro da organização a uma contabilizaçãoFluxo disparado por registro na mudança de statusSem infraestrutura de assinante; a condição de disparo é o filtro
Cargas noturnas de data warehouse, sem necessidade de tempo realPolling agendado de REST/consulta em massaMais simples de operar; o livro razão é a verdade consultável — o streaming é uma otimização, não um requisito
Réplica no nível do livro razão (cada débito e crédito)CDC em refin__Accounting_Transaction__cEspelha efeitos em vez de documentos; predominantemente de inserção por natureza

Um consumidor implementado na Meridian

O data warehouse financeiro da Meridian Properties Group assina refin__Accounting_Transaction__ChangeEvent depois de habilitar o CDC no objeto do livro razão. O consumidor anexa criações, marca exclusões (uma descontabilização exclui linhas do livro razão — o evento de exclusão é o sinal de estorno) e baseia tudo no Id do registro. O job de conciliação noturno então compara os saldos do data warehouse com uma consulta em massa do mesmo objeto — o streaming mantém o dia atualizado, o lote comprova que tudo permaneceu íntegro. Quando os auditores perguntaram como a réplica lida com uma fatura cancelada, a resposta foi uma frase só: o fluxo do livro razão carrega as linhas contábeis do cancelamento como quaisquer outras.

Erros comuns a evitar

ErroPor que prejudicaFaça isto em vez disso
Tratar 'Contabilizado' como um evento únicoDocumentos são descontabilizados e recontabilizados — consumidores do tipo "visto uma vez" contam em duplicidade ou perdem estornosBaseie-se no Id + transição; processe mudanças de status, não status isolados
Habilitar CDC em todo objeto refin "por segurança"As alocações se esgotam em canais que ninguém consome; só o objeto do livro razão já é de alto volumeHabilite exatamente o que tem um consumidor; adicione canais quando houver consumidores
Construir um canal em tempo real para um relatório diárioInfraestrutura de streaming para responder a uma pergunta que o polling responde em uma única consultaCombine o mecanismo com o requisito de atualidade — a tabela de escolha acima
Esperar payloads de evento específicos da REDANão existem — os eventos são eventos de alteração padrão, com campos alterados e tipo de alteraçãoProjete os consumidores sobre o envelope padrão de CDC; é um comportamento de plataforma totalmente documentado

O que vem a seguir

  1. REST API — a contraparte de requisição/resposta.
  2. Integração de Fluxos do Salesforce — consumidores declarativos.
  3. Visão geral da API — o panorama completo.
Documentação oficial do Salesforce Eventos são uma funcionalidade padrão do Salesforce. As referências oficiais são o Platform Events Developer Guide e o Change Data Capture Developer Guide. Os links abrem em uma nova guia.

Perguntas frequentes

O Change Data Capture padrão já entrega eventos de alteração confiáveis, ordenados e reproduzíveis, sob a governança e os limites da sua organização — um barramento de eventos proprietário duplicaria isso com menos ferramental. Superfície pequena e estável, tudo o mais padrão.

Sim — as alocações padrão de CDC se aplicam de acordo com sua edição do Salesforce. Habilite apenas os objetos que você realmente vai consumir; o objeto do livro razão é de alto volume por natureza, então dimensione de acordo.

Mesma receita: CDC (ou um Fluxo disparado por registro) em refin__Bank_Reconciliation__c observando o Status chegar a 'Concluído' ou 'Aprovado'. Qualquer objeto, qualquer transição — essa é a beleza do mecanismo padrão.

Sim — o CDC captura alterações de dados independentemente de quem as fez, então documentos gerados por modelos recorrentes ou contabilizados por jobs agendados são transmitidos ao seu consumidor como ações de usuário. Espere picos nos horários da agenda noturna.

Não existem webhooks empacotados. As arquiteturas padrão são: um assinante externo no canal de CDC (streaming no estilo pull), ou seu próprio Fluxo/Apex reagindo à alteração e fazendo a chamada externa (callout) sob a governança de sites remotos e credenciais da sua organização.

Isso foi útil?