ml-connector
Oracle Fusion Cloud ERPSlack

Oracle Fusion Cloud ERP and Slack integration

Oracle Fusion Cloud ERP handles your financial transactions, supplier invoices, and GL posting across the organization. Slack keeps your teams coordinated in real time. By connecting the two, you send critical financial events straight to the channels where teams see them: AP exceptions to Procurement, significant GL journals to Finance, and supplier invoice receipts to the operations channel. Rather than teams separately checking the ERP, the notifications come to them.

How Oracle Fusion Cloud ERP works

Oracle Fusion Cloud ERP exposes invoices, payments, suppliers, purchase orders, customers, receivables invoices, and general ledger data through REST APIs at a customer-specific pod URL, authenticated with OAuth 2.0 client credentials or authorization code grant. Tokens are JWTs valid for approximately one hour. The API supports OData-style query parameters for filtering by LastUpdateDate or CreationDate, so ml-connector can poll every 5 to 15 minutes to retrieve only new or modified records. Oracle Fusion Cloud ERP has no outbound webhooks without the Oracle Integration Cloud middleware layer, so all data retrieval is pull-based.

How Slack works

Slack provides the Web API and Events API to send messages to channels, retrieve user and conversation data, and receive real-time workspace events. Authentication uses OAuth 2.0 with a non-expiring bot token prefixed xoxb-, passed via Bearer header on all requests. Slack's Events API can push workspace activity to an external HTTPS endpoint as JSON POST callbacks, and requires signature verification via HMAC-SHA256 with the X-Slack-Signature header. The endpoint must return HTTP 2xx within 3 seconds, and Slack retries failed deliveries up to 3 times with exponential backoff.

What moves between them

Oracle Fusion Cloud ERP is the source. ml-connector polls the REST API every 5 to 15 minutes for new invoices, purchase orders, and journal batches, then publishes formatted notifications to Slack channels via the Web API. The data flows in one direction only: from Oracle Fusion Cloud ERP into Slack. Slack itself can push events back to ml-connector via the Events API if additional integrations need to listen for Slack activity, but the primary flow is ERP events into Slack channels.

How ml-connector handles it

ml-connector stores both the Oracle Fusion Cloud ERP OAuth 2.0 credentials and the Slack bot token encrypted in its database. On the Oracle side, it polls the REST API by setting a timestamp filter on LastUpdateDate or CreationDate, retrieving only records that changed since the last poll window. On the Slack side, it constructs a message payload with the transaction details, category, and any error state, then calls chat.postMessage to deliver the notification to the configured channel. Message formatting includes invoice amounts, vendor names, PO line items, or GL account codes depending on the record type. Oracle Fusion Cloud ERP returns no rate limit headers in its documentation, but ml-connector implements exponential backoff if any call returns an error. Slack enforces a rate limit of one message per second per channel, so ml-connector queues notifications and throttles delivery. If the Slack webhook endpoint is configured, ml-connector also validates incoming request signatures with a constant-time HMAC-SHA256 compare against the X-Slack-Signature header, rejecting any request older than 5 minutes. Every notification sent carries an audit entry with the source record ID, destination channel, timestamp, and delivery status, and can be replayed if a downstream call fails.

A real-world example

A mid-sized manufacturing company runs Oracle Fusion Cloud ERP for finance and procurement across three regional plants. The Procurement team sits in a Slack workspace alongside Finance and Operations. Before the integration, each ERP user received email notifications when invoices arrived or POs needed approval, and those notifications got lost in mail traffic. The Finance team had to log into the ERP daily to check for high-value GL journals that needed review, and Procurement had no visibility into supplier exceptions. With Oracle Fusion Cloud ERP and Slack connected, every new invoice posts immediately to the Procurement channel with vendor name and amount, flagged invoices go to Finance with the GL posting detail, and PO acknowledgments appear in Operations. The teams stay in Slack where they already communicate, and no one misses a critical transaction.

What you can do

  • Push Oracle Fusion Cloud ERP invoices, purchase orders, and journal batches to designated Slack channels as transactions post.
  • Format notifications with vendor names, invoice amounts, PO line numbers, and GL account codes so teams see detail without opening the ERP.
  • Authenticate with OAuth 2.0 on both Oracle Fusion Cloud ERP and Slack, and verify Slack webhook signatures with HMAC-SHA256.
  • Poll Oracle Fusion Cloud ERP every 5 to 15 minutes on a schedule you control, filtering by transaction date to retrieve only new records.
  • Track every notification sent with an audit trail, including the source ERP record, destination channel, timestamp, and delivery status.

Questions

Which direction does data move between Oracle Fusion Cloud ERP and Slack?
Data flows from Oracle Fusion Cloud ERP into Slack only. ml-connector polls the ERP for new invoices, purchase orders, and GL journals, then sends formatted notifications to Slack channels. Slack does not write data back to Oracle Fusion Cloud ERP in this integration, though Slack can push events to ml-connector via the Events API if a future workflow requires bidirectional sync.
Does Oracle Fusion Cloud ERP have webhooks that can push notifications directly to Slack?
No. Oracle Fusion Cloud ERP has no outbound webhooks without the Oracle Integration Cloud middleware layer. ml-connector instead polls the REST API every 5 to 15 minutes, filtering by LastUpdateDate or CreationDate, so new transactions are delivered to Slack within your polling window rather than immediately on change.
How does ml-connector authenticate with both systems?
ml-connector stores OAuth 2.0 credentials for both Oracle Fusion Cloud ERP and Slack in its encrypted database. On the Oracle side, it uses a client credentials or authorization code token to call the REST API. On the Slack side, it uses the bot token (xoxb- prefix) to call chat.postMessage and validates incoming webhook requests with an HMAC-SHA256 signature check on the X-Slack-Signature header.

Related integrations

Connect Oracle Fusion Cloud ERP and Slack

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

Get started