# How to add Microsoft Teams to IFS Cloud

> Source: https://netray.co/integrations/ifs-cloud-microsoft-teams
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Integrations

## Short answer

To connect Teams to IFS Cloud, build a Teams bot or workflow that receives IFS Business Events through IFS Connect and posts adaptive cards, then calls IFS projections as the approving user when a button is pressed. Entra ID provides sign-in, and the card payload carries only what the user is allowed to see.

## System

IFS Cloud

## Capability

microsoft-teams

## Intro

Many IFS Cloud shops already live in Microsoft 365. Planners, buyers and maintenance leads spend the day in Teams and Outlook, and open Aurena only for specific tasks. When an IFS event needs a person, the usual route is an email notification that gets buried, or a manual message from a coordinator who watched a Lobby page.

Teams can close that loop inside the tool people already have open: a channel for shop order shortages, a direct message for an approval, a card with the three numbers a manager needs and two buttons. The hard part is not drawing the card. It is mapping Teams identities to IFS users, deciding which actions are safe to execute from a button, and surviving IFS upgrades without silently breaking the flow.

This page covers the realistic design using projections, Business Events and IFS Connect, with notes for customer-managed IFS and for tenants where Teams is the only approved collaboration tool.

## Use Cases

### Requisition and purchase order approvals

**Description:** Approvers get an adaptive card with supplier, amount, account and budget remaining, and approve or reject without opening Aurena.

### Shop order shortage channel

**Description:** A planner channel receives a card each time a material shortage appears on a released shop order, with an Acknowledge button and a link to the order.

### Maintenance work request triage

**Description:** New work requests from operators post to a maintenance channel. A lead assigns, rejects or requests more information using card actions.

### Quality nonconformance escalation

**Description:** When a nonconformance is raised against a receipt or shop order, notify the quality group and the owner with severity and affected lots.

### Project cost overrun alerts

**Description:** Project managers get a message when committed cost passes a threshold on a project activity, with a button to request a forecast review.

### Daily digest in a team tab

**Description:** A scheduled message summarizes late customer orders, open work tasks and expiring certificates for the morning stand-up.

## System Surface

Projections: the OData REST layer under the projection/v1 path is how the bot reads order, task and approval data and executes actions. Entity and action names differ by area and release, so confirm in API Explorer.

Business Events and IFS Connect: events can be routed to a REST endpoint or queue so the bot service is notified without polling. Retry behavior comes from the Connect queue.

Approval and authorization data: IFS has its own approval routing for areas such as requisitions and orders. Decide whether Teams reads the pending approval list or only notifies.

Identity: IFS uses an OpenID Connect capable identity provider, and many customers federate it to Entra ID, so one person can be matched between Teams and IFS by user principal name or email.

Aurena deep links: card buttons can open the exact page for an order or task for anything too complex for a card.

## How It Works

### Decide bot versus workflow

**Detail:** A Teams bot built with the Bot Framework or Teams SDK gives full control. Power Automate or Teams Workflows covers simple notifications but is harder to audit for write-back.

### Register the app in Entra ID

**Detail:** Create the bot registration, set the redirect and consent model, and restrict who can install it. Use admin consent for the minimum Graph scopes.

### Map users

**Detail:** Store the mapping between the Teams user and the IFS person id. Never trust a display name in a card payload.

### Connect IFS events

**Detail:** Route chosen Business Events through IFS Connect to the bot's HTTPS endpoint, with a shared secret or mutual TLS.

### Build the cards

**Detail:** Create adaptive cards that show the minimum facts and carry an opaque action token that points to a server-side record.

### Execute actions as the approver

**Detail:** On a button press, validate the token, check the user still has the right, and call the projection with a service client plus an on-behalf-of reference, or with a delegated token where your IFS setup supports it.

### Update the card

**Detail:** Replace the card with the result and the timestamp so nobody approves twice.

## Example Flows

### Purchase requisition approval

**Trigger:** A requisition reaches the approver's step

**Steps:**

- Event arrives at the bot through IFS Connect
- Bot reads requisition lines via the projection
- Adaptive card posts to the approver with Approve, Reject and Open in IFS
- Approver presses Approve; bot validates the token and approver rights
- Bot calls the approval action and rewrites the card as Approved with time

**Result:** Approval time falls from days in an inbox to minutes, with the same IFS audit trail.

### Shortage acknowledgement

**Trigger:** A material shortage is detected on a released shop order

**Steps:**

- Event or poll identifies the shortage
- Card posts to the planner channel with part, quantity, need date and supplying orders
- Planner presses Take it
- Bot records the owner in a tracking table and edits the card

**Result:** Every shortage has a named owner before the shift starts.

### Work request triage

**Trigger:** An operator submits a maintenance work request

**Steps:**

- Notification lands in the maintenance channel
- Lead selects an assignee from a dropdown on the card
- Bot creates or updates the work task via projection
- Assignee receives a direct message with details

**Result:** Triage happens in the channel the team already watches.

## On Prem

Teams is a Microsoft cloud service, but the IFS side can stay private. Run the bot's backend in your network or private cloud, with IFS Connect calling it over a controlled path, and use outbound-only connections to the Bot Service where policy allows. Keep card contents to identifiers and the minimum business facts. If staff ask free-form questions in Teams, route them to an on-prem retrieval service backed by an open-weight model, so order data is answered from your IFS projections without leaving your environment.

## Security

- Match Teams users to IFS users through Entra ID claims, not names typed in a message.
- Use action tokens that expire and are single use, tied to the user and record.
- Apply the least-privilege IFS permission set to the bot's service client and log the on-behalf-of user on each call.
- Limit the app's availability with Teams app policies to the groups that need it.
- Avoid placing export-controlled details in channel messages that guests may read.

## Options

### Power Automate or Teams Workflows with IFS REST calls

**Fit:** Notifications and simple approvals with low audit needs

**Effort:** Days to a couple of weeks

### Custom Teams bot with IFS Connect

**Fit:** Approvals with write-back, per-user rights and card updates

**Effort:** Roughly six to ten weeks for a first set

### Partner delivery with Netray plus your IFS partner

**Fit:** Cards plus natural-language questions over IFS data, on-prem model

**Effort:** Phased, starting with one approval flow

## Pitfalls

- Letting any channel member press an approval button; always check the presser against the approval step.
- Posting entire order details to broad channels.
- Ignoring card versioning, so old cards stay clickable after the record changed.
- Hard-coding projection names that change across IFS Cloud releases, and not retesting after each update.
- Skipping a dead-letter queue, which loses events when the bot is down.

## Faq

### Is there a standard IFS Cloud and Teams connector?

**Answer:** IFS and Microsoft both offer collaboration features, and some links may exist for specific modules in your release. We cannot confirm one covering approvals and alerts for every area, so check your IFS documentation, then decide whether a custom bot is warranted.

### Can approvals in Teams be audited in IFS?

**Answer:** Yes, if the bot executes the approval through IFS projections as an identified user, IFS records the action as usual. Also log the Teams message id and token in your own table, so you can show who pressed what and when.

### Do we need Power Automate or a full bot?

**Answer:** Use Power Automate for simple notifications. Use a bot when you need per-user rights checks, card updates after action, retries and a clean audit trail. The line is usually whether a button changes IFS data.

### How do we handle users who exist in Teams but not IFS?

**Answer:** Treat them as read-only or block the action. The mapping table should return no IFS person for them, and the bot should answer politely that the request cannot be performed instead of falling back to a shared account.

### Can Teams questions be answered from IFS data on-prem?

**Answer:** Yes. A retrieval service reads IFS projections and approved documents, and an open-weight model hosted on your GPUs writes the answer. The bot only relays text, and the service enforces the asking user's IFS rights.

## Search terms

IFS Cloud Microsoft Teams integration, Teams bot for IFS Cloud, IFS Cloud Teams approvals, IFS adaptive cards, IFS Cloud Teams notifications, IFS Connect Teams, IFS Applications Microsoft Teams, IFS Cloud Entra ID Teams, IFS work task Teams

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
