What It Does
- Automatically inserts new records or updates existing ones in Salesforce based on your workflow data.
- Ensures CRM data hygiene by preventing duplicates through upsert logic.
- Keeps your pipeline and account records in sync with real-time inputs.
- Saves manual entry time and reduces errors during high-volume updates.
- Integrates seamlessly with other nodes, so you can chain enrichments or notifications after upserts.
🏁 Getting Started

1
Select Salesforce Account
Choose your connected Salesforce account where records will be upserted.
2
Pick Your Object Type
Use the SObject Type dropdown to select which Salesforce object you want to create or update.
3
Map Your Fields
Use the Insert Input button or
@ColumnName syntax to map data values from previous steps into Salesforce fields.Inputs
🛠️ Required Fields
- Salesforce Account (✅)
Your connected Salesforce org.
Why it matters: Ensures records go into the correct environment—production or sandbox—so you maintain data integrity. - SObject Type (✅)
Choose the Salesforce object (e.g.,Account,Opportunity,Lead) to upsert.
Why it matters: Defines where new records land or which object’s records get updated, keeping your pipeline and CRM aligned. - Field Mappings (✅)
Map workflow data to Salesforce fields (e.g.,Name,Amount,CloseDate).
Why it matters: Accurate field mapping drives clean data and powers reporting on up-to-date records.
Output
This node returns the full Salesforce record response, including the record ID, any created or null values, and other standard/object-specific fields.
If there’s an external ID match, the existing record updates; otherwise, a new record is created.
How It Works
- Reads your chosen Salesforce Account and SObject Type.
- Sends an upsert request using field mappings or an external ID.
- Salesforce creates or updates the record under the hood.
- Emits the full record data for downstream nodes like alerts or reporting.
🚀 Example Use Cases & Prompts
| Use Case | Setup or Prompt Example |
|---|---|
| New Lead Automation | “Upsert a new Lead when a form submission comes through.” |
| Opportunity Update | “Update Opportunity StageName when deal status changes.” |
| Account Data Hygiene | “Ensure Accounts always have the correct region and owner.” |
| Bulk Field Sync | “Map spreadsheet columns to custom fields and upsert in bulk.” |
✨ Pro Tips
⚠️ Important Considerations
🛠 Troubleshooting & Gotchas
| Symptom | Likely Cause | Quick Fix |
|---|---|---|
| “INVALID_FIELD” error | Typo in field API name | Verify and correct field names in mappings. |
| Record not updating | Missing external ID or ID field | Map the correct external ID to identify records. |
| API limit exceeded | Bulk upserts without batching | Split into smaller batches or throttle requests. |
📝 FAQ
What happens if the record doesn’t exist?
What happens if the record doesn’t exist?
A new record is created—Salesforce upsert will insert if no match is found.
Can I use this for custom objects?
Can I use this for custom objects?
Yes—just select the custom SObject name (e.g.,
MyCustomObject__c) in the dropdown.Does this count against my workflow credits?
Does this count against my workflow credits?
No—action nodes like upserts are free to run.
💰 Pricing
| Action Node | Credit Cost |
|---|---|
| Upsert Record (action) | Free |
Action nodes (like this upsert) don’t consume credits—only trigger nodes do.
Ready to automate and clean up your Salesforce data? Drop in Upsert Record and watch your CRM stay in sync—all without lifting a finger. 🚀