Microsoft TeamsInfor SyteLine (CloudSuite Industrial) Agent view

How to add Microsoft Teams to Infor SyteLine

Short answer

Build a Teams bot or workflow that receives SyteLine events and posts adaptive cards to channels or people. Approvers click buttons, the bot validates identity through Entra ID, and writes decisions back using IDO methods or ION. The design differs for CloudSuite Industrial and for on-prem installs, mainly in how the bot reaches SyteLine.

Many SyteLine companies live in Microsoft 365. Planners, buyers and quality engineers sit in Teams all day, but the work that needs their attention, a stuck PO, an MRP exception, an engineering change waiting on sign-off, is trapped behind a SyteLine login. Someone has to go find it, so it waits.

Teams is a good fit for the approval and alert pattern: structured cards, named people, a channel that keeps the discussion next to the decision. SyteLine gives you what you need underneath it, because workflow-style approvals and the Application Event System can emit a signal whenever something needs a human.

The goal here is not to move SyteLine into Teams. It is to bring the five or six interrupts per day that actually need a decision to where people already are, and to record the outcome properly in the ERP.

What teams use it for

Purchase requisition and PO approval cards

A requisition above a threshold posts an adaptive card to the approver with vendor, item, amount and budget note. Approve or Reject writes back and the buyer is notified in the same thread.

MRP exception digest to the planning channel

After the nightly planning run, a card lists the top late-demand items with the pegged customer orders and suggested planners, so the morning meeting starts from a ranked list.

Quality hold and NCR alerts

A lot placed on quality hold or a new nonconformance sends a card to the quality channel with the item, lot, job and a link to the SyteLine record.

Engineering change notifications

When a BOM or routing change is released, affected planners and buyers are tagged with the changed item and effective date.

Credit hold release requests

A customer order blocked by credit posts to finance with exposure and past-due data. The controller releases or declines from the card.

Ask a question from Teams

A person types 'on hand for item 10-4412' to the bot and gets a read-only answer built from the item and location IDOs, subject to their own permissions.

Infor SyteLine (CloudSuite Industrial) integration surface

  • IDO REST service: read item, PO, customer order, job and vendor data and invoke IDO methods. Teams actions translate to these calls through your bot backend.
  • Application Event System (AES): event handlers on IDO and form events can call outbound actions, which is the most direct way to raise 'approval needed' events from SyteLine.
  • Infor ION and ION API Gateway: on CloudSuite Industrial this is the standard route, with OAuth2 service accounts, and BODs or ION workflows can trigger outbound calls. Names and capabilities depend on your Infor OS version.
  • Infor Process Automation (IPA) or ION Workflow, where licensed: can model approvals natively and call out to a webhook, so Teams becomes the notification and click surface for an existing workflow.
  • User mapping: SyteLine user IDs are separate from Entra ID accounts, so you need a mapping table keyed on email or employee number, or federated single sign-on through Infor OS.

How it works

  1. 1

    Register a Teams app and bot in Entra ID

    Create the bot registration, set it to single tenant, and publish the app to your org catalog. Use Microsoft's Bot Framework or Teams SDK, or Power Automate workflows for simple card posts.

  2. 2

    Stand up the bot backend near SyteLine

    Host it in Azure or inside your network, whichever can reach the IDO REST service. It holds the SyteLine service credentials and never exposes them to Teams.

  3. 3

    Define the event contract

    Choose a handful of events (approval needed, hold placed, exception raised) with a small JSON payload of keys only. Fetch the display data from IDOs when composing the card.

  4. 4

    Wire SyteLine to emit events

    Use AES handlers, an IPA workflow step, or ION outbound messaging to POST the payload to the bot. Add retries and idempotency keys because Teams and networks fail occasionally.

  5. 5

    Compose adaptive cards with action buttons

    Cards carry a signed token that identifies the SyteLine document and intended action. Keep buttons to decisions that map to existing SyteLine status changes.

  6. 6

    Authorize on click

    When someone presses Approve, resolve their Entra ID identity, map to a SyteLine user, and check that they hold the approval authority for that amount and site before calling the IDO method.

  7. 7

    Update the card and log the result

    Replace the card with the outcome and approver name, and write an audit record. Close the loop to the requester in the same conversation.

Example flows

PO approval over a threshold

Trigger: A buyer submits a purchase order that exceeds their limit and an approval event is raised.

  1. Event reaches the bot with PO number and approver user ID.
  2. Bot reads header, lines, vendor and open commitments through IDO REST.
  3. It posts an adaptive card to the approver with Approve, Reject and Ask buyer.
  4. On click, it verifies the approver's authority in SyteLine and invokes the approval method.
  5. The card updates to show the decision and the buyer receives a notification.

Result: Approvals stop waiting on someone logging in, and the decision trail lives in SyteLine and Teams.

Morning shortage review

Trigger: A scheduled job runs after the nightly MRP regeneration.

  1. Query planned and firm orders with past-due or short coverage for the highest-priority customer orders.
  2. Group by planner and buyer using the item's assigned planner field.
  3. Post one digest card per planning channel with the top items and links.
  4. Planners reply in thread with actions, and the bot logs comments to the item notes if configured.

Result: The planning stand-up starts with a ranked exception list instead of everyone opening the same SyteLine form.

Keeping data on-prem

A Teams bot always needs an HTTPS endpoint Microsoft can reach, but that does not mean exposing SyteLine. Put the bot in a DMZ or Azure virtual network, allow it to call the IDO REST service over a private route (VPN, ExpressRoute or a gateway), and keep SyteLine itself closed to the internet. Card content passes through Microsoft 365, so for controlled-data environments keep cards to identifiers and decisions, and use GCC or GCC High tenants where your obligations require them. If you add an AI assistant to the bot, host the model on your own hardware and let it call only the same read-only tools.

Security checklist

  • Authenticate users through Entra ID and map explicitly to SyteLine users, never trust a display name in a card payload.
  • Sign action tokens with a short expiry so cards cannot be replayed or forwarded to authorize someone else.
  • Scope the bot's SyteLine service account to specific IDOs and methods, and log every call with the Teams user.
  • Post sensitive items such as cost or margin only to private chats or restricted channels, not general ones.
  • Review Teams retention and eDiscovery settings since cards and replies become business records.

Ways to get it done

Power Automate flow posting cards from exported data

Effort: Days, but limited identity and audit handling.

Simple alerts with no write-back, low volume.

Custom Teams bot with Bot Framework and IDO REST

Effort: A few weeks including identity mapping and tests.

Approvals that must be authorized and recorded in SyteLine.

Partner build with Netray

Effort: Scoped after reviewing your approval flows and hosting model.

When you also want a natural-language assistant in Teams that answers ERP questions with the user's own permissions.

Pitfalls

  • !Approving through a shared service identity so the audit trail shows the bot instead of the person.
  • !Putting full ERP rows in cards and leaking cost data to a wide channel.
  • !Skipping idempotency so a retried event posts three duplicate approval requests.
  • !Not handling delegation and out-of-office, so approvals sit with someone on leave.
  • !Building approval logic in the bot instead of reusing SyteLine's own authority limits, which then drift apart.

Frequently asked questions

Does SyteLine integrate with Teams out of the box?

Not with a ready approval bot that I can name. Infor OS and Ming.le style products may offer notification features depending on version, so check your entitlements. In practice most teams build a bot or use Power Automate on top of the IDO REST service or ION.

Can I approve SyteLine transactions from my phone in Teams?

Yes, adaptive cards work in the Teams mobile app. The click is sent to your bot, which verifies you and calls the SyteLine approval method. The security depends on identity mapping and short-lived action tokens, not on the phone.

What if we run SyteLine on-premises only?

You still can. Host the bot where it can reach the IDO REST service privately and expose only the bot endpoint Microsoft needs. SyteLine does not have to be reachable from the internet.

Should we use Power Automate or write code?

Power Automate is enough for one-way alerts. If approvals must be authorized per user, retried safely and logged back into SyteLine, a coded bot is more reliable and easier to audit.

Can an AI assistant live in Teams for SyteLine questions?

Yes, as a bot that calls read-only SyteLine tools under the asking user's permissions. It can use a cloud model or a private on-prem model, and any write-back should still go through an approval card.

Want Microsoft Teams working on your Infor SyteLine (CloudSuite Industrial)?

A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.

Get a free assessment