ml-connector
Oracle PeopleSoftMicrosoft Teams

Oracle PeopleSoft and Microsoft Teams integration

Oracle PeopleSoft handles employee records, payroll, and human resources. Microsoft Teams keeps your teams connected and informed. Connecting the two sends critical HR events - new hires, terminations, role changes, and payroll exceptions - directly to Teams channels, so managers and HR teams see changes as they happen instead of discovering them later. The integration bridges the gap between your self-hosted PeopleSoft environment and cloud Teams, handling PeopleSoft's unique per-customer hostnames and authentication requirements.

How Oracle PeopleSoft works

Oracle PeopleSoft exposes employee records, job information, absence data, payroll events, invoices, purchase orders, and journal entries through REST APIs via RESTListeningConnector and SOAP Component Interfaces. Authentication uses HTTP Basic Auth with OPRID and password, or OAuth2 Bearer tokens on PeopleTools 8.58 and later. Each customer runs their own PeopleSoft instance on their own servers or Oracle Cloud Infrastructure, so the connector must know the unique hostname, port, and node name for each environment. PeopleSoft has no native webhooks but supports Integration Broker asynchronous publish/subscribe to push XML messages to external endpoints when business events occur. The recommended approach is polling with date-range filters to pull employee and payroll changes.

How Microsoft Teams works

Microsoft Teams is a cloud collaboration platform accessed through Microsoft Graph REST API. Teams can receive and display messages in channels, and supports webhooks via Microsoft Graph change notifications for resource updates. Authentication uses OAuth 2.0 with Microsoft Entra ID Client Credentials flow, requiring tenant ID, client ID, and client secret. Teams stores channels, messages, and users but is not an ERP data source - it serves as the notification and alert surface. Subscriptions for webhook change notifications expire after 3 days and must be renewed, and each Azure AD tenant can have up to 10,000 active Teams subscriptions.

What moves between them

Employee records, job changes, and payroll events flow one-way from Oracle PeopleSoft to Microsoft Teams. When ml-connector polls PeopleSoft and finds new hires, terminations, promotions, or payroll exceptions, it formats these events as messages and posts them to designated Teams channels. The integration runs on a schedule you control, typically hourly or daily depending on how quickly your HR team needs to see changes. No data flows back from Teams into PeopleSoft - Teams is a read-only notification endpoint.

How ml-connector handles it

ml-connector accepts the unique PeopleSoft hostname, port, and Integration Broker node name for your environment, along with HTTP Basic Auth credentials (OPRID and password) or an OAuth2 Bearer token if you run PeopleTools 8.58 or later. On the Teams side, the integration uses OAuth 2.0 with your Azure AD tenant, client ID, and client secret to authenticate and send messages to Teams channels. ml-connector polls PeopleSoft's employee directory, job records, and payroll banking data on a schedule, filters for new or changed records using date ranges, and formats the results as structured messages. When a new hire, termination, or payroll event is found, ml-connector sends a formatted notification to the Teams channel you specify. Because PeopleSoft has no idempotency keys at the API level, ml-connector tracks processed record IDs to prevent duplicate notifications. PeopleSoft's firewall-behind-customer architecture means the connector may need to access your instance through a reverse proxy or via a customer-approved whitelist. Each service operation in PeopleSoft must be explicitly activated by your PeopleSoft administrator in the Integration Broker console before ml-connector can call it.

A real-world example

A mid-sized professional services firm runs Oracle PeopleSoft for HR and payroll across three offices. Before the integration, when a new employee was hired or terminated in PeopleSoft, the HR team had to manually log in and check the system, then email or message managers across the three locations to let them know about staffing changes. With Oracle PeopleSoft and Microsoft Teams connected, each new hire, termination, or role change triggers an automatic message to the HR leadership channel and to team-specific channels, so managers learn about staffing changes immediately. Payroll exceptions - such as an employee with no valid cost center - also surface as alerts to the payroll team's Teams channel, allowing them to fix the issue before the next payroll run.

What you can do

  • Send employee hire, termination, and rehire notifications from Oracle PeopleSoft to Microsoft Teams channels.
  • Alert your Teams channels when job changes, promotions, or role updates occur in PeopleSoft.
  • Notify payroll teams of exceptions such as missing cost centers, invalid employee records, or banking data issues.
  • Poll Oracle PeopleSoft's self-hosted instance using your unique hostname, port, and node name, with HTTP Basic Auth or OAuth2 Bearer token authentication.
  • Schedule the sync frequency to match your HR and payroll calendar, with duplicate prevention and full audit trail on each message sent to Teams.

Questions

How does ml-connector handle Oracle PeopleSoft's self-hosted architecture?
Each PeopleSoft customer runs their own instance on their own servers or Oracle Cloud Infrastructure with a unique hostname, port, and Integration Broker node name. ml-connector accepts these per-customer settings and authenticates using HTTP Basic Auth (OPRID and password) or OAuth2 Bearer tokens on PeopleTools 8.58 and later. Most PeopleSoft instances are behind corporate firewalls, so you may need to whitelist the connector IP or expose your instance via a reverse proxy.
Does ml-connector need my PeopleSoft administrator to set anything up?
Yes. Each service operation that ml-connector calls (such as employee directory or job records queries) must be explicitly activated by your PeopleSoft administrator in the Integration Broker console. Your administrator will also need to ensure the required REST endpoints or SOAP Component Interfaces are enabled for the connector's OPRID user.
What happens when ml-connector finds duplicate records or already-sent notifications?
Since PeopleSoft's REST API has no idempotency keys, ml-connector tracks the IDs of records it has already processed and sent to Teams. This prevents duplicate notifications if the same employee record is polled twice. The integration maintains a full audit trail of every notification sent.

Related integrations

Connect Oracle PeopleSoft and Microsoft Teams

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

Get started