Account mapping flow
Note
This flow is self-documenting and should be viewed within Salesforce (Setup > Process Automations > Flows). This document is to support working through a visual flow. Please note: the flow commentary is produced using AI.
Overview#
Flow name: MoveData_Commerce_Account_Mapping Label: [MoveData] Commerce: Account - Mapping Type: Auto-Launched Flow Template API version: 60.0 Status: Active
This flow orchestrates the complete mapping and transformation of account data from external commerce platforms into Salesforce Account records, with name protection mechanisms and comprehensive data processing.
Purpose#
The flow provides complete account mapping orchestration that:
- Implements name protection for existing account data
- Orchestrates account detail processing with configurable field controls
- Manages platform key association for external system integration
- Provides case transformation for account names
- Supports billing address processing
Salesforce fields#
This flow interacts with the Salesforce Account object and its related fields. Below is a mapping of all fields utilised:
| Field API name | Field type | Purpose in flow |
|---|---|---|
| Name | Text | Account name identifier |
| movedata__Protect_Name__c | Checkbox | Prevents automatic updates to account name |
Input variables#
Core account data#
| Variable | Type | Required | Description |
|---|---|---|---|
Record |
Account SObject | Yes | The Account record being processed |
Name |
String | Yes | Account name from external platform |
Phone |
String | No | Account's phone number |
Website |
String | No | Account's website URL |
Platform |
String | Yes | External platform identifier |
PlatformKey |
String | Yes | External platform's account identifier |
Address data#
| Variable | Type | Description |
|---|---|---|
MailingAddress_Street |
String | Account's street address |
MailingAddress_City |
String | Account's city |
MailingAddress_State |
String | Account's state/province |
MailingAddress_Country |
String | Account's country |
MailingAddress_Postcode |
String | Account's postal code |
Configuration variables#
Name processing#
| Variable | Type | Default | Description |
|---|---|---|---|
Config_AccountNameCase |
Number | 0 | Account name case transformation |
Config_AdvancedIgnoreMixedCase |
Boolean | false | Ignore mixed-case detection |
Field processing controls#
| Variable | Type | Default | Description |
|---|---|---|---|
Config_AccountIgnorePhone |
Boolean | false | Skip phone processing |
Config_AccountIgnoreWebsite |
Boolean | false | Skip website processing |
Config_AccountIgnoreAddress |
Boolean | false | Skip address processing |
Config_AccountIgnoreType |
Boolean | false | Skip type processing |
Config_AccountDefaultType |
String | "Other" | Default account type |
Output variables#
| Variable | Type | Description |
|---|---|---|
Record |
Account SObject | Fully processed account record |
Flow logic#
1. Name protection assessment#
The flow first evaluates account name protection requirements:
Name Protection Check:
- Checks if account has
movedata__Protect_Name__cflag set - Only applies to existing accounts with the protection flag enabled
- Skips name processing when protection is active
Protection Logic:
- Protected: Skips name assignment and proceeds directly to detail processing
- Not Protected: Processes name with case transformation and validation
2. Name processing#
When name protection is not active:
Name Assignment:
- Uses
movedata__SetValueComponentfor sophisticated name processing - Applies case transformation based on
Config_AccountNameCase - Respects mixed-case detection settings via
Config_AdvancedIgnoreMixedCase - Sets the account name field with formatted value
3. Account details processing#
Calls the Account Details Helper subflow with:
Configuration Variables:
Config_AccountIgnorePhone: Controls phone field processingConfig_AccountIgnoreWebsite: Controls website field processingConfig_AccountIgnoreAddress: Controls address field processingConfig_AccountIgnoreType: Controls type field processing
Data Variables:
- All address components (street, city, state, country, postcode)
- Phone and website information
- Account type defaulting to
Config_AccountDefaultType
Processing summary#
- Name Protection Check: Evaluate if account name should be protected
- Name Processing: Set account name with case transformation (if not protected)
- Details Processing: Call helper subflow for field-level processing
Dependencies#
MoveData_Commerce_Helper_Set_Account_Details(Subflow)MoveData_Commerce_Helper_Set_Account_Platform_Key(Subflow)movedata__SetValueComponent(Apex action)