Connects with ERP & MES systems like

Integrations / ERP / ProShop ERP

ProShop ERP Integration Guide for Production Scheduling with SkyPlanner APS

This ProShop integration guide shows administrators, consultants and IT teams how to connect ProShop ERP to SkyPlanner APS. SkyPlanner integrates with ProShop in both directions, using ProShop’s own API:

  • Work Orders with their operations, Parts, Work Order BOM records, Work Cells, Users, Tools, Fixtures and Purchase Orders flow in.
  • Planned start and finish dates go back to the work orders.
  • Operator time can post back to ProShop Time Tracking, if you choose.
  • SkyPlanner webhooks push schedule changes as they happen.
SkyPlanner APS Gantt timeline with jobs scheduled across workstations and an order list below.

The SkyPlanner team configures the integration to your ProShop setup during onboarding and supports it after go-live. This guide is for partners and developers who want to take part, or to build on SkyPlanner’s documented REST API (API reference) themselves.

ProShop’s integration interfaces

ProShop gives an external scheduler two routes, documented in the ProShop API Developer Documents:

  1. ProShop GraphQL API. “ProShop provides a GraphQL API, available via HTTP(S).” There is one endpoint: every call is an HTTP POST to <proshop root>/api/graphql with query, variables and operationName in a JSON body. Each module has a singular query for one record and a plural query for lists. Lists are paginated with pageSize (default 20) and pageStart, return records and totalRecords, and accept filter and query arguments that mirror each module’s Advanced Search. The schema is introspectable. (Introduction to the ProShop API)
  2. Recently Updated Records API. “A simple REST interface allows external integrations to request information between arbitrary points in time.” Call <proshop root>/recentlyupdatedrecords with start (ISO 8601), optional end and filterby, for example workorders,workcells,purchaseorders,timetracking,deletions. The ProShop team enables the index first. (Recently Updated Records API)

Writes go through GraphQL mutations. Time Tracking Login is the documented example, and write access is granted per module through scopes.

Authentication and scopes

  • Access token on every call. Send it as Authorization: Bearer <token> or as a token query parameter.
  • OAuth 2.0 Client Credentials (ProShop 5.2.3 and later). A ProShop system administrator opens System Config > Manage Authorizations, creates an Authorization with a Name and Maximum Scope, and checks Direct Login and Active. The Unique ID and Shared Secret become client_id and client_secret. The app posts grant_type=client_credentials to <proshop root>/home/member/oauth/accesstoken and gets a Bearer token with expires_in. There is no refresh token, so request a new token when it expires. (Client Credentials Flow)
  • OAuth 2.0 Authorization Flow for calls that need a user context, such as Time Tracking Login.
  • Scopes. The format is SCOPE_NAME:[{r|w|d|p}], for read, write, delete and prefs. A scheduler typically asks for workorders:rw parts:r purchaseorders:r users:r tools:r, plus Time Tracking if time posts back. Since ProShop 5.1.9 “a scope grant request is now required on all connections to the API.” (Authorization scopes)
  • Audit trail. Calls made with client credentials show the application name, not a user.

On the SkyPlanner side, the REST API authenticates with an API token in the Authorization-Token header (SkyPlanner Settings > API) and is documented in Swagger/OpenAPI. The integration tutorial walks through the first calls.

Events and polling

ProShop’s developer documents describe no outbound webhooks or GraphQL subscriptions. The ProShop side is polled, and the Recently Updated Records API makes that cheap: ask for everything created, modified or deleted since the last run, filtered to the record types the schedule needs. Then fetch the changed work orders by number through GraphQL, which ProShop notes is faster than querying by lastModifiedTime.

A five-minute cycle for work orders and time tracking, and hourly for parts and purchase orders, is a typical choice. SkyPlanner sends webhooks when state or the schedule changes, so the write-back side is event-driven.

Data mapping

ProShop object (API)SkyPlanner objectDirectionFrequency
Parts, COTS (GraphQL parts scope)Products and materialsProShop → SkyPlannerInitial load, then on change
Work Order BOM recordsProduct structure, materials per orderProShop → SkyPlannerWith each work order
Work order operations: work cell, estimated setup and cycle time (target times)Process steps with durations, setup and teardown timesProShop → SkyPlannerWith each work order
Work Cells (machine, bench, equipment)Workstations, workstation groups, efficienciesProShop → SkyPlannerInitial load, rarely after
Work Cells assigned to people, UsersPersonnel and operator assignmentsProShop → SkyPlannerInitial load, then on change
Work cell schedules (available hours, shifts)Shifts and non-working daysProShop → SkyPlannerDaily, or own shifts in SkyPlanner
Work Orders (quantity, due date, status)Orders and jobs with due dates and priorityProShop → SkyPlannerPolling every few minutes
Tools, Toolpots, Fixtures, RTAsTools as finite shared resourcesProShop → SkyPlannerInitial load, then on change
Purchase Orders with due datesPurchase orders, incoming material by delivery dateProShop → SkyPlannerPolling, hourly or on schedule run
Work order planned start and finish (GraphQL mutation, workorders:w)Planned start and end per jobSkyPlanner → ProShopOn schedule change, via SkyPlanner webhook
Time Tracking: setup and run time, parts completed, per work order operationTimelogs and operator confirmationsSkyPlanner → ProShopPer confirmation or per shift, if chosen
Not in ProShopSetting time matrix, multi-operator jobs, alternative machines and personnelMaintained in SkyPlannerSet up during onboarding

Integration patterns

1. Initial master data load. Page through Parts, Work Cells, Users, Tools and Fixtures with GraphQL plural queries. Set pageSize high for the first load and loop on totalRecords. Decide how work cells map: machine work cells become workstations, and person work cells become personnel, so the same operation can book a machine and its operator together.

2. Work order sync. Read active work orders with their operations, target times and BOM records, plus open purchase orders. SkyPlanner treats ordered material as available on the PO delivery date and updates stock when the PO is marked Delivered. Change detection runs through Recently Updated Records with filterby=workorders,purchaseorders,deletions.

3. Schedule write-back. When the engine places or moves a job, a SkyPlanner webhook triggers a GraphQL mutation that sets the work order’s planned dates, under an Authorization with workorders:w. ProShop’s on-time forecast and the purchasing need dates then run on SkyPlanner’s dates.

4. Shop-floor confirmations. Operators log work with SkyPlanner Mobile Confirmations or the Production Timer, and the timelogs keep the schedule current. You choose whether actual time posts back to ProShop Time Tracking against the work order operation. If not, operators clock time in ProShop as before, and SkyPlanner reads it through timetracking.

5. Ownership and conflict rules. Write them down before go-live:

DataOwner
Parts, operations, target times, quantities, work order statusProShop
Operation sequence, start and finish times, machine and operator assignmentSkyPlanner
Setting time matrix, tool and operator requirements, alternative resourcesSkyPlanner
Shifts and non-working daysOne system, chosen in scoping
Time Tracking, inventory, purchasing, job costingProShop, entered there or posted from SkyPlanner timelogs

Pick one writer of work order dates. Once SkyPlanner schedules a work cell, planners stop reordering that work cell’s list in ProShop, so the two plans never compete.

Typical project steps

Implementation is normally completed within weeks after onboarding starts. Before that, validate the schedule in the 30-day free trial with work cells, operations and open work orders exported from ProShop as CSV or Excel.

  1. Mapping. Fix the mapping table, ownership rules, sync frequencies and whether time posts back.
  2. ProShop access. The administrator creates the Authorization with the agreed Maximum Scope and asks the ProShop team to enable Recently Updated Records.
  3. Initial load. Parts, Work Cells, Users, Tools, Fixtures, work cell schedules.
  4. Work order and purchase order sync. Change polling with paging and retries.
  5. Constraint setup in SkyPlanner. Setting time matrix, tools, operator counts per operation and alternative machines or personnel.
  6. Schedule write-back. Mutations from SkyPlanner webhooks, plus Time Tracking if chosen.
  7. Parallel testing. Run SkyPlanner beside the current ProShop schedule, compare dates, fix target times.
  8. Go-live. Switch on write-back once the data matches.

What to plan for in a ProShop integration

  • Target times decide everything. ProShop builds duration from estimated setup and cycle times. Pull the current target times, not the original estimate, and split setup from run time so the setting time matrix can replace the single setup value.
  • Person work cells. A work cell can be a person. Map those to SkyPlanner personnel, not to machines, or every operator becomes a parallel machine.
  • Time Tracking needs a user. Since April 2026 the Time Tracking Login mutation “requires user context” and is not authorized under Client Credentials. Post operator time through the OAuth 2.0 Authorization Flow, or keep clocking in ProShop and read it.
  • Enable the change index. Recently Updated Records only works after the ProShop team enables it. Request it in week one.
  • ITAR records. ProShop filters ITAR-restricted records per connection, and a Developer System Config option decides whether they return as nulls or drop out. Agree which work orders the integration sees, and handle nulls on every read.
  • Outside processing. Operations at vendors are elapsed time, not your capacity. Model them as time-only steps.

Who configures and supports the ProShop integration

  1. The SkyPlanner team configures it during onboarding and supports it after go-live, across the agreed GraphQL queries, mutations and change polling. Every shop runs ProShop differently, and this is where that know-how goes.
  2. Your ProShop administrator or consultant takes part. They create the Authorization, set the scopes, request the change index and know your work cell setup.
  3. Your own developers can build on it against SkyPlanner’s REST API with an API token. An API token is enough to start, and the SkyPlanner team assists when needed. Integration documentation is at SkyPlanner integration docs.

SkyPlanner starts from 199 € per month with 5 workstations included, billed monthly. The integration is quoted up front for your process and needs, together with your plan. See pricing, ProShop finite capacity scheduling, the ProShop ERP page, SkyPlanner features and the ERP integrations hub.

SkyPlanner reviews from manufacturers

Kalle Kalliomäki, Supply Chain Specialist at UTU, on the switchboard production floor in Ulvila

2 hsaved every week

“SkyPlanner has taken our production planning from Excel spreadsheets to real-time production optimization.”

Kalle Kalliomäki, Supply Chain Specialist
UTU · Electrical switchboards and switchgear

Production planning saves 2 hours of working time every week, and a new work queue reaches the line in seconds.

Read the UTU review

Operators in cleanroom suits at a bottle-filling line in Laboratory & Allied's pharmaceutical plant in Nairobi

+90%production efficiency

“Efficiency has gone up 90% in production.”

Abdul Rucyinga, Head of IT
Laboratory & Allied · Pharmaceutical manufacturing

Production efficiency is up 90%, and a three-month optimized plan across all workstations takes under 30 minutes.

Read the Laboratory & Allied review

A KJH-Comp welder grinding a welded steel structure at the Alahärmä plant

98%delivery reliability, up from about 50%

“SkyPlanner plays a decisive role in maintaining our delivery reliability.”

Hannu Lahtinen, Managing Director
KJH-Comp · Sheet-metal mechanics and contract manufacturing

Delivery reliability rose from around 50% to as high as 98%, and scheduling now needs one supervisor instead of two.

Read the KJH-Comp review

Hannu Ryynänen, CEO of Mamec, in the company's production hall in Lohja

1,000swork orders scheduled automatically

“Production is under control in a different way, and our understanding of capacity is on a completely different level.”

Hannu Ryynänen, CEO
Mamec · Industrial mixers, pumps and high-tech contract manufacturing

Thousands of work orders are scheduled automatically, with a real-time view of production for the whole organization.

Read the Mamec review

FAQ

Does ProShop have an API?

Yes. ProShop has a GraphQL API at <proshop root>/api/graphql, with OAuth 2.0 or Basic Authentication and module scopes. A REST endpoint, Recently Updated Records, returns records created, modified or deleted in a time window.

Does ProShop support webhooks?

ProShop’s developer documents describe no outbound webhooks. The integration polls the Recently Updated Records API on a schedule set per shop. SkyPlanner’s own webhooks push schedule changes as they happen.

How are planned dates written back to ProShop?

Through a GraphQL mutation on the work order, under an Authorization with write scope on workorders. SkyPlanner triggers it from a webhook every time the schedule changes.

Who creates the ProShop API credentials?

A ProShop system administrator, under System Config > Manage Authorizations. Direct Login enables the Client Credentials flow, and the Maximum Scope limits what the integration can read and write.

Should a ProShop consultant propose ProShop scheduling or SkyPlanner?

SkyPlanner, when the customer’s sequence decides delivery. ProShop’s schedule shows priority and on-time forecasts per work cell, and planners adjust priorities. SkyPlanner connects through the GraphQL API, optimizes the whole plan automatically, plans changeovers, operators, tools and material, and has unlimited users, from 199 € per month.

Can we test SkyPlanner before building the integration?

Yes. The 30-day free trial supports up to 20 workstations with CSV or Excel imports from ProShop, no credit card needed. Start the trial, or talk to sales to scope the integration.