ml-connector
Oracle Fusion Cloud ERPADP

Oracle Fusion Cloud ERP and ADP integration

Oracle Fusion Cloud ERP powers finance and procurement. ADP handles payroll and workforce management. Connecting them keeps your general ledger aligned with payroll costs and your workforce data in sync. Payroll GL documents generated after each ADP pay run post directly into Oracle Fusion's journal batches, allocated to the correct cost centers, while worker hires, terminations, and rehires in ADP update headcount in Oracle Fusion. ml-connector bridges the very different authentication models and APIs on each side.

How Oracle Fusion Cloud ERP works

Oracle Fusion Cloud ERP exposes invoices, payments, suppliers, purchase orders, customers, receivables, journal batches, journal headers, journal lines, and GL accounts through REST APIs versioned at 11.13.18.05 or later, accessed at a customer-specific pod URL with OData-style query parameters for filtering and pagination. Authentication uses OAuth2 Client Credentials or Authorization Code grant against Oracle's OCI Identity Domain, returning JWT bearer tokens valid approximately one hour. Oracle Fusion does not support direct outbound webhooks without Oracle Integration Cloud (OIC) middleware, so connectors poll the REST API on a schedule, filtering by LastUpdateDate or CreationDate to retrieve only new and changed records.

How ADP works

ADP exposes workers, payroll processing, pay distributions, pay statements, general ledger documents, validation tables, work assignments, and payroll instructions through ADP API Central, a paid REST add-on accessed at https://api.adp.com/ (production). All connections require mutual TLS authentication with a client certificate and private key in addition to OAuth2 Client Credentials, and the TLS handshake fails without the certificate. ADP supports event notifications for worker lifecycle changes and payroll updates and also rate limits per node at 75 to 195 calls per minute depending on tier, returning HTTP 429 when exceeded. GL documents generated during payroll processing are read-only output; mutations to workers and payroll data flow through dedicated /events/ endpoints, not simple field updates.

What moves between them

The main flow is ADP into Oracle Fusion. After each payroll run, ml-connector reads ADP's general ledger documents and posts them into Oracle Fusion's journal batch API, mapped to the matching GL accounts and cost centers. Worker records flow from ADP into Oracle Fusion so workforce data stays aligned across both systems. Reference data such as cost centers, departments, and validation tables is aligned in both directions so payroll allocations land on valid GL account combinations. Because ADP GL documents are read-only output from payroll, ml-connector never writes financial entries back into ADP.

How ml-connector handles it

ml-connector stores both credential sets encrypted: the ADP client certificate and private key are stored securely and presented at the TLS layer on every ADP request to satisfy the mutual TLS requirement, while Oracle OAuth2 tokens are cached in memory and refreshed automatically when a call returns 401. Since Oracle Fusion exposes no shared hostname, ml-connector accepts the full customer pod URL per instance and validates API paths against that URL. Because both systems are pull-only, ml-connector polls both on a schedule tied to your payroll calendar, filtering Oracle Fusion by LastUpdateDate to retrieve only new records. ADP returns HTTP 429 when rate limits are exceeded, so ml-connector backs off with exponential retry logic. Client certificate expiry is tracked so renewal can happen before outages occur. Cost centers are mapped first, so every payroll journal line references a GL account combination that already exists in Oracle Fusion. Every record carries a full audit trail and can be replayed if a downstream call fails.

A real-world example

A mid-sized manufacturing company runs Oracle Fusion Cloud ERP for order-to-cash, procure-to-pay, and general ledger operations, and uses ADP for payroll across multiple plants and a corporate head office. Before integration, the finance team extracted payroll registers from ADP each pay period, manually created journal entries in Oracle Fusion to post labor costs to GL accounts and cost centers, and spent days at month-end reconciling payroll totals to headcount records. With Oracle Fusion and ADP connected, each ADP payroll run's GL document flows directly into Oracle Fusion's journal batches, automatically allocated to the correct plant cost centers, and worker changes are reflected in Oracle Fusion immediately. Month-end close begins with payroll accounts already reconciled and the manual journal entry step eliminated.

What you can do

  • Post ADP general ledger documents into Oracle Fusion journal batches after each payroll run, allocated to the correct cost centers.
  • Keep Oracle Fusion worker records synchronized with ADP hires, terminations, and rehires.
  • Validate and map ADP cost centers and departments to Oracle Fusion GL account combinations before posting.
  • Authenticate ADP with mutual TLS client certificates and OAuth2 credentials, and Oracle Fusion with OAuth2 tokens refreshed hourly.
  • Poll both systems on a payroll calendar schedule, with exponential retry on rate limits and a full audit trail on every record.

Questions

Does ADP's mutual TLS client certificate requirement add complexity?
Yes, but ml-connector handles it transparently. The client certificate and private key are stored encrypted, presented at the TLS layer on every request, and the certificate expiry is tracked so renewal happens before an outage. Without the certificate, the TLS handshake fails and all calls are rejected.
Which direction does data move between Oracle Fusion and ADP?
The main flow is ADP into Oracle Fusion. Payroll GL documents and worker records move from ADP into Oracle Fusion, while cost centers and departments are aligned in both directions. ADP GL documents are read-only output from payroll processing, so ml-connector does not write financial entries back to ADP.
How does the integration handle polling when both systems lack push webhooks?
ml-connector polls both systems on a schedule tied to your payroll calendar rather than waiting for a push. Oracle Fusion records are filtered by LastUpdateDate to retrieve only new changes, and cost centers are mapped first so payroll journal lines land on valid GL accounts.

Related integrations

Connect Oracle Fusion Cloud ERP and ADP

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

Get started