Salesforce Integration
Salesforce Integration
Connect Salesforce when form submissions need to create or update Lead, Contact, or custom object records. Use a sandbox first for migrated GetFeedback forms.
Connect an Org
- In Salesforce, create a Connected App with API and refresh token scopes.
- Set the callback URL shown in Settings > Integrations > Salesforce.
- In BuoyForms, choose Connect Org and select Production or Sandbox.
- After OAuth completes, confirm the org appears in the Salesforce settings page.
Map a Form
- Open the form builder and go to the form integrations area.
- Select the connected Salesforce org and target object.
- Map each BuoyForms field to a Salesforce field. Required Salesforce fields must be mapped before saving.
- Save the mapping. BuoyForms stores the mapping against the generic Salesforce integration for the form.
- Leave Live Salesforce Sync off until the mapping has been tested and approved.
Connecting a Salesforce org does not enable sync for every form. A form only sends live submissions to Salesforce when its own Live Salesforce Sync control is enabled. Missing or disabled form-level Salesforce config means submissions and retries do not write to Salesforce.
Test Before Publish
Use Test Mapping to create a sample sandbox record. Confirm the returned Salesforce record id and inspect the record in Salesforce. Test Mapping is an explicit admin test and does not enable live submission sync.
After the test record is correct, turn on Live Salesforce Sync, submit the public form once, and confirm the integration log records success.
Monitor Health
Go to Settings > Integrations > Salesforce and review the Salesforce Health Center. It shows connected orgs, token/connection health, mapped objects, mapped field counts, retry status, and recent sync logs. Reconnect the org if token health needs attention.
Retry a Failed Submission
Open a submission detail page when a Salesforce sync shows failed. If the failed log is still available and Live Salesforce Sync is still enabled for the form, click Retry Salesforce Sync. BuoyForms runs the stored request payload again, writes a new integration log with the next attempt number, and refreshes the submission status with the returned Salesforce record id and link when the retry succeeds. Manual retries are allowed even after automatic retries are exhausted.
Only users with submission read access and integration management access can retry a Salesforce sync. The retry is scoped to the current organization, form, and submission before it executes. If the form Salesforce config is missing, disabled, or no longer matches the submission event, retry stops before writing to Salesforce.
Troubleshooting
- Missing OAuth variables: set
SALESFORCE_CLIENT_ID,SALESFORCE_CLIENT_SECRET, andSALESFORCE_CALLBACK_URL. - Required field error: update the form mapping so every required Salesforce field has a source value.
- Invalid object error: refresh object metadata and choose a createable Salesforce object.
- Sync did not run: confirm Live Salesforce Sync is enabled on the form, not only that the org is connected.
- API failure: check the recent sync logs, retry status, and Salesforce user permissions.
- Duplicate records: confirm the mapping/upsert strategy and source response ids for migrated historical data.