Skip to main content

Connecting Oracle Fusion ERP and Oracle EDM to Caddi

As of Sep 25, 2026

This guide sets up a connection between your Oracle environment and Caddi, so Caddi can work with the Oracle REST APIs on each user's behalf.

There are two parts. Steps 1 to 6 are done once, by an administrator, and register Caddi with your Oracle environment. After that, each person who wants to use the integration connects their own Oracle account - a single click, covered in Step 7. Caddi acts as that person, with their permissions, and never with more.

The one-time setup takes about 20 minutes and happens mostly in the OCI Console. The same steps cover Oracle Fusion ERP (Financials) and Oracle EDM; where they differ, both are shown.

Before you start

Steps 1 to 6 need one person with administrator access to the OCI Identity Domain that fronts your Oracle environment — specifically the ability to create an application under Integrated applications and to edit the Fusion or EDM resource application. In most organisations this is an Oracle or IAM administrator, not a Fusion functional lead.

Your end users need nothing from this section. They do not need OCI Console access, and they are not involved until Step 7, where each of them connects their own Oracle account.

One value comes from Caddi rather than Oracle — the redirect URL you register in Step 2:

https://app.trycaddi.com/oauth-callback

If you run separate production and test environments, treat them as two separate exercises. Oracle scopes a token to one environment, so each one needs its own application and its own connection in Caddi.

What Caddi needs

Five values. The steps below produce them in this order, and you enter all five into one form at the end.

Value

Looks like

Where it comes from

Identity Domain Host

idcs-abc123.identity.oraclecloud.com

Step 1

Client ID

A long alphanumeric string

Step 2

Client Secret

A generated secret, shown once

Step 2

Scope

urn:opc:resource:fa:instanceid=12345678urn:opc:resource:consumer::all offline_access

Step 4

Fusion Host / EDM Host

acme.fa.us2.oraclecloud.com

Step 5

The identity domain host and the Fusion or EDM host are different servers. One issues tokens, the other serves the API. Mixing them up is the most common setup mistake, so Step 5 covers both explicitly.

Step 1 - Find your identity domain

This is the server that will issue tokens to Caddi.

  1. Sign in to the OCI Console.

  2. Open the navigation menu and go to Identity & Security → Domains.

  3. Select the identity domain associated with your Fusion or EDM environment. If several are listed, it is the one your Fusion users sign in through.

  4. On the domain's details page, find Domain URL and copy it.

It looks like https://idcs-abc123.identity.oraclecloud.com.

Caddi wants the host only, so drop the https:// and any trailing slash when you enter it later. Record it as:

idcs-abc123.identity.oraclecloud.com

Stay on this domain for Steps 2 to 4.

Step 2 - Register the confidential application

Still in your identity domain:

  1. Go to Integrated applications → Add application.

  2. Choose Confidential Application and continue.

  3. Give it a name your team will recognise, such as Caddi — Fusion ERP or Caddi — EDM.

  4. On the OAuth configuration page, under Client configuration, select Configure this application as a client now.

Then set these, exactly:

Setting

Value

Allowed grant types

Authorization code and Refresh token — both

Allow token refresh

Ticked

Redirect URL

Client type

Confidential

Save, then copy the Client ID and Client Secret. The secret is shown once - store it somewhere safe before leaving the page.

Finally, make sure the application is activated. A newly created application is often left deactivated, and a deactivated application rejects every sign-in.

Two things worth pausing on

Both grants, not just one. Oracle's own Fusion documentation says Authorization code is "the only grant type required for this flow". That is true for signing in once, but not for staying connected. Without Refresh token and Allow token refresh, your connection authorises successfully and then stops working about an hour later with no way to renew it. This is the single most common cause of a connection that works on Monday and is dead on Tuesday.

The redirect URL must match exactly. Oracle compares it character for character. A trailing slash, http instead of https, or a different subdomain will all fail at sign-in. Paste it, do not retype it. Oracle also rejects relative URLs, and plain http:// addresses are refused unless an administrator has explicitly allowed them.

Step 3 - Authorize the resource

The application now exists, but it cannot reach Fusion or EDM until you grant it the right resource.

  1. On the same application's OAuth configuration page, find Token issuance policy.

  2. Under Authorized resources, select Specific rather than All.

  3. Click Add resources → Add scope.

  4. Pick your resource from the list:

    • For Fusion ERP, the Oracle Applications Cloud (Fusion) service

    • For EDM, your Cloud EPM or EDM service

  5. Select the scope offered for that resource and add it.

  6. On the resource itself, tick Allow token refresh as well.

Save.

That last point catches people out: Allow token refresh has to be enabled in two places - on the client application you created in Step 2, and on the resource you just added here. Enabling only one of them produces the same symptom as enabling neither.

Step 4 - Copy your scope

The scope tells Oracle which environment the token is for. Copy it from the console rather than typing it. It is one continuous string that looks like two joined together, and adding a space where the seam appears will break the connection.

Fusion ERP

  1. In your identity domain, go to Oracle Cloud Services.

  2. Select the Oracle Applications Cloud (Fusion) service.

  3. Open the Application Information tab.

  4. Find the property IDCS_CONNECTOR_CLIENT_SCOPE and copy its value.

It looks like this — note there is no space in the middle:

urn:opc:resource:fa:instanceid=12345678urn:opc:resource:consumer::all

EDM

  1. Open the application you created in Step 2.

  2. Go to OAuth configuration → Token issuance policy → Resources.

  3. Copy the scope shown beside the EDM resource you added in Step 3.

It looks like this:

urn:opc:serviceInstanceID=12345678urn:opc:resource:consumer::all

Then add offline_access

Whichever product you are on, add one space and the word offline_access to the end. That single word is what allows Caddi to renew the connection without asking your users to sign in again every hour.

The finished value, for Fusion ERP:

urn:opc:resource:fa:instanceid=12345678urn:opc:resource:consumer::all offline_access

The only space in that string is the one before offline_access. If you see another space anywhere, the value has been mistyped or reflowed by a text editor — copy it again.

Step 5 - Collect your host

This is the address of the environment itself, not the identity domain. It is the host you see when you sign in to Fusion or EDM in a browser.

Fusion ERP

Take the host from your Fusion URL, without https:// and without any path:

acme.fa.us2.oraclecloud.com

EDM

Take the host from your EDM URL, without https:// and without the /epm/rest or /epmcloud path. Two shapes are in circulation depending on when your environment was provisioned:

acme-prod.epm.us-phoenix-1.ocs.oraclecloud.com
epm-acme.epm.us2.oraclecloud.com

Either is fine — use whichever matches your environment.

If you have both production and test, note that these are different hosts and need separate Caddi connections. A token issued for one will not work against the other.

Step 6 - Enter it in Caddi

In Caddi, open the connector - Oracle Fusion ERP or Oracle EDM - and fill in the five fields:

Field

What to paste

Identity Domain Host

The host from Step 1

Fusion Host / EDM Host

The host from Step 5

Client ID

From Step 2

Client Secret

From Step 2

Scope

The finished value from Step 4, including offline_access

Save. Caddi checks the scope at this point and will refuse it if offline_access is missing, so a save that goes through means that part is right.

That completes the one-time setup. The connector is now available to your team, but nobody is connected to it yet.

Step 7 - Each user connects their own account

This part is done by every person who wants to use the integration, including the administrator who did Steps 1 to 6. It takes one click.

  1. In Caddi, open the Oracle connector and click Connect.

  2. You are redirected to Oracle. Sign in with your own Oracle credentials.

  3. Approve the access request.

  4. You are returned to Caddi, and your connection is live.

Each person's connection is separate and carries their own Oracle permissions. Caddi can see and change exactly what that person could see and change in Fusion or EDM directly — no more. Two people using the same Caddi workspace may legitimately get different results, because Oracle is applying their individual roles.

Nobody needs OCI Console access for this step, and nobody needs the client ID, client secret or scope. Those were entered once in Step 6 and are not shown to users.

One timing note: Oracle's authorisation code expires after three minutes. If you start signing in, get distracted, and come back later, it will fail. Start again and complete it in one go.

Did this answer your question?