Salesforce integration: mapping work orders to Opportunities

I am configuring the FieldPulse to Salesforce integration for our organization. I need to establish a bidirectional mapping between FieldPulse work orders and Salesforce Opportunities. However, I am encountering difficulties with the field mapping configuration screen.

Current Environment:

  1. FieldPulse account: Production, API version v1
  2. Salesforce edition: Enterprise
  3. Integration status: Connected, OAuth authorized

Specific Issues:

  1. The field mapping interface does not display all standard Opportunity fields (e.g., "StageName", "CloseDate", "Amount")
  2. Custom fields created in FieldPulse do not appear in the mapping dropdown
  3. The documentation indicates bidirectional sync is supported, but I cannot locate the configuration toggle for sync direction

Questions:

  1. Is there a required field configuration in Salesforce that must be completed before FieldPulse can enumerate available Opportunity fields?
  2. Are there specific Salesforce API permissions required beyond the standard OAuth scopes?
  3. What is the expected latency for bidirectional updates — i.e., if a work order status changes in FieldPulse, what is the SLA for the corresponding Opportunity update in Salesforce?

I have confirmed that the connected Salesforce user has System Administrator profile and that API access is enabled. I can reproduce this behavior consistently across multiple browser sessions. I have reviewed the Salesforce integration guide but it does not address these specific configuration scenarios.

Ticket reference: FP-INT-2847 (opened with support 48 hours ago, awaiting escalation).

Parents
  • Hey Anita — yeah, this one trips people up more than it should. The mapping screen only shows fields that are both readable and writable by the connected Salesforce user, and that exist on the Opportunity object layout that's active for that user. System Admin profile should cover it, but I've seen cases where field-level security or record types are filtering things out.

    Quick diagnostic — can you run this in your Salesforce Developer Console?

    SELECT DeveloperName, Label, IsUpdateable, IsCreateable 
    FROM FieldDefinition 
    WHERE EntityDefinition.QualifiedApiName = 'Opportunity'

    Check if IsUpdateable is false on the fields you're missing. Also worth verifying: does the connected user have access to the Opportunity record type that's default for the integration?

    Re: custom fields — those need to be marked as "External ID" or at least "Visible" in FieldPulse, and they need API names that don't collide with Salesforce reserved words. There's a known quirk where fields with underscores at the start or double underscores anywhere get filtered out.

    On bidirectional sync: the toggle is buried. Go to Settings → Integrations → Salesforce → Advanced and look for "Sync Direction" — it's a radio group, not a toggle, which is why people miss it. Options are Push to Salesforce, Pull from Salesforce, or Bidirectional.

    Latency: typically 30–60 seconds for work order → Opportunity, 2–5 minutes the other way (Salesforce → FieldPulse polls on a slower interval). We don't publish hard SLAs for the integration layer but I can tell you the webhook path is much faster than the polling path.

    Want me to look at your specific field list? If you DM me the org ID I can check what the schema discovery is returning.

Reply
  • Hey Anita — yeah, this one trips people up more than it should. The mapping screen only shows fields that are both readable and writable by the connected Salesforce user, and that exist on the Opportunity object layout that's active for that user. System Admin profile should cover it, but I've seen cases where field-level security or record types are filtering things out.

    Quick diagnostic — can you run this in your Salesforce Developer Console?

    SELECT DeveloperName, Label, IsUpdateable, IsCreateable 
    FROM FieldDefinition 
    WHERE EntityDefinition.QualifiedApiName = 'Opportunity'

    Check if IsUpdateable is false on the fields you're missing. Also worth verifying: does the connected user have access to the Opportunity record type that's default for the integration?

    Re: custom fields — those need to be marked as "External ID" or at least "Visible" in FieldPulse, and they need API names that don't collide with Salesforce reserved words. There's a known quirk where fields with underscores at the start or double underscores anywhere get filtered out.

    On bidirectional sync: the toggle is buried. Go to Settings → Integrations → Salesforce → Advanced and look for "Sync Direction" — it's a radio group, not a toggle, which is why people miss it. Options are Push to Salesforce, Pull from Salesforce, or Bidirectional.

    Latency: typically 30–60 seconds for work order → Opportunity, 2–5 minutes the other way (Salesforce → FieldPulse polls on a slower interval). We don't publish hard SLAs for the integration layer but I can tell you the webhook path is much faster than the polling path.

    Want me to look at your specific field list? If you DM me the org ID I can check what the schema discovery is returning.

Children
No Data