ml-connector
Oracle E-Business SuiteMicrosoft Dynamics 365 Sales

Oracle E-Business Suite and Microsoft Dynamics 365 Sales integration

Oracle E-Business Suite holds your financial records and vendor master, while Dynamics 365 Sales tracks your deals and customer relationships. Connecting them keeps your sales team working with the same customer and vendor data as your finance team. When a new customer is created in EBS, it appears in Dynamics 365 Sales as an account. When a vendor is created in EBS, the sales team can see it in their lookups. Without the connection, salespeople work with stale or duplicate customer records, and reconciliation between the two systems becomes manual and error-prone.

How Oracle E-Business Suite works

Oracle E-Business Suite exposes customers, vendors, sites, and invoices through the Integrated SOA Gateway (ISG), a database-level REST or SOAP service deployed at a customer-hosted endpoint with a non-standard URL pattern. Authentication uses HTTP Basic Auth or a session token obtained via the login endpoint, along with required application context headers such as organization ID, responsibility, and language. EBS has no modern webhook system, so integration requires polling scheduled views like HZ_PARTIES and PO_VENDORS filtered by last update date with limit and offset pagination. Session tokens expire in 30 to 60 minutes and must be refreshed on 401 responses.

How Microsoft Dynamics 365 Sales works

Microsoft Dynamics 365 Sales exposes accounts, contacts, leads, opportunities, and orders through the Dataverse Web API using OData v4.0 REST endpoints at a Microsoft-hosted base URL. All requests require OAuth 2.0 authentication via Microsoft Entra ID using client credentials for server-to-server integrations. Dynamics 365 Sales supports webhooks via the Dataverse Event Framework with a 256 KB payload limit and automatic retry for 502, 503, and 504 errors, but also works well with polling. OAuth tokens expire in approximately 60 minutes and must be refreshed before expiry.

What moves between them

Customer and vendor records flow from Oracle EBS into Dynamics 365 Sales on a polling schedule. Parties and customers in EBS (HZ_PARTIES and HZ_CUST_ACCOUNTS) map to Dynamics 365 Sales accounts. Vendors and vendor sites (PO_VENDORS and PO_VENDOR_SITES_ALL) also map to accounts with a vendor flag or separate vendor account type. Contacts are created from party relationships. Primary site addresses become the account billing address in Dynamics 365 Sales. The sync is one direction only, as Dynamics 365 Sales is a CRM with no AP ledger or vendor master capability.

How ml-connector handles it

ml-connector polls Oracle EBS through its ISG REST gateway, authenticating with HTTP Basic Auth and managing session token refresh on 401 errors. It extracts party, customer, and vendor records filtered by last update date and pagination. On the Dynamics 365 Sales side, ml-connector uses OAuth 2.0 client credentials via Microsoft Entra ID to obtain an access token, then posts each customer or vendor record as a new account or updates an existing account by external ID. Mapping from EBS party type to Dynamics 365 Sales account type is configurable per customer. EBS sites and addresses map to Dynamics 365 Sales account address records. Because EBS is poll-only with no webhooks, ml-connector runs on a schedule you define, typically daily or after key financial batch jobs complete. Failed records are stored with full error details so they can be replayed without re-fetching the entire master.

A real-world example

A mid-market manufacturing business runs Oracle EBS for order-to-cash, procurement, and financial accounting, and uses Dynamics 365 Sales to manage deals and customer relationships across a field sales team. Before the integration, the sales team manually looked up customers in EBS at month-end for account reconciliation, and new customers created in EBS were not visible in Dynamics 365 Sales until a manual export and import. When a vendor became a customer, the sales team would create a duplicate account because they had no way to know the party already existed in EBS. With Oracle EBS and Dynamics 365 Sales connected, every new customer and vendor in EBS appears in the CRM within hours, salespeople always see the same account data as the finance team, and month-end reconciliation is automated.

What you can do

  • Sync customers and vendors from Oracle EBS into Dynamics 365 Sales as accounts, with automatic updates when EBS records change.
  • Map EBS party and site addresses to Dynamics 365 Sales account and contact records so the sales team sees the full address book.
  • Refresh session tokens and OAuth credentials automatically to keep the sync running without manual re-authentication.
  • Handle EBS polling on a schedule tied to your financial batch jobs, with full error details for replay if a record fails.
  • Create and update Dynamics 365 Sales account relationships from EBS vendor and customer hierarchies so sales sees the supply chain context.

Questions

Does the integration work with on-premises Oracle EBS or only cloud?
Oracle EBS E-Business Suite R12.2 is an on-premises product. The integration works with any EBS instance that has the Integrated SOA Gateway deployed and accessible over HTTPS. ml-connector connects to the customer-hosted ISG endpoint using HTTP Basic Auth or session tokens, so the EBS instance can be on-premises, in a private cloud, or in a public cloud infrastructure.
Why does the integration poll EBS instead of using webhooks?
Oracle EBS has no modern webhook system for external integrations. The legacy Workflow Business Event System exists but requires Oracle SOA Suite or Oracle Integration Cloud as middleware, plus manual configuration per event by an EBS administrator. Polling is more reliable and requires no additional software, so ml-connector fetches customer and vendor records on a schedule filtered by last update date.
How are EBS vendors and customers mapped to Dynamics 365 Sales accounts?
Customers and prospects in EBS (HZ_CUST_ACCOUNTS) become Dynamics 365 Sales accounts. Vendors (PO_VENDORS) are also created as accounts but tagged or typed separately so the sales team can distinguish suppliers from customers. Sites and addresses from EBS are mapped to Dynamics 365 Sales account address records. The mapping is configurable per customer to match your sales process.

Related integrations

Connect Oracle E-Business Suite and Microsoft Dynamics 365 Sales

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started