Skip to main content

Hi everyone,

Scenario

  • I ingest data from Amazon S3 into Data Cloud through a data stream, which creates a DLO.
  • I mapped the DLO to a DMO and made some changes to the data in Data Cloud.
  • I now want to write this data back to the matching Salesforce CRM object (in my case a custom object called account_data, matched on account_id).

What I tried

 

I built a

Data Cloud-triggered Flow on the DMO (trigger: a record is created or updated). It uses Get Records to find the CRM record by account_id, then Update Records to copy the field value (for example model) from the DMO record.

The problem

 

The flow only runs when a record in the DMO is

created or updated after the flow is activated. Records that already exist in the DMO, or are reloaded with the same values, never trigger it, so their data never reaches CRM.

What I want

 

A way to push the data from the DMO to CRM for

all records, including existing ones, without having to create or modify the records in Data Cloud to fire a trigger.

What I'm considering

  • A Copy Field enrichment in Data Cloud
  • A schedule-triggered flow that reads the DMO and updates CRM
  • A one-time backfill with Data Loader
  • Give me best practices.

Questions

  1. What is the recommended way to sync existing DMO data to a CRM object on demand or on a schedule?
  2. Is Copy Field enrichment suitable for this, and are there limits I should know about?
  3. Can a schedule-triggered flow read from a Data Cloud object at scale, or will it hit limits?
  4. I think enrichments is only for standard objects and not for custom objects ?

Thanks in advance for any guidance. 

 

#Data360  #Data Cloud  #Data Management  #Salesforce Admin

2 answers
  1. Oct 6, 10:01 AM

    Hi Venkata, 

     

    Best answer to your core ask: use Data Cloud's native Writeback feature (a Batch Transform/Data Transform with a Salesforce Object as the target), not a scheduled Flow. This directly solves your problem — it reads the entire DMO (all existing + new records) on a schedule, writes to CRM via Upsert matched on your key field (account_id), and isn't triggered by create/update events at all, so backfill and ongoing sync use the exact same mechanism. 

     

    How to set it up: 

    1. Data Cloud → Data Transforms → create a Batch Transform (or use an existing one) sourced from your DMO 

    2. In the Writeback/target configuration: Target Type = Salesforce Object, select your account_data custom object 

    3. Action Type = Upsert, map account_id as the matching key, map your other fields (e.g., model) 

    4. Schedule the transform to run as often as needed (this is a genuine scheduled batch job on Data Cloud's side, not something bound by Flow governor limits) 

     

    This directly answers your numbered questions: 

     

    1. Recommended way: Writeback via Data Transform (above), not a flow-based approach, for anything beyond small volumes. 

    2. Copy Field enrichment: works, but it's designed for real-time, per-record enrichment onto existing CRM records as they're viewed/queried — not a backfill mechanism for records that already exist and won't re-trigger. Not the right tool for "sync everything now." 

    3. Scheduled Flow reading DMO at scale: it'll work for low volume, but Flow's Get Records/Update Records has standard governor limits (SOQL rows, DML rows per transaction) — it's not built for bulk DMO-to-CRM sync the way a Data Transform writeback is. Expect it to struggle or need batching logic once you're past a few thousand records. 

    4. Correct — Copy Field enrichment is standard-objects-only. But Writeback via Data Transform is not restricted that way: Salesforce Object as Target Object explicitly supports custom objects, which is exactly your account_data case. 

     

    For the one-time backfill specifically: you don't need Data Loader as a separate step — just run the Writeback transform once manually (on demand) for the backfill, then put it on a schedule for ongoing sync. Same mechanism handles both. 

     

    Reference:

    https://help.salesforce.com/s/articleView?id=ind.dpe_salesforce_object_as_wb_datacloud.htm&language=en_US&type=5

0/9000