Introduction to the Oracle Eloqua Salesforce Integration App
Eloqua's legacy Salesforce integration was retired in 2021. A practical introduction to the replacement app — actions, imports, marketing activities and Campaign Canvas wins.
TL;DR
- Eloqua's legacy Salesforce integration was retired in January 2021 — if you're still on it, you can't edit your configuration or reactivate paused actions.
- The replacement Salesforce Integration App lives under Apps > Salesforce Integration > Config and is far more intuitive than the old Integration section.
- Data moves through Actions (Eloqua to Salesforce) and Imports (Salesforce to Eloqua) — one object-to-object mapping per action.
- Use a LITE plus FULL action pattern so a single bad field can't block your mission-critical syncs.
- The big win: you can now trigger Salesforce actions directly from the Campaign Canvas, instead of routing everything through Program Builder.
Related content
A Five-Tier Marketing Automation Maturity Model for B2B Teams
16 April 2026 · 3 min read
Why this migration matters
In January 2021, Oracle Eloqua's legacy Salesforce integration was retired and is no longer supported. If you are still running it, you cannot make edits to your configuration — and if you pause or disable any actions, you will not be able to switch them back on.
That is a real problem for any business that has not yet moved across or taken the time to understand the differences between the old and new configurations. This guide is a simple introduction to the new Salesforce Integration App to help you get started. If you want hands-on configuration support, get in touch — and for the full detail, Oracle publishes official Salesforce Integration documentation worth bookmarking.
Accessing the Salesforce Integration App
The Salesforce Integration App for Oracle Eloqua is downloaded from the Oracle Marketplace. The first thing you will notice is that everything now lives within the Apps section of Eloqua — the dedicated 'Integration' section becomes redundant once you have fully migrated.
Open the app via Apps > Salesforce Integration > Config. A window opens inside the application where you manage the entire configuration from one place.
The sections inside the app
The app is broken into a handful of easy-to-navigate sections, each with a clear job:
- Status and Reporting — check the volume and status of imports and exports, by day and by action, including any failed updates.
- Actions — configure all the data you want to send from Eloqua to Salesforce.
- Imports — configure all the data you want to pull from Salesforce into Eloqua.
- Marketing Activities — bundle and send the marketing activity logged in Eloqua to a Salesforce object (Tasks or a custom object).
- Campaigns — configure campaign responses and manage how campaign members' responses flow to Salesforce.
- Connections — connect Eloqua to one or many Salesforce instances.
- Notifications — set up alerts for successful and failed integrations.
Setting up actions and imports
Most of your data transfer is handled by Imports and Actions, which work much like the legacy integration's External Calls and Internal Calls. Each action or import sets up a one-way dialogue between a single Salesforce object and a single Eloqua object — Eloqua Contacts to Salesforce Leads or Contacts, for example.
Because every object-to-object connection needs its own action or import, you will build up a portfolio of them over time to manage the daily synchronisation between both platforms. Actions are configured by mapping fields line by line, or by adding custom information to a destination field, such as a timestamp or a descriptive message.
Helpful tip: build LITE and FULL actions
Salesforce operates as an accept-none integration, which means a single field that errors will stop the entire sync from completing. To protect yourself, create a 'LITE' version of each import that syncs the minimum critical data, followed by a 'FULL' action with everything else. That way a stray data error can't block mission-critical information from getting through.
Setting up marketing activities
Marketing activities differ from the legacy integration in that activities are bundled into send packages. When building yours, create an activity bundle for each type of activity — 'Email Clicks', for instance — and add multiple actions within it for the different variations you want to send.
For example, send richer data about a clickthrough for contacts tied to prospect accounts (where sales may want to follow along), and a lighter tally of opens and clicks for everyone else. It is also worth splitting data by email group, since operational or transactional emails usually warrant less data than marketing messages.
Setting up campaign responses
Campaign responses work much like the legacy campaign responses section, and are really only needed if you actively use campaign response rules in your current implementation.
Where you do, we recommend the UPSERT action for campaign members and handling responses against specific criteria, rather than sending every response rule for every campaign. You cut down the volume of calls to Salesforce and stay far more deliberate about exactly what you sync.
The game-changer: actions on the Campaign Canvas
The single biggest improvement is how easy it now is to add Salesforce actions directly inside your campaigns. With the old setup, Program Builder was a disjointed experience — you configured an action, sent data to a program, then went back to check whether everything had validated and run.
With the new app you can open a program and configure every Salesforce action — create lead, update contact, update campaign membership, trigger lead assignment — complete with error rules, right from the Campaign Canvas. There is no need to shuttle data off to another section of Eloqua. For teams unfamiliar with integration settings, that single change makes the whole process far less intimidating.
There is also more control under the hood: schedule imports from every 15 minutes up to every 24 hours, choose the days each call runs, use Salesforce SQL (SSQL) to write the conditions that fire each import, and run any call manually to test it. Consolidating activity sends into fewer, batched calls generally makes for a more stable integration too.
The interface is much more intuitive — anyone who felt overwhelmed managing multiple data-processing steps can get up to speed and feel comfortable with the tool quickly.
For a quick run-through and video guide of the integration app, please watch the video below — and keep an eye out for more posts covering specific integration topics.
Wrapping up
The new Salesforce Integration App keeps all the functionality of the old integration, centralises your data processing in one place, and makes day-to-day management genuinely easier. If you are still on the legacy integration, the safest move is to plan your migration now — before you need to change something you can no longer edit.
Keep an eye out for follow-up posts covering specific integration topics in more depth. If you would like a hand mapping your migration or untangling an existing configuration, that is exactly the kind of work we do.
Frequently asked questions
Oracle retired the legacy Salesforce integration in January 2021 and no longer supports it. While it may still run, you can no longer edit its configuration, and any actions you pause or disable cannot be reactivated — which is why migrating to the new Salesforce Integration App is important.
Download it from the Oracle Marketplace. Once installed it lives within Eloqua under Apps > Salesforce Integration > Config, where the whole configuration is managed in one window. The old dedicated 'Integration' section becomes redundant after you migrate.
Actions send data from Eloqua to Salesforce; Imports pull data from Salesforce into Eloqua. Each one maps a single Salesforce object to a single Eloqua object, so you build up a set of actions and imports to cover your daily synchronisation between the two platforms.
Salesforce is an accept-none integration, so one field that errors can stop an entire sync. Creating a LITE action that syncs only the minimum critical data, followed by a FULL action for everything else, means a stray data error can't block your mission-critical information from getting through.
Imports can run as frequently as every 15 minutes or as slowly as every 24 hours. You can choose which days each call runs, use Salesforce SQL (SSQL) to control the conditions that trigger them, and run any call manually to test it.
Yes. The Connections section lets you set up multiple connections at once, each with its own users, roles and permissions. That is useful for separating teams or data types, and for complex organisations that need to partition what each Salesforce user can edit or process.