Salesforce CDC Enriched Fields: Why and When to Use Them
Use Salesforce Change Data Capture enriched fields to carry stable identifiers and context on custom channels without querying the source record after every event.
Read article →The complete collection of Deep Dives, practical tutorials, Quick Reads and engineering notes across Salesforce, MuleSoft, DataWeave, integration, APIs, distributed systems, testing and developer tooling.
Looking specifically for longer-form architecture and production engineering? Explore the 15 curated Deep Dives →
Use Salesforce Change Data Capture enriched fields to carry stable identifiers and context on custom channels without querying the source record after every event.
Read article →A practical review of Salesforce CDC field enrichment, including the 10-field limit, payload semantics, and when a follow-up query is still appropriate.
Read article →Compare carrying stable context in Salesforce CDC enriched fields with issuing a Salesforce query after each change event.
Read article →A practical design guide to configuring enriched fields on Salesforce Change Data Capture custom-channel members.
Read article →Understand the metadata behind a Salesforce filtered Change Data Capture channel and how PlatformEventChannel and PlatformEventChannelMember fit together.
Read article →Design safer Salesforce custom-channel filter expressions by understanding their SOQL-like model, operation filtering, field filtering, and practical limits.
Read article →Use Salesforce custom channels and server-side event filters to deliver only the Platform Events or Change Data Capture events an integration actually needs.
Read article →A balanced architecture review of Salesforce event filtered channels: where they help, where they add coupling, and what they do not solve.
Read article →Compare Salesforce server-side custom-channel filtering with receiving a broad event stream and filtering it inside the integration client.
Read article →A practical guide to Salesforce SOQL aggregate functions and when to summarize data in the query instead of application code.
Read article →Practical SOQL patterns for TODAY, THIS_WEEK, LAST_N_DAYS, absolute DateTime ranges, and integration-friendly incremental queries.
Read article →Filter on Salesforce formula fields today, and understand the new Summer '26 FORMULA() in SOQL WHERE pilot before using calculated expressions directly in a query.
Read article →Understand the difference between WHERE and HAVING in SOQL and use HAVING to filter grouped Salesforce results.
Read article →Practical SOQL GROUP BY examples using COUNT, SUM, AVG, MIN, MAX, multiple fields, and date grouping.
Read article →Use IN and NOT IN for value sets, then use SOQL semi-joins and anti-joins to filter records based on related-object criteria.
Read article →Use SOQL LIKE correctly with percent and underscore wildcards, literal special characters, apostrophes, bind variables, and injection-safe dynamic queries.
Read article →Use NULL conditions correctly in SOQL and avoid confusing missing values with empty strings or business defaults.
Read article →Use ORDER BY and LIMIT deterministically, understand OFFSET's role, and choose safer pagination patterns for integrations and large Salesforce result sets.
Read article →Learn the two core SOQL relationship-query directions with practical Account, Contact, Opportunity, and custom-object examples.
Read article →Learn how to select all, standard, or custom fields in SOQL, when FIELDS() is convenient, and when an explicit field list is still the better production choice.
Read article →Use DataWeave's default keyword to keep common null and missing-value transformations readable, while knowing when explicit conditions are still the better choice.
Read article →Practical DataWeave filter examples for selecting records, handling optional values, combining conditions, and keeping filtering separate from transformation logic.
Read article →Practical DataWeave patterns for flattening nested arrays, combining parent and child data, and deciding when flatMap is clearer than map followed by flatten.
Read article →Use DataWeave groupBy to turn flat arrays into useful business groupings for aggregation, routing and downstream request construction.
Read article →Learn how DataWeave groupBy turns an array into grouped collections for batching, aggregation, routing, and downstream integration processing.
Read article →A quick, practical guide to choosing map or mapObject in DataWeave, with examples for arrays, objects, keys, values, and common transformation mistakes.
Read article →Use map when transforming array elements and mapObject when transforming object entries. The desired output shape usually makes the choice obvious.
Read article →Understand DataWeave reduce through practical examples for totals, object construction, grouping-like transformations, and choosing the right accumulator.
Read article →Practical DataWeave patterns for omitting null fields from JSON and deciding whether empty strings, arrays, and objects should also be removed.
Read article →A practical guide to when DataWeave streaming helps, what sequential access means, and which transformation patterns can accidentally defeat the memory benefit.
Read article →A timeout on one connector is not a timeout strategy. Design an end-to-end latency budget across callers, APIs, retries and downstream dependencies.
Read article →Choice Router is excellent for a few clear branches. When routing becomes data-driven, a lookup or configuration model can be easier to maintain.
Read article →A practical introduction to MuleSoft Object Store for watermarks, replay state, tokens, and lightweight application state - and when a database is the better design.
Read article →A practical guide to choosing Parallel For Each or Batch Processing based on payload size, synchronous completion, memory, concurrency, and record-level recovery needs.
Read article →Rate limits protect consumption over a time window; burst protection addresses sudden traffic. Understand the architectural distinction before choosing an API policy.
Read article →A practical guide to using MuleSoft Until Successful for bounded synchronous retries, while avoiding retry storms, duplicate effects, and poor recovery design.
Read article →A practical decision guide for choosing Salesforce Bulk API 2.0 instead of record-by-record REST calls when MuleSoft integrations handle larger datasets.
Read article →Salesforce Change Data Capture consumers should treat ChangeEventHeader as processing metadata, not just jump directly to changed business fields.
Read article →Understand what Salesforce Change Data Capture Replay IDs represent, how they support event recovery, and why they should be treated as opaque stream positions rather than business sequence numbers.
Read article →A concise architecture guide to choosing Salesforce Change Data Capture or Platform Events based on whether you need record-change notifications or purpose-built business events.
Read article →A practical guide to using Salesforce Composite API from MuleSoft when multiple related Salesforce REST operations belong in one request.
Read article →Salesforce record IDs identify Salesforce records; external IDs help systems agree on business identity. That difference matters for durable integrations.
Read article →Salesforce Pub/Sub API is pull-based. Use its event-request model as a real backpressure mechanism instead of building an ever-growing consumer backlog.
Read article →A practical guide to using Salesforce External IDs for idempotent create-or-update integrations from MuleSoft without depending on Salesforce record IDs.
Read article →