How to connect Microsoft Teams to Oracle E-Business Suite
Short answer
Connect Teams to Oracle EBS with a bot or Power Automate flow that receives Workflow notifications and Alert output from an internal relay, renders them as adaptive cards, and returns approval clicks to EBS through the Workflow notification API or ISG. Entra ID identity is mapped to the FND user so actions run as the right person.
Many EBS organisations already moved email, chat and meetings to Microsoft 365 but still ask approvers to log in to an OAF worklist or answer a Workflow email. Notification fatigue is real: requisition approvals wait days because the email is one of two hundred that morning.
Teams gives you a place where managers already are, with cards that can carry buttons. The integration is not complicated, but it needs careful identity mapping and a decision about where the bot runs when EBS sits on a private network.
This page covers the EBS side of that decision for 12.1.3 and 12.2.x and the Microsoft side only as far as it affects design.
What teams use it for
Approvals as adaptive cards
Requisition, expense report and journal approval notifications become cards with key fields and Approve, Reject and Request Info actions.
Plant channel alerts
Quality holds, failed receiving inspections, stock-outs on critical items and urgent work orders post to a plant or cell channel with an owner tagged.
Concurrent request status
Finance posts month-end close progress by pushing completion and error status of key concurrent programs such as Create Accounting and Payables Transfer to GL into a channel.
Buyer exception digest
A morning card summarising POs past due, approvals pending and invoices on hold per buyer, built from a custom view.
Ask EBS in a Teams chat
A bot that answers read-only questions such as on-hand by subinventory or PO status, grounded in queries to a reporting replica.
Oracle E-Business Suite integration surface
- Workflow Business Event System and the Notification Mailer: both can be extended with a custom subscription that forwards the notification ID, recipient and message body to an internal relay.
- WF_NOTIFICATIONS and WF_NOTIFICATION package: the supported route to respond to a notification, including the result code that matches the response attributes in the Workflow item type.
- Integrated SOA Gateway: REST or SOAP wrappers over public PL/SQL APIs published in the Integration Repository, used for read lookups and for supported transactions.
- Oracle Alert: event and periodic alerts can write rows to an outbound table or call a script when a condition is found.
- FND_USER, FND_USER_RESP_GROUPS and the user email field: used to map an Entra ID user principal name to an EBS user, noting that EBS may also be integrated with Oracle Access Manager or another SSO layer.
- Concurrent manager tables such as FND_CONCURRENT_REQUESTS for completion and error status queries, with exact columns confirmed per version.
How it works
- 1
Decide on the Teams entry point
Choose between incoming webhook style posts for alerts only, Power Automate flows for simple approvals, or a Teams bot with adaptive cards for full two-way handling.
- 2
Stand up an internal relay
Place a service inside the network that can read the EBS outbound staging table and has outbound HTTPS to Microsoft endpoints. Keep EBS itself unreachable from outside.
- 3
Create the EBS capture layer
Add a Business Event subscription or Alert action that writes notification ID, recipient, subject and key fields to the staging table. Do not alter the standard Workflow definitions beyond the subscription.
- 4
Map identities
Maintain a table linking Entra ID object IDs to FND_USER names, and require that the signed-in Teams user matches the notification recipient before any action is accepted.
- 5
Render and send cards
The relay builds an adaptive card per notification type and posts it to the user or channel through the bot framework or Graph, keeping a record of the message ID.
- 6
Return actions to EBS
On a button click, the bot validates the user, then calls a PL/SQL wrapper that responds to the Workflow notification, or an ISG service for supported transactions.
- 7
Update the card and log
After the response, replace the card with a confirmation and log the outcome so the worklist and Teams never disagree.
Example flows
Capex requisition approval
Trigger: A requisition over a threshold reaches a manager in the approval chain.
- Subscription writes the notification and requisition summary to staging.
- Relay posts an adaptive card with requester, amount, account and justification.
- Manager selects Approve with an optional comment.
- Bot validates the user and responds to the notification.
- Card changes to Approved and the next approver is notified.
Result: Approval cycle time drops because it is no longer tied to opening the OAF worklist.
Failed receiving inspection
Trigger: An inspection result of reject is recorded in Receiving or Quality.
- A custom alert selects the rejected receipt.
- The relay posts to the quality channel with PO, item, quantity and supplier.
- A quality engineer clicks Take Ownership.
- The relay records the owner in a custom table and posts a thread reply.
Result: The team sees who owns each rejection without chasing email.
Keeping data on-prem
With EBS on-prem the cleanest pattern is a one-way outbound relay: EBS writes to a staging table, an internal service polls it and calls Microsoft endpoints over HTTPS, and the Teams bot endpoint is reached through a reverse proxy that only forwards Microsoft-signed calls. Card content is stored in Microsoft 365, so keep it to identifiers, amounts and links back to your internal OAF pages rather than drawings or customer specifics. If Teams is itself restricted for a defense or aerospace programme, a GCC or similar sovereign tenant may be required, and the same relay design applies with different endpoints. Any language model used for the Ask EBS bot can run on your own servers and query a read-only copy of the data.
Security checklist
- Authenticate the bot with Entra ID and validate the token on every inbound call.
- Enforce user match between the Teams identity and the Workflow recipient before responding.
- Use a reporting replica or read-only database account for lookups, never the APPS account.
- Limit card content for export-controlled or customer-restricted programmes and link rather than embed.
- Log every action with notification ID, user, time and outcome for audit.
Ways to get it done
Power Automate with an on-premises data gateway
Effort: Days to a couple of weeks per flow; limited error handling.
Good for alert posts and simple approvals when the gateway can read an exposed view or service.
Custom Teams bot with a relay
Effort: One to two months for the first approval types.
Fits multi-step approvals, identity checks and richer cards.
Partner build with Netray
Effort: Scoped pilot, then extend flow by flow.
Fits cases where you also want an Ask EBS assistant running on private models.
Pitfalls
- !Responding to a Workflow notification as the wrong user breaks approval segregation, so identity mapping must be exact.
- !Delegation and vacation rules in Workflow may route to someone other than the original recipient; read the current recipient at send time.
- !Cards that show too many fields get ignored; keep to the decision data and link to the rest.
- !Concurrent request error messages can contain data you do not want in a shared channel, so filter them.
- !A patch to the Workflow item type can change result codes, so retest approval responses after each patch.
Frequently asked questions
Can approvals in Teams replace the EBS worklist?
They can complement it. The notification still lives in WF_NOTIFICATIONS, and a Teams action calls the same response routine, so the worklist, email and Teams all stay consistent. Keep the worklist as the fallback and for complex approvals.
Do I need to expose EBS to the internet?
No. Use an outbound-only relay that reads from a staging table or calls an internal service. Only the bot endpoint needs to be reachable by Microsoft, and it should sit behind a reverse proxy that validates the callers.
Does this work on 12.1.3?
Yes. Business events, Workflow and Oracle Alert exist there. The main difference is ISG REST availability, so on 12.1.3 you may wrap supported APIs in PL/SQL or use SOAP services instead.
Can the bot answer questions about inventory?
Yes, with read-only queries against a reporting replica or exposed views. A language model can translate the question into a vetted query, but production setups usually start with a fixed set of questions and add free-form later.
How is this different from Teams email notifications?
Email into Teams is a mailbox view. A bot posts structured cards with actions, verifies the user and writes the result back to EBS. That reduces the time between a request arriving and an approver acting on it.
Want Microsoft Teams working on your Oracle E-Business Suite?
A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.
Get a free assessment