Connexu Salesforce Integration
Setup and full testing guide for Salesforce admins and Connexu account owners · Updated November 8, 2026
Current status
Automatic daily sending is off for every customer org. Your org is switched on only after you approve a preview and Connexu turns on daily sending for you.
1. Before you start
- Salesforce Enterprise, Unlimited, Performance or Developer edition (Professional needs the API add-on).
- The connecting Salesforce user has API Enabled, can read Leads, Contacts, Accounts and Users, and can create Tasks and Events. Many teams use a dedicated integration user.
- An admin of your Connexu organization (or Connexu staff) connects Salesforce.
What Connexu will and won't do: it writes only to your org, through the connection you authorize. It attaches activity to Leads and Contacts that already exist and never creates Leads or Contacts. It never sends emails, calls, LinkedIn requests or calendar invitations. Every activity type starts with a preview that writes nothing.
2. Connect Salesforce (about a minute)
- Sign in to
portal.connexu.ioas an admin and open Connected Apps. - On the Salesforce card, click Connect.
- Sign in to Salesforce as the integration user, review the requested access and click Allow.
- Back in Connected Apps the card shows Connected. Click Test connection.
Using a sandbox? Tell your Connexu contact before you click Connect. If you see "app not approved", ask your Salesforce admin to approve Connexu or use your own app (Appendix A).
| Card shows | What to do |
|---|---|
| Not connected | Click Connect |
| Connected | Ready. Use Test connection any time |
| Reconnect needed | Access expired or was revoked. An admin clicks Reconnect |
| Error | Read the message on the card, then see Troubleshooting |
3. Map person and company fields
- Click the gear icon on the Salesforce card to open Salesforce Sync Configuration.
- Open Field Mappings. Under Prospect Mapping, click Smart Match and review each row (pick a field or -- Do Not Sync --).
- Map Call Result to the Lead/Contact field your team uses.
- Review Account Mapping, then click Save Changes.
Then give your Connexu contact these settings (in the Mapping Workbook): Task Status per activity type, owner map (Connexu rep → active Salesforce user, plus optional default owner), call-result wording, business time zone (default America/New_York), whether reps already sync calendars, whether to send portal meetings, optional open-count/latest-open fields, and a start date. Every value must be active in your org. Past activity is not backfilled.
Activity settings
Under the field mappings, the Salesforce activity configuration section lets you click Load Salesforce fields and owners, then set up:
- Matching and owners: match by email or by an existing Salesforce record ID, a default activity owner, and whether an active owner is required.
- Call dispositions: active Salesforce picklist values.
- Email opens: Email Tasks only, person count/last-open fields only, or both.
- Meeting source.
- Daily export fields.
- Activity timezone and start time.
Save mappings only stores your choices ("Mappings saved. Nothing enabled or sent."). Switching on an activity type is a separate, explicit step that requires saved, reloaded settings. Connexu reviews a preview with you before anything is switched on, and Connexu turns on automatic daily sending for your org.
4. The five activity types
| Type | Salesforce record | Key values |
|---|---|---|
| Calls | Task (Call) | Subject "Call - [outcome]" (or "Call - Completed"); Due Date = call date in your time zone; Call Type Outbound; duration in seconds; Call Result = your wording. Notes, recordings and transcripts are not sent. |
| Daily call result | Field on the Lead/Contact | Latest result written to your mapped Call Result field. Not sent twice; blanks skipped, so the field is never cleared; disallowed values skipped and reported. |
| Email opens | Task (Email) | One Task per recipient per campaign (first open). Subject "Email opened: [subject]". Email content never sent. Opens come from tracking pixels, so they are not proof the email was read. |
| LinkedIn connections | Task (LinkedIn) | Accepted requests only. Subject "LinkedIn connection accepted". Messages and profile details never sent. |
| Scheduled meetings | Event | Portal calendar meetings only, after you approve meetings as a source. Exactly one attendee must match a Lead/Contact. Needs an end time. A changed meeting updates the same Event. No invitations sent; Events are never deleted. |
Owner (Assigned To): owner map → default owner → connecting user. Related To is the Account only for Contacts, because Salesforce does not allow Lead activities to link to an Account.
5. Matching, dates and duplicates
- Matching: a confirmed Salesforce ID, or exact email (Contact first, then Lead). No match: skipped and reported.
- Dates and time precision: a Task Due Date is date-only, using the business date in your time zone. Exact open and acceptance times go in Comments. Event start and end times are exact, and Salesforce displays them in each user's time zone. Compare times at the precision Salesforce stores, not to the millisecond.
- Checks before sending: required fields, field types, lengths and active picklist values. A problem stops that record and is reported.
- Duplicates and retries: each activity is sent at most once. If Salesforce's reply is uncertain (for example a timeout), Connexu stops and checks instead of resending. Calls logged by the earlier sync are held for review.
6. Full testing
Preview compared with live writes
A preview (dry run) reads your org and shows counts and sample records. It writes nothing. Live writes start only after your written approval, first as a small batch, then on the daily schedule.
How Connexu tested the release
Two-stage example (Nov 7, 2026, Connexu's own developer Salesforce org). Stage 1 created one fictional test Lead, four Tasks (2 calls, 1 email, 1 pending LinkedIn request) and one Event. Stage 2 updated the same email Task (open time added) and LinkedIn Task (In Progress → Completed) and created nothing new. Both stages were read back from Salesforce and passed. Re-run, cross-org, permission and malformed-data scenarios were not part of that example.
Release verification (Nov 8, 2026). All five activity types passed end-to-end controlled tests in Connexu's internal org, and the release was verified live. Automatic daily sending remains off for all customer orgs.
Connexu's internal org, record IDs and test identities are not published here.
The test data we created (sanitized)
These files are copies of Connexu's Nov 7 two-stage fixture. Names, emails, phones, domain and rep were replaced with fictional values, and all Salesforce IDs were removed. Fixture Subjects start with "TEST -". Live activity uses the formats in section 4, such as "Call - No Answer".
- fixture_lead_import.csv: importable sandbox prerequisite — import manually, not created by activity sync. One fictional Lead, with columns matching Salesforce's Data Import Wizard Lead fields. Import it into a sandbox so the activity has an existing person to attach to.
- fixture_two_stage_expected.csv: historical Nov 7 reference only — not importable or current acceptance expectations. Every field the fixture wrote in Stage 1 and Stage 2, the expected result, and the Nov 7 outcome.
- generic_extra_examples.csv: generic illustrative examples only — not importable, replayable, or historical test proof, not from a Connexu test run (a re-run, moved meeting and no-match case).
Historical fixture versus released sync: the Nov 7 fixture created its test Lead, recorded an unopened email and a pending LinkedIn request, then updated those Tasks. These are historical test-only results, not current sync expectations. For the released sync, manually import the sandbox Lead first; only qualifying email opens and accepted LinkedIn connections are sent, as described in section 4.
Run your own sandbox test (with Connexu)
- Import
fixture_lead_import.csvinto your sandbox. Connexu will not create the person. - Give your Connexu contact the sandbox and the fixture email. Connexu runs a preview, which writes nothing, and shares the counts and samples. A self-serve portal preview is not available.
- After your written approval, Connexu runs a small test write. Create new qualifying sandbox activity after enablement and after the configured start date, including a newly opened email and an accepted LinkedIn connection. Do not replay old fixture data or expect backfill. On the Lead's Activity, check current released expectations in sections 4–5: right person, owner, Due Date (business date), Status, wording, and no notes or email content. Use
fixture_two_stage_expected.csvonly as the labeled historical reference, not the current acceptance contract. - Repeat to confirm duplicates: activity already sent is not sent again.
- Negative check: an email with no Lead/Contact is skipped and reported.
Expected checks
| Check | Pass when |
|---|---|
| Preview | Counts and samples are correct, and 0 records are written |
| First write | Exactly one record per item, on the right person and owner |
| Duplicates | A re-run creates 0 new Tasks or Events |
| Time precision | Due Date equals the business date; Event times match at Salesforce precision |
| Privacy | No call notes, transcripts, email bodies, meeting notes or LinkedIn messages |
| Scheduler | Off until Connexu switches your org on; after that, only new activity after your start date is sent |
Cleanup
Delete the sandbox test Lead and its activities yourself. Connexu never deletes records in your org. Ask Connexu to confirm activity sending is off for the sandbox.
7. Troubleshooting
| Issue | What to do |
|---|---|
| Field dropdowns empty / "Failed to load Salesforce fields" | Confirm the card shows Connected, then Retry or reopen the gear. Check object access |
| Blocked / app not approved | Have your admin approve Connexu, or see Appendix A |
| Reconnect needed | An admin clicks Reconnect |
| Activity skipped: no match | Add or fix the person in Salesforce |
| Value flagged in preview | Provide the exact active picklist value |
| Wrong owner | Add the rep to the owner map |
| Email or LinkedIn subtype missing in your org | The preview flags it; that type waits until an alternative is agreed |
8. Go-live readiness checklist
- ☐ Card shows Connected and Test connection passes
- ☐ Field Mappings saved, including Call Result
- ☐ Workbook complete (statuses, owners, wording, time zone, start date)
- ☐ Preview reviewed: right people, owners, dates and wording
- ☐ Sandbox test passed, including re-run and negative test
- ☐ Written approval sent → small first batch checked → daily schedule switched on by Connexu
Security and privacy
Connexu acts only as the user who clicked Allow. You can revoke access at any time in Salesforce Setup › Connected Apps OAuth Usage.
Appendix A: use your own Salesforce app (optional)
Create an External Client App named Connexu. Set the Callback URL to https://portal.connexu.io/SalesforceCallback, with scopes api, refresh_token, offline_access and id, profile, email, address, phone. Leave Client Credentials Flow off and keep the secret and PKCE options on. Set Refresh Token Policy to "valid until revoked". In Connexu, choose Use your own Salesforce app (Optional), enter the Consumer Key, Consumer Secret and My Domain URL, then click Save Credentials and Connect. New apps can take up to 10 minutes to activate.
Questions: your Connexu representative or brad@connexu.io · © Connexu
