ml-connector
Epicor KineticCleo

Epicor Kinetic and Cleo integration

Epicor Kinetic runs manufacturing and distribution. Cleo Integration Cloud orchestrates EDI and API trading partner communications. Connecting the two automates your supply chain: purchase orders and vendor master data from Epicor flow into Cleo as EDI 850 transactions and are automatically sent to suppliers, while shipment notices and payment confirmations from trading partners flow back through Cleo into Epicor as receipts and payments. The integration eliminates manual re-keying and keeps Epicor and your supply chain partners in sync.

How Epicor Kinetic works

Epicor Kinetic is a cloud and on-premises ERP that exposes vendors, purchase orders, AP invoices, GL accounts, parts, and customer records through REST endpoints with OData v4 filtering. Authentication can be Basic Auth (username and password), API Key (x-api-key header), OAuth2 client credentials (cloud SaaS only), or Token Resource Service (on-premises). Epicor Kinetic is poll-only with no native webhooks, so integrations query using OData date filters to retrieve changed records since the last sync, with offset-based pagination.

How Cleo works

Cleo Integration Cloud is a cloud-native B2B and EDI middleware that receives inbound and outbound EDI transactions (850, 810, 856, 820), API payloads, and managed file transfers via REST. It authenticates with OAuth2 password grant to exchange credentials for a short-lived bearer token. Cleo is primarily pull-based for file and folder operations, though outbound webhooks can be configured through CIC Studio by a tenant administrator.

What moves between them

The main flow runs from Epicor Kinetic into Cleo. Purchase orders and vendor master data from Epicor Kinetic are polled on a regular schedule, mapped to EDI 850 transactions, and published into Cleo for routing to suppliers. In the reverse direction, inbound EDI 856 shipment notices and 820 payment remittances from Cleo are mapped back to Epicor Kinetic goods receipts and AP payment transactions. Vendor reference data such as names and addresses is kept synchronized in both directions so outbound transactions reference valid supplier codes.

How ml-connector handles it

ml-connector stores both Epicor Kinetic and Cleo OAuth2 credentials encrypted and refreshes bearer tokens when they expire. For Epicor Kinetic, ml-connector uses OData date filters on UpdatedOn to retrieve only changed purchase orders and vendor records since the last poll, reducing API load. For Cleo, ml-connector periodically checks configured folders for incoming EDI transactions and pulls them for processing. The integration maps Epicor Kinetic company segments and vendor IDs to Cleo partner codes, and EDI 850 purchase order records to 810 invoice responses. On the inbound side, Cleo EDI 856 shipment notices are matched to Epicor Kinetic PO line items by PO number and item code, and 820 payment transactions are matched to AP invoices for settlement. Cleo rate limits are respected with exponential backoff on HTTP 429, and every transaction carries an audit trail so failed mappings can be replayed once corrected.

A real-world example

A mid-sized discrete manufacturer operates Epicor Kinetic ERP for production, procurement, and finance, and maintains trading relationships with 40+ suppliers across the United States. Before the integration, the procurement team exported purchase orders from Epicor Kinetic each week, converted them manually to EDI 850 format, and uploaded them to Cleo for supplier delivery. Incoming shipment notices and payment confirmations arrived in Cleo as EDI 856 and 820 files but had to be manually decoded and re-entered into Epicor Kinetic goods receipt and invoice settlement workflows. With Epicor Kinetic and Cleo Integration Cloud connected, each new purchase order automatically publishes as an EDI 850 to Cleo within minutes, and all inbound shipment notices and payments are automatically matched to the corresponding Epicor Kinetic transactions, reducing manual work and accelerating cash conversion.

What you can do

  • Automatically convert Epicor Kinetic purchase orders to EDI 850 and publish them through Cleo to suppliers in real time.
  • Map incoming Cleo EDI 856 shipment notices to Epicor Kinetic goods receipts by matching PO and item codes.
  • Sync vendor master data between Epicor Kinetic and Cleo so trading partner codes remain current.
  • Authenticate Epicor Kinetic with OAuth2 client credentials or API Key, and Cleo with OAuth2 password grant, with automatic token refresh.
  • Poll Epicor Kinetic on a schedule using OData date filters to retrieve only changed records, with full audit trail and error replay on each transaction.

Questions

Which direction does data move between Epicor Kinetic and Cleo?
The primary flow is Epicor Kinetic to Cleo. Purchase orders and vendor master records move from Epicor Kinetic into Cleo as EDI 850 transactions. In the reverse direction, inbound EDI 856 shipment notices and 820 payment confirmations from Cleo are mapped into Epicor Kinetic as goods receipts and AP payment transactions. Vendor reference data is synchronized in both directions to ensure trading partner codes remain valid.
How does the integration handle Epicor Kinetic's API Key requirement and OAuth2?
Epicor Kinetic requires an API Key header (x-api-key) in addition to OAuth2 bearer tokens for cloud SaaS deployments. ml-connector stores both credentials encrypted, includes the x-api-key header on every request, and refreshes the OAuth2 bearer token before expiry (approximately every 1 hour) so API calls do not fail mid-sync.
How does ml-connector retrieve changed records from Epicor Kinetic without webhooks?
ml-connector uses OData date filters on the UpdatedOn field to query only purchase orders and vendor records modified since the last successful sync, reducing API load and avoiding full-table scans. Pagination is handled with $top and $skip parameters, and the integration tracks sync timestamps to ensure no records are missed between runs.

Related integrations

Connect Epicor Kinetic and Cleo

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

Get started