1. Integration Method

Inventive's Salesforce integration works in two directions, each with a clear purpose:

Either way, what can be read or changed is governed by Salesforce's own permissions — never a generic Inventive login (see Access Control below). Both directions use OAuth 2.0; they differ only in the OAuth flow each uses — client-credentials (machine-to-machine) for the widget, authorization-code (admin consent) for the connection.


2. Integration Architecture

The integration is made up of two independent workflows, one per direction. Each has a one-time Setup and a live flow for everyday use.

Workflow A — Salesforce → Inventive (pull the Opportunity into Inventive)

This is how an Opportunity is pulled into Inventive — the embedded widget reads the record so a user can create an Inventive project for that deal.

Authenticated by the Named Credential — OAuth 2.0 client-credentials (machine-to-machine).

%%{init: {'theme':'base','themeVariables':{'actorBkg':'#2563EB','actorBorder':'#1d4ed8','actorTextColor':'#ffffff','actorLineColor':'#94a3b8','signalColor':'#475569','signalTextColor':'#0f172a','noteBkgColor':'#f8fafc','noteTextColor':'#0f172a','noteBorderColor':'#cbd5e1'}}}%%
sequenceDiagram
    actor U as User / Admin
    participant W as Inventive Widget (in Salesforce)
    participant LDS as Lightning Data Service
    participant NC as Named Credential
    participant INV as Inventive Platform

    rect rgb(223, 240, 216)
    note over U,INV: 1. Setup (one-time, admin)
    U->>NC: Install managed package (creates Named Credential)
    U->>INV: Generate credentials (admin, in Inventive settings)
    INV-->>U: Return Client ID and Secret (secret shown once)
    U->>NC: Paste Client ID and Secret into External Credential
    end

    rect rgb(214, 232, 250)
    note over U,INV: 2. Create the project (user action)
    U->>W: Open the Opportunity (widget loads)
    W->>LDS: Request the record's fields
    LDS-->>W: Return fields (as signed-in user, FLS and sharing enforced)
    note over W: Widget pre-fills the project form from these fields
    U->>W: Review details, add team members, then Submit
    W->>NC: Send the new project's data
    NC->>INV: Authenticated callout (bearer token injected)
    INV-->>W: Project created and linked to the Opportunity
    end

    rect rgb(255, 235, 205)
    note over U,INV: 3. Sync later changes
    U->>W: Reopen the Opportunity
    W->>LDS: Read current fields
    LDS-->>W: Return fields
    note over W: Widget compares against saved project and flags changes
    U->>W: Click Sync Changes
    W->>NC: Send updated fields
    NC->>INV: Authenticated callout
    INV-->>W: Project updated
    end

Workflow B — Inventive → Salesforce (push documents back to the Opportunity)

This is the connection Inventive uses to push the documents you generate back onto the Salesforce Opportunity that was synced in via Workflow A.