Skip to main content

Epicor Kinetic Integration Guide

Overview​

The connector exchanges work orders and labor with Epicor Kinetic through its REST API. Some configurations also use a SQL connection.

Integration Type​

AttributeValue
DirectionBidirectional
Data Flow (Inbound)Work orders from Epicor → MachineMetrics
Data Flow (Outbound)Labor tickets and work order updates from MachineMetrics → Epicor
Runs OnMachineMetrics Edge Device (physical or Virtual Edge)

Requirements and Permissions​

Before starting the connection process, ensure that:

RequirementDetails
Minimum Epicor versionEpicor Kinetic 10.2.600 or later. Confirm the installed build and required API access with your ERP administrator before setup.
MachineMetrics EdgeA physical or Virtual Edge Device to run the connector service.
Network AccessThe Edge device must have network and firewall access to Epicor's on-premise or cloud environment APIs. See the Network Requirements Guide for Edge connectivity requirements.
Epicor PermissionsYou must have the permissions required to create users and API keys in your Epicor environment.

Setup​

Complete the ERP-specific steps below, then follow Setup and Verification for resource mapping, operator mapping, and the go-live checks. The customer enters credentials directly in Edge Services. Never share credentials with MachineMetrics staff.

Step 1: Create User​

  1. Navigate to User Account Maintenance.
  2. Select the + (plus-circle) button to create a new user.
  3. Enter a unique User ID (for example, machinemetrics).
  4. Enter a unique Name (for example, MachineMetrics).
  5. Fill out any additional required fields and save your changes.
tip

Set a password for this user account. Enter the username and password in Edge Services in Step 6.

Step 2: Create API Key​

  1. Open the Epicor menu, search for API Key Maintenance, and select it.
  2. Select the + (plus-circle) button to create a new key.
  3. In the Key ID field, enter MachineMetrics.
  4. In the Description field, enter a helpful description (for example, MachineMetrics Connection).
  5. In the Expire Date field, select a date in the distant future (this can be adjusted later if needed).
  6. Select the Save button to save the new key, and be sure to copy the key to a safe location for future use; you will only see it once.

Step 3: Create Access Scope​

  1. Open the Epicor menu, search for Access Scope, and select it.
  2. Select the + (plus-circle) button to create a new scope.
  3. In the Access Scope ID field, enter MachineMetrics.
  4. In the Description field, enter a helpful description (for example, MachineMetrics Connection).
  5. Make sure the Active check box is checked.

Step 4: Configure Access Scope Services​

  1. Navigate to Services.
  2. Locate and select the desired service.
  3. Verify that all required methods listed below are enabled for the selected service.
  4. Click Save to apply changes.
  5. Repeat the process for each required service and its associated methods.

Required services and methods:

Erp.BO.CapabilitySvc/Capabilities
GetRows

Erp.BO.EmpBasicSvc/EmpBasics
GetRows
ClockIn
ClockOut

Erp.BO.JobEntrySvc/GetDatasetForTree
GetRows

Erp.BO.JobEntrySvc/JobEntries
GetRows

Erp.BO.LaborSvc/LaborDtls
GetRows

Erp.BO.LaborSvc/Labors
GetRows
StartActivity
CheckWarning
Update
EndActivityByEmp
recallFromApprovalBySelected
updateLaborDtl
submitForApproval

Erp.BO.ReasonSvc/Reasons
GetRows

Erp.BO.ResourceGroupSvc/ResourceGroups
GetRows

Erp.BO.ResourceGroupSvc/Resources
GetRows

Erp.BO.ResourceSvc/Resources
GetRows

Step 5: Apply Scope to API Key​

  1. Open the API Key named MachineMetrics.
  2. Apply the newly created MachineMetrics scope onto the key.
  3. Select the Save button to save your changes.

Step 6: Enter Connection Settings​

Enter the Epicor API key, owning company, dedicated user's username and password, and API URL directly in Edge Services. Also enter a MachineMetrics API key in MM_MAPPING_SERVICE_TOKEN; see Create a MachineMetrics API Key. Do not send the values or a credential-sharing link to MachineMetrics staff.

Verifying the Integration​

  1. Open the ERP Error Log and confirm it shows no errors for your site.
  2. Go to Production → Schedule in MachineMetrics.
  3. Confirm work orders from Epicor are visible.
  4. Have an operator start a job in the Operator View.
  5. Verify the labor ticket appears in Epicor.
  6. Check the ERP Error Log again and confirm the test added no errors.

Configuration Settings​

Enter these values in Edge Services. Variable names identify the connector settings; screen labels may differ.

SettingVariableRequired / defaultDescription
API URLERP_API_URLRequiredEpicor API endpoint.
Owning companyERP_COMPANYRequiredEpicor company code.
API keyERP_API_KEYRequiredEpicor key created in Step 2.
MachineMetrics API keyMM_MAPPING_SERVICE_TOKENRequiredKey created in MachineMetrics under Settings → API Keys. See Create a MachineMetrics API Key.
MachineMetrics service addressesMM_MAPPING_SERVICE_URL, MM_MAPPING_AUTH_SERVICE_URLRequiredMachineMetrics endpoints the connector sends data to. Your implementation team provides these values; they differ for GovCloud.
UsernameERP_API_USERNAMERequiredDedicated integration user.
PasswordERP_API_PASSWORDRequiredPassword for that user.
Import labor ticketsENABLE_LABOR_TICKET_IMPORTOnSet to false to stop importing Epicor labor tickets. Does not disable outbound writes.
Indirect laborENABLE_INDIRECTOffEnables exporting indirect labor and syncing Epicor indirect codes.
API retriesERP_RETRY_ATTEMPTS3Retry count for API requests.
Request timeoutERP_REQUEST_TIMEOUT30000 msAPI request timeout.

Your SDM can confirm any site-specific SQL or query configuration. Use Setup and Verification for the shared mapping steps.

Sync Behavior​

Active work orders are imported from Epicor. The connector can also import labor tickets; ENABLE_LABOR_TICKET_IMPORT controls that inbound step.

For outbound labor, the connector starts an Epicor activity when a new ticket arrives without a clock-out time. It ends an existing activity when the ticket has a clock-out time and an ERP ticket ID. A ticket that arrives already closed can be started and ended in the same processing path. MachineMetrics job selection configuration affects when the connector receives the ticket.

See Concepts and Data Flow for the distinction between the operator workflow and the connector's ERP write.

Timesheet Sync​

Timesheets represent employee clock-in/out sessions and are separate from job labor tickets. The outbound sync processes labor tickets first, then Timesheets.

A Timesheet without a clock-out time calls Epicor's EmpBasicSvc/ClockIn action. A Timesheet with a clock-out time calls EmpBasicSvc/ClockOut. These actions use the employee ID; clock-in also uses the employee's Epicor shift. The connector does not pass the MachineMetrics Timesheet timestamps as backdated attendance times in these calls.

The integration account needs the ClockIn and ClockOut methods listed in Step 4. If job labor sync succeeds but attendance does not, check those permissions and the employee mapping separately. See Timesheets for viewing sessions in ERP Data Studio and correcting them.

Troubleshooting​

IssuePossible CauseSolution
Work orders not appearingAPI key expired or invalidVerify the API key is valid and not expired; regenerate in API Key Maintenance if needed
Service calls failingAccess scope missing a required service or methodConfirm all services and methods in Step 4 are enabled on the MachineMetrics scope
Scope not taking effectAccess scope not applied to the API key, or scope not marked ActiveRe-apply the MachineMetrics scope to the key (Step 5) and confirm the Active box is checked
Labor not syncing backMissing labor methods or insufficient user permissionsEnsure Erp.BO.LaborSvc/Labors methods (StartActivity, Update, EndActivityByEmp, etc.) are enabled on the scope
Connection errorsFirewall blocking the Edge deviceEnsure the Edge can reach the Epicor API endpoint

FAQ​

What credentials are needed? An Epicor API key, owning company, dedicated user's username and password, and API URL. Enter them in Edge Services.

Can labor tickets be sent before clock-out? Yes. The connector handles starting an activity, ending an existing activity, or starting and ending an activity for a ticket that arrives already closed. When MachineMetrics sends the record also depends on the machine's job selection configuration.

Getting Help​

Contact your Solution Delivery Manager (SDM) during onboarding or MachineMetrics Support for technical issues after onboarding. For ERP permissions and posting, work with your ERP administrator.