forcedotcom / forcedotcom/SFDX-Data-Move-Utility
[QUESTION] - Blank Account.Name becomes random and overwrites existing value in Target Org even with "csvInsertNulls": false
- Dominant language
- TypeScript
- Stars
- 548
- Forks
- 93
- PR merge metrics
- No merged PRs in 30d
Description
**Question title**
Blank Account.Name becomes random and overwrites existing value in Target Org even with "csvInsertNulls": false
**Question summary**
There is an existing child account in the target org with name "ChildAccountName".
When running an upsert command, with the CSV file having "Name" as a blank value (e.g. no change), SFDMU instead generates a random name and upserts that into the Target Org.
Re-running the upsert will always generate a new random Account.Name and upsert that into the target org, overwriting it.
**Current setup**
Command ran:
- sf sfdmu run --sourceusername csvfile --targetusername hnz-so --path ./data/Account/ --diagnostic --anonymise
export.json
[export.json](https://github.com/user-attachments/files/29829867/export.json)
source
[Account_source.csv](https://github.com/user-attachments/files/29829902/Account_source.csv)
[RecordType_source.csv](https://github.com/user-attachments/files/29829951/RecordType_source.csv)
target
[Account_update_target.csv](https://github.com/user-attachments/files/29829721/Account_update_target.csv)
**What you already checked**
I have read a lot of official documentation but could not find information on why random value is being generated for Account.Name, especially as I don't have any data masking on.
**Expected clarification**
Want to check if I am missing a flag and how to fix this if it is not a bug. I suspect as Account.Name is a required field in salesforce, the tool always ensures it is populated by generating a random value before upsert.
The expectation is if I have the flag "csvInsertNulls": false, then a blank value here should:
1. For Insert, the target CSV should show an error saying Name is a required field
2. For update, the target CSV should ignore Name as its not changed, and update other fields if changed.
The result instead shows success, with the random Account.Name upserted.
**Log file (optional, recommended for runtime/migration questions)**
[2026-07-09__12_00_41.log](https://github.com/user-attachments/files/29829650/2026-07-09__12_00_41.log)
Contributor guide
Assessment
This issue has not been assessed yet.