Epicor Kinetic and SAP SuccessFactors integration
Epicor Kinetic runs manufacturing, distribution, and finance. SAP SuccessFactors runs payroll, benefits, and HR. Connecting the two keeps your workforce in your ERP and ensures cost center assignments stay aligned. New hires and role changes in SuccessFactors flow into Epicor Kinetic, so your general ledger and org structure reflect current headcount. Cost centers and GL accounts are kept in sync so labor allocations always land on valid dimensions, and month-end close starts with the workforce data already reconciled.
What moves between them
The primary flow runs from SAP SuccessFactors into Epicor Kinetic. New hires, terminations, role changes, and compensation updates from SuccessFactors are pulled on a schedule and posted into Epicor Kinetic to update employee records, cost center assignments, and department affiliations. Cost centers and GL accounts are aligned in both directions so payroll allocations in SuccessFactors map to valid Epicor Kinetic dimensions. Reference data such as departments and job codes is kept synchronized across both systems to prevent allocation errors during downstream payroll processing.
How ml-connector handles it
ml-connector stores Epicor Kinetic OAuth2 credentials and constructs OData filter expressions on UpdatedOn to poll for changed employee and cost center records since the last sync. On the SuccessFactors side, ml-connector exchanges the RSA private key and SAML certificate for a Bearer token that lasts 24 hours, and uses that token to pull PerPerson, EmpJob, EmpCompensation, and FOCostCenter records. Employee hires and terminations flow into Epicor Kinetic via the GetNewEmployee and UpdateMaster pattern, and cost center mappings are validated against Epicor's GL accounts before any allocation is posted. SuccessFactors enforces a max of 10 concurrent threads, so ml-connector serializes upserts and respects the OData page size limit of 1000 records. Both sides return throttle responses (Epicor has undocumented limits; SuccessFactors returns HTTP 429 or 503), and ml-connector backs off and retries. Bearer token refresh happens automatically on 401, and every record carries a full audit trail.
A real-world example
A mid-sized discrete manufacturer operates Epicor Kinetic ERP for production, procurement, and accounting, and uses SuccessFactors for payroll and HR across three plants and a shared services center. Before the integration, the finance team manually updated employee counts and cost center assignments in Epicor each pay period, and month-end close was delayed by reconciliation work to align HR headcount with the labor accounts. New hires and terminations in SuccessFactors now flow into Epicor Kinetic automatically, cost centers are kept aligned, and the finance team starts month-end close with accurate workforce data already in place.
What you can do
- Sync employee hires, terminations, and role changes from SAP SuccessFactors into Epicor Kinetic to keep headcount and org structure accurate.
- Map SuccessFactors cost centers and job codes to Epicor Kinetic GL accounts and cost centers so payroll allocations land on valid dimensions.
- Poll both systems on a schedule independent of SuccessFactors event notifications, with delta sync using UpdatedOn and lastModifiedDateTime filters.
- Authenticate Epicor Kinetic with OAuth2 and API Key header, and SuccessFactors with SAML Bearer Assertion, refreshing tokens automatically.
- Validate employee records and cost center assignments against Epicor Kinetic dimensions before posting, with full audit trail and retry logic on throttle.
Questions
- Which direction does data move between Epicor Kinetic and SAP SuccessFactors?
- The primary flow is SuccessFactors into Epicor Kinetic. Employee records, job changes, and compensation updates flow from SuccessFactors into Epicor Kinetic to keep headcount and cost center assignments aligned. Cost centers and GL accounts are synchronized in both directions so payroll allocations always reference valid Epicor dimensions. Epicor payroll or accounting transactions are not written back into SuccessFactors.
- How does ml-connector handle the different authentication methods for each system?
- Epicor Kinetic uses OAuth2 client credentials and requires an API Key header on every request. SAP SuccessFactors uses SAML Bearer Assertion, where ml-connector signs a SAML assertion with an RSA private key, exchanges it for a 24-hour Bearer token, and includes that token in every OData call. ml-connector stores both credential sets encrypted and refreshes tokens automatically when a call returns 401.
- Why does the integration poll instead of relying on SuccessFactors event notifications?
- SAP SuccessFactors event notifications require manual configuration in the Admin Center UI and are not guaranteed to fire for all HR lifecycle events. Polling with delta sync using lastModifiedDateTime is more reliable and ensures no employee or cost center changes are missed. ml-connector polls on a schedule tied to your payroll calendar so records flow into Epicor Kinetic with predictable timing.
Related integrations
More Epicor Kinetic integrations
Other systems that connect to SAP SuccessFactors
Connect Epicor Kinetic and SAP SuccessFactors
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started