Skip to main content

ProShop Integration Guide

Overview​

The connector imports work orders and related records from ProShop and sends supported labor data back to the ERP. The connector communicates with ProShop through its GraphQL API, authenticating with OAuth 2.0 credentials.

Integration Type​

AttributeValue
DirectionBidirectional
Data Flow (Inbound)Work orders, operations, parts, work cells, and users from ProShop → MachineMetrics
Data Flow (Outbound)Labor tickets (time tracking entries) and operation completion from MachineMetrics → ProShop
Runs OnMachineMetrics Edge Device (physical or Virtual Edge)
Connection MethodProShop GraphQL API over HTTPS with OAuth 2.0 (client credentials)
note

This connector is under active development. Some features may change, and certain capabilities may not be available at the time of reading.

Requirements and Permissions​

Before starting the connection process, ensure that:

RequirementDetails
MachineMetrics EdgeA physical or Virtual Edge Device to run the connector service.
ProShop VersionProShop 5.2.7 or later; earlier versions cannot correctly accumulate quantity totals reported through the API.
Network AccessThe Edge device needs outbound HTTPS access to your ProShop instance URL and to the MachineMetrics APIs. No inbound firewall openings are required. See the Network Requirements Guide for Edge connectivity requirements.
ProShop API CredentialsAn OAuth 2.0 API client (client ID and secret) for your ProShop instance with the scopes described in Step 1.

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: Obtain ProShop API Credentials​

Work with your ProShop administrator or ProShop (Adion Systems) support representative to create an OAuth 2.0 API client for MachineMetrics. The connector authenticates with the client-credentials grant and requests the following scopes:

parts:rw
users:rw
workorders:rw
toolpots:rw
standards:rw
timetracking:rw
workcell:rw
editLog:rw
isSystemAdministrator:o
itarOkay:o

Record the client ID and client secret issued for the API client. Enter them directly in Edge Services in Step 3.

tip

Read/write (rw) access to timetracking is what allows labor tickets to be written back to ProShop. If the credentials are missing a scope, inbound work order sync may work while labor write-back fails.

Step 2: Gather Connection Information​

Collect the following values for your ProShop environment:

ValueDescriptionExample
ProShop Instance URLThe base HTTPS URL of your ProShop instance, used for API callshttps://yourcompany.proshoperp.com
Authentication URLThe base URL used to request OAuth tokens (typically the same as the instance URL)https://yourcompany.proshoperp.com
Client IDThe OAuth client ID from Step 1mm-client-id
Client SecretThe OAuth client secret from Step 1********
Organization IDYour ProShop organization identifier, if one was provided with your API credentialsorg-123

Step 3: Enter Connection Settings in Edge Services​

Enter the values from Steps 1 and 2 directly in Edge Services.

Verifying the Integration​

  1. Go to Production → Schedule in MachineMetrics
  2. Confirm work orders from ProShop are visible
  3. Have an operator start and close a job in the Operator View
  4. In ProShop, open the work order operation and verify the time tracking entry appears with the expected times and quantities

Configuration Settings​

Enter connection values in Edge Services. Review behavior settings with your implementation team.

SettingEnvironment VariableDescriptionDefault
OAuth ScopesPROSHOP_AUTH_SCOPEThe scopes requested when authenticating with ProShopThe scope list in Step 1
Historical Start DatesERP_RESOURCES_HISTORICAL_START_DATE
ERP_PERSONS_HISTORICAL_START_DATE
ERP_WORK_ORDERS_HISTORICAL_START_DATE
Earliest date to backfill, set independently per entity (work cells, users, and work orders; labor tickets follow the work order date)2020/01/01
Polling IntervalPOLL_INTERVALHow often changes are pulled from ProShop5 min
Labor Tickets To ERP IntervalTO_ERP_INTERVALHow often eligible labor tickets are sent to ProShop5 min
Retry Failed Labor Tickets IntervalRETRY_LABOR_TICKETS_INTERVALHow often failed labor-ticket writes are retried30 min
Collect Labor Tickets from ProShopCOLLECT_LABOR_TICKETSImport existing time tracking entries from ProShop into MachineMetricsOff
Collect Labor Tickets Initial OnlyCOLLECT_LABOR_TICKETS_INITIAL_ONLYImport time tracking entries only during the initial sync, then skip on subsequent runsOff
Pagination LimitERP_PAGINATION_LIMITHow many records are requested per page from the ProShop API500
Work Order Pagination LimitWO_PAGINATION_LIMITA smaller page size for work order queries, which include nested operationsFollows ERP_PAGINATION_LIMIT
MM API Batch SizeMM_API_BATCH_SIZEHow many records are sent to MachineMetrics per batch100

Sync Behavior​

The connector runs as a service on your Edge Device (or Virtual Edge) and communicates with your ProShop instance over HTTPS, exchanging work orders and labor data.

Inbound Records​

Active work orders and their operations are read from ProShop and transmitted to MachineMetrics, making them available for operators after sync. Along with work orders, the connector synchronizes:

  • Work cells from ProShop, which become resources in MachineMetrics
  • Users from ProShop, which become operators in MachineMetrics
  • Parts and part operations, derived from the synchronized work orders

The connector polls for changes incrementally, and a configurable historical start date controls how far back the initial backfill reaches. Work order operations that have no work cell assigned in ProShop are attached to a designated fallback resource in MachineMetrics so they remain selectable by operators.

Labor Write-Back​

The connector can create and update an open ProShop time tracking entry. When a ticket has a clock-out time, it updates the entry and closes it. A ticket arriving already closed is created, updated, and closed in the same processing path.

Entries include the operator, clock times, quantities, and notes. Reported quantities roll into the operation's totals, and later corrections update totals rather than adding the same counts again. A completed operation can also be marked complete in ProShop.

The point at which MachineMetrics sends the ticket depends on job selection and account configuration. Do not use clock-out as a universal rule for the first ERP write.

Troubleshooting​

IssuePossible CauseSolution
Connector cannot authenticateClient ID or secret incorrect, or the API client was revokedVerify the OAuth credentials with your ProShop administrator and update them in Edge Services if they changed
Work orders not appearingConnectivity or authentication failure, or the historical start date is later than your open work ordersConfirm the Edge can reach the ProShop instance URL over HTTPS and review the historical start dates in Configuration Settings
Inbound sync works but labor write-back failsAPI credentials missing the timetracking:rw scopeConfirm all scopes from Step 1 are granted to the API client
Labor ticket rejected for a missing resourceThe work cell referenced by the ticket no longer exists in ProShopThe connector fails these tickets immediately with a clear error; restore or remap the work cell in ProShop
Operations show a "fallback resource" in MachineMetricsThe work order operation has no work cell assigned in ProShopExpected behavior; assign a work cell in ProShop if you want the operation tied to a specific resource
Quantity totals in ProShop look wrong or don't accumulateProShop version earlier than 5.2.7Upgrade ProShop to 5.2.7 or later
Labor times off by hoursTimezone mismatch between ProShop and the connector configurationContact MachineMetrics support to review the connector's timezone settings

FAQ​

What ProShop version is required? Version 5.2.7 or later is required for the quantity accumulation behavior described here.

Can an open ticket reach ProShop? Yes. The connector can create and update an open time tracking entry. A ticket with a clock-out time is closed in ProShop; one arriving already closed is created and closed in the same processing path.

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.