Epicor Kinetic and SFTP / Flat Files integration
Epicor Kinetic is a cloud and on-premises ERP for manufacturing, distribution, and service industries. SFTP and flat files are the lingua franca for legacy systems and EDI trading partners that don't have REST APIs. Connecting them lets you exchange vendor data, invoice records, and payment information with partners and internal systems that work with CSV, X12 EDI, or fixed-width files. ml-connector reads from Epicor Kinetic on a schedule, transforms the records into your chosen file format, and uploads to SFTP; it also watches for inbound files and posts them back into Epicor Kinetic.
What moves between them
The integration runs bidirectional on a schedule you control. Outbound: ml-connector polls Epicor Kinetic for new or changed vendor records, AP invoices, and payments (using OData date filters), transforms them into CSV or X12 820 remittance format, and uploads files to the SFTP outbound folder for your trading partners or internal legacy systems. Inbound: ml-connector polls the SFTP inbound folder for new files (CSV vendor records, payment advice, invoice confirmations), parses them according to your file layout, and creates or updates vendor and payment records in Epicor Kinetic. Frequency is typically once per business day or multiple times per day depending on your sync cadence.
How ml-connector handles it
ml-connector stores both the Epicor Kinetic API credentials and the SFTP host, username, and private key encrypted in its database. For outbound flows, it queries Epicor Kinetic using OData filters (e.g., UpdatedOn gt {last-sync-time}) to fetch only changed records since the last run, respects Epicor Kinetic's one-hour Bearer token expiry with automatic refresh logic, and writes transformed records as CSV or X12 files to the SFTP server's outbound folder using SSH key or password authentication. For inbound flows, it connects to SFTP, lists the inbound folder, downloads files, parses them according to your mapping (column positions for fixed-width, headers for CSV, X12 segments), and posts them into Epicor Kinetic using the two-step pattern required for complex objects: GetNewXxx to create the record template, then UpdateMaster to write the final values. ml-connector generates X12 997 acknowledgments for EDI files and deposits them in the acks folder, handles file rename-on-upload to prevent partial-file reads, retries failed SFTP operations, and maintains a complete audit trail of every file transferred, parsed record, and Epicor Kinetic API call.
A real-world example
A mid-sized distributor uses Epicor Kinetic for inventory, procurement, and accounts payable, and exchanges invoices and payment records with a network of logistics partners and a legacy accounting system via SFTP. Before the integration, the AP team received X12 820 payment advice files from partners, manually imported them into Epicor Kinetic by copying and pasting into a spreadsheet, and exported Epicor Kinetic invoices to CSV files that were uploaded manually to the SFTP server for partners to download. With Epicor Kinetic and SFTP / Flat Files connected, inbound payment advice files are automatically parsed and posted into Epicor Kinetic as payments, and outbound invoices are automatically exported to CSV and uploaded to the SFTP server every evening so partners have fresh data without manual touches.
What you can do
- Poll Epicor Kinetic on your schedule for changed vendor, invoice, and payment records using OData date filters.
- Transform Epicor Kinetic records into CSV or X12 EDI files and upload to SFTP outbound folders for trading partners.
- Download inbound CSV, X12, or fixed-width files from SFTP, parse them, and post as vendor and payment records into Epicor Kinetic.
- Generate X12 997 acknowledgments for inbound EDI files and deposit them in the SFTP acks folder.
- Handle Epicor Kinetic Bearer token refresh, SFTP key-based and password authentication, file retries, and a full audit trail on every transfer.
Questions
- How does ml-connector handle Epicor Kinetic's API Key and Bearer token requirements?
- Epicor Kinetic requires both an API Key header and either Basic Auth or an OAuth2 Bearer token on every request. ml-connector stores the credentials encrypted, sends the API Key on all calls, automatically refreshes the Bearer token when it approaches expiry (about one hour), and falls back to Basic Auth if OAuth2 is not configured for your instance.
- Which direction does data flow, and can I filter by record type?
- Data flows bidirectional on a schedule you set. Outbound: ml-connector polls Epicor Kinetic for changed vendors, invoices, and payments using OData date filters (e.g., UpdatedOn gt {timestamp}) and exports them to CSV or X12 files on SFTP. Inbound: it watches the SFTP inbound folder for files matching your naming pattern, parses them by your layout, and posts into Epicor Kinetic. You can configure separate flows for each record type.
- What happens if an SFTP file transfer fails or a file is only partially uploaded?
- ml-connector retries failed SFTP operations with exponential backoff and uses atomic rename-on-upload to prevent your downstream system from reading partial files. Every file transfer and parse result is logged to the audit trail, so you can replay or investigate any failure. If a file cannot be parsed, ml-connector moves it to the error folder and alerts you.
Related integrations
More Epicor Kinetic integrations
Other systems that connect to SFTP / Flat Files
Connect Epicor Kinetic and SFTP / Flat Files
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started