ml-connector
Oracle E-Business SuiteMicrosoft Teams

Oracle E-Business Suite and Microsoft Teams integration

Oracle E-Business Suite manages your financials, procurement, and supply chain. Microsoft Teams coordinates your team and approvals. Connecting the two brings PO and invoice notifications into the same channels where your team communicates, so approvers see what needs attention without checking a separate system. New invoices, PO receipts, and vendor status changes post to Teams automatically on a schedule you control.

How Oracle E-Business Suite works

Oracle E-Business Suite (R12.2) exposes financials, procurement, HR, and supply chain through the Integrated SOA Gateway (ISG), which publishes database-level APIs as REST or SOAP web services from the Integration Repository. Each customer deploys their own ISG on a customer-hosted hostname and port. Authentication uses HTTP Basic credentials or a session token obtained via login endpoint, with required application context headers for responsibility, organization, and language. Key entities include AP_INVOICES_ALL, PO_HEADERS_ALL, PO_LINES_ALL, PO_VENDORS, GL_CODE_COMBINATIONS, and GL_JE_HEADERS. EBS has no modern webhooks and no vendor-managed API gateway, so integrations must poll open interface views filtered by LAST_UPDATE_DATE.

How Microsoft Teams works

Microsoft Teams is a cloud collaboration platform accessed through Microsoft Graph REST API. Authentication uses OAuth 2.0 with client credentials flow via Microsoft Entra ID, requiring tenant_id, client_id, and client_secret. Teams can receive messages through chatMessage creation and can register webhook subscriptions via Graph change notifications for team, channel, and user events. Subscriptions expire in three days and must be renewed. Teams is communications-only and has no native ERP objects such as invoices, POs, GL accounts, or vendors, making it suitable for notifications and approvals rather than data sync.

What moves between them

Records flow from Oracle E-Business Suite into Microsoft Teams. ml-connector polls EBS open interface tables for new invoices, purchase orders, receipts, and vendor records on a schedule aligned with your accounting cycle. Newly matched records are transformed and posted as formatted chat messages to designated Teams channels. The direction is one-way: Teams sends no data back to EBS.

How ml-connector handles it

ml-connector stores EBS HTTP Basic credentials encrypted and accepts the customer ISG hostname and port, since EBS publishes no fixed URL. It polls EBS open interface views on your chosen schedule, reading AP_INVOICES_ALL, PO_HEADERS_ALL, and related tables filtered by LAST_UPDATE_DATE and pagination limits. Each new record is enriched with vendor names, cost centers, and approval status from EBS GL and PO tables. ml-connector then authenticates to Microsoft Graph with OAuth 2.0 client credentials and posts formatted chat messages to the designated Teams channel via the chatMessage endpoint. Since EBS writes are asynchronous (insert to interface table, then wait for concurrent program import), ml-connector polls to check for completion. EBS session tokens expire in 30 to 60 minutes and trigger re-authentication on 401 responses. Graph subscriptions are registered and renewed before expiry to maintain webhook delivery for Teams presence and channel changes.

A real-world example

A mid-market manufacturing company runs Oracle E-Business Suite for procurement and general ledger and uses Microsoft Teams for cross-functional communication across procurement, accounting, and operations teams. Before the integration, procurement staff reviewed EBS daily for new POs and invoices, then manually posted summaries to Teams channels so the accounting team knew what had arrived. With EBS and Teams connected, new purchase orders and three-way matched invoices appear automatically in Teams channels, tagged with vendor name, cost center, and approval status. The accounting team sees exactly what is coming, when it is due, and which invoices are ready to post without switching between systems.

What you can do

  • Post new Oracle EBS invoices, POs, and vendor records to Microsoft Teams channels with cost center and approval status.
  • Authenticate Oracle EBS with HTTP Basic credentials and ISG hostname, and Teams with OAuth 2.0 via Entra ID.
  • Poll EBS on your accounting schedule with pagination and LAST_UPDATE_DATE filtering to detect new records.
  • Enrich EBS records with GL account, vendor, and cost center details before posting to Teams.
  • Handle EBS session token expiry and Graph subscription renewal to maintain continuous notification delivery.

Questions

Can Microsoft Teams create or update records in Oracle EBS?
No. Teams is communications-only and has no ERP objects. ml-connector sends EBS data to Teams but does not write anything back to EBS. All PO and invoice creation happens in EBS; Teams receives read-only notifications.
How does ml-connector handle EBS authentication and the customer ISG hostname?
ml-connector stores EBS HTTP Basic credentials encrypted and accepts the full customer ISG hostname and port, since EBS has no fixed public URL. It also stores the application context headers (responsibility, organization, language) and re-authenticates on 401 token expiry.
What happens if a PO or invoice is created in EBS but Teams is unreachable?
ml-connector tracks the last polled LAST_UPDATE_DATE in EBS so it resumes from the same point when Teams becomes available. No record is lost, and the message is posted when the connection recovers.

Related integrations

Connect Oracle E-Business Suite and Microsoft Teams

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

Get started