Integrations / ERP / Sage 100
Sage 100 Integration Guide for Production Scheduling with SkyPlanner APS
This Sage 100 integration guide shows Sage partners and IT teams how to connect Sage 100 to SkyPlanner APS. It covers both products with the name: Sage 100 in the US and Canada with Production Management, and Sage 100 in Germany and Austria with Sage 100 Produktion. SkyPlanner integrates with Sage 100 in both directions:
- Work tickets or Fertigungsaufträge flow in with their steps or Arbeitsgänge, plus work centers, items, stock and purchase orders.
- Planned dates go back to each step or Arbeitsgang.
- Operator timelogs go back as labor entries (US) or Rückmeldungen (DE).
The SkyPlanner team configures the integration to your Sage 100 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.
US Sage 100: the integration interfaces
US Sage 100 runs on-premises in Standard, Advanced or Premium installations. Its integration interfaces sit on the Sage 100 server.
Business Object Interface (BOI).
“The Business Objects Interface allows third-party developers with the necessary skills to access Sage 100 programs and applications using Component Object Model (COM).” (Sage 100 help) Sage’s developer portal calls it “Sage 100’s internal API layer, giving you access to the same logic used by the application itself.” (developer.sage.com) BOI is the write route: every create or update runs through the same validation as a user in Sage 100.
ODBC.
The ProvideX ODBC driver reads Sage 100 tables for reporting and bulk reads. On Advanced, a client/server ODBC driver is available. The integration uses ODBC to read work tickets, items and purchase orders in bulk, and BOI to write.
Visual Integrator (VI).
VI import and export jobs move data between Sage 100 and files or ODBC sources. Sage: “One of the most powerful features of the Visual Integrator module is its ability to directly import data from and export data to an ODBC data source.” (source) VI is part of the Essentials package, and it fits a file-based exchange.
eBusiness Web Services is SOAP and covers “the Sage 100 sales order, customer, and customer contact entities.” (source) It can carry sales orders, and production data runs through BOI and ODBC.
The integration runs next to Sage 100, under a Sage 100 user with rights to the Production Management, Inventory and Purchase Order tasks it uses. Outbound traffic goes to SkyPlanner’s REST API over HTTPS.
German Sage 100: the integration interfaces
German Sage 100 runs on Microsoft SQL Server, installed locally or in the cloud variant. Sage says you can “Partnerlösungen via API-Schnittstelle ergänzen” (Sage 100). Sage-listed add-ons for production build on the Sage AppDesigner and the Sage 100 business objects.
The integration uses the same route as Sage partner solutions: reads from the Sage 100 SQL Server database for Fertigungsaufträge, Arbeitsgänge, Arbeitsplätze, Ressourcenlisten, Artikel and Bestellungen, Arbeitsgang dates and Rückmeldungen go back over the write route your Sage partner and the SkyPlanner team set in scoping, so bookings follow Sage 100’s own logic. Your Sage partner confirms the version (for example 9.0) and the access setup.
Authentication and access
| Side | How it authenticates |
|---|---|
| US Sage 100, BOI | A Sage 100 user session on the Sage 100 server, with role rights for each task used |
| US Sage 100, ODBC | DSN on the Sage 100 installation, read access |
| German Sage 100 | A Sage 100 user for write-back and SQL Server read access, agreed with your Sage partner |
| SkyPlanner | API token in the Authorization-Token header, created in SkyPlanner Settings > API |
SkyPlanner’s REST API is documented in Swagger/OpenAPI. The integration tutorial walks through the first calls.
Change detection
Changes in Sage 100 are picked up by scheduled reads. Read open work tickets or Fertigungsaufträge on a short cycle, and stock and purchase orders hourly. Filter on status and change dates so each read only carries what moved.
SkyPlanner sends webhooks when the schedule changes, so write-back to Sage 100 is event-driven.
Data mapping
| Sage 100 (US) | Sage 100 (DE) | SkyPlanner object | Direction | Frequency |
|---|---|---|---|---|
| Item | Artikel | Products and materials | Sage 100 → SkyPlanner | Initial load, then daily |
| Bill of Materials, template materials | Stückliste in the Ressourcenliste | Product structure, subproducts, materials per product | Sage 100 → SkyPlanner | On change |
| Work center: workers or machines, hours per weekday, closures | Arbeitsplatz, Ressource (Mitarbeiter, Maschine) | Workstations, workstation groups, personnel, shifts | Sage 100 → SkyPlanner | Initial load |
| Work ticket template steps, activity codes | Arbeitsplan, Arbeitsgänge with Rüst- and Stückzeiten | Process steps with setup and run times | Sage 100 → SkyPlanner | On change |
| Work ticket with steps, due date | Fertigungsauftrag with Arbeitsgänge, Liefertermin | Orders and jobs with due dates | Sage 100 → SkyPlanner | Short read cycle |
| Inventory quantities per warehouse | Lagerbestand | Stock balances | Sage 100 → SkyPlanner | Hourly |
| Purchase order lines, required dates | Bestellungen, Liefertermine | Purchase orders with expected delivery date | Sage 100 → SkyPlanner | Hourly |
| Sales order lines, promise dates | Kundenaufträge | Customer due dates, customer priority | Sage 100 → SkyPlanner | Short read cycle |
| Work ticket step dates (BOI) | Arbeitsgang-Termine | Planned start, end and workstation per step | SkyPlanner → Sage 100 | On change, via webhook |
| Labor Entry, work ticket completion (BOI) | Rückmeldung: Zeiten, Mengen | Timelogs and operator confirmations | SkyPlanner → Sage 100 | Per confirmation or per shift |
| Not held in Sage 100 | Not held in Sage 100 | Setting time matrix, tools as finite resources, operators per job, alternative workstations | Maintained in SkyPlanner | Onboarding |
Integration patterns
1. Initial master data load. Load items and work centers first, then templates or Arbeitspläne with their steps. A US work center with three machines and two operators becomes three workstations, a workstation group and two people in SkyPlanner. Each then gets its own timeline.
2. Order sync. Read open work tickets or Fertigungsaufträge with their steps, plus stock and open purchase orders. SkyPlanner checks both stock and incoming deliveries before it places a job. Sage 100 keeps proposing work, and SkyPlanner schedules the orders you release.
3. Schedule write-back. For every step the engine placed or moved, SkyPlanner sends the planned start, end and workstation. On US Sage 100 the integration updates the work ticket step dates through BOI. On German Sage 100 it updates the Arbeitsgang dates over the route set in scoping. Sage 100 keeps quantities, allocations and costing.
4. Shop-floor confirmations. Operators log work with SkyPlanner Mobile Confirmations or the Production Timer, and the timelogs keep the schedule current. On US Sage 100 the logged time becomes Labor Entry against the work ticket step, and the final confirmation completes the ticket. On German Sage 100 it becomes a Rückmeldung with times and quantities. If your plant already books time in Betriebsdatenerfassung or a barcode app, pick one booking channel.
5. Ownership and conflict rules. Write them down before go-live:
| Data | Owner |
|---|---|
| Items, BOMs, templates, order quantities, costs | Sage 100 |
| Step sequence, start and end times, workstation assignment | SkyPlanner |
| Setting time matrix, tools, operators per job, alternative resources | SkyPlanner |
| Labor and Rückmeldungen | Sage 100, fed by SkyPlanner timelogs |
The main conflict source is a second scheduler. If planners keep running Enhanced Scheduling on US Sage 100, or keep dragging tasks on the Plantafel in German Sage 100, two systems own dates. Let SkyPlanner own step dates. With Autopilot, SkyPlanner reschedules automatically when production changes.
Typical project steps
Implementation is normally completed within weeks after onboarding starts. Before that, validate the schedule in the 30-day free trial with a CSV or Excel export of open work tickets or Fertigungsaufträge. The project then runs:
- Scoping. Confirm the product (US or German Sage 100), version and installation, the read route, the write route, sync frequencies and the time booking channel.
- Access. Your Sage partner sets up the Sage 100 user, its rights and the database access.
- Initial load. Items, work centers, templates or Arbeitspläne, BOMs and shifts.
- Order sync. Work tickets or Fertigungsaufträge, purchase orders and stock on a schedule.
- Constraint setup in SkyPlanner. Setting time matrix, tools, operator counts per job and alternative machines or personnel.
- Schedule write-back. Planned step dates to Sage 100, then labor and Rückmeldungen.
- Parallel testing and go-live. Compare dates with the current plan, fix master data, then switch on write-back.
What to plan for in a Sage 100 integration
- Know which Sage 100 you run. US and German Sage 100 have different data models and interfaces. Name the product and version in the first scoping call.
- Work centers that hide several machines. US work centers are one capacity unit of “one or more persons or machines”. Decide per work center whether it becomes one workstation, several workstations or a group.
- Setup and run times. Templates and Arbeitspläne hold the times SkyPlanner schedules with. Check them against real run times before go-live.
- Calendars. US work centers carry hours per weekday and closures. Load them as SkyPlanner shifts, then add each operator’s shifts and absences in SkyPlanner.
- Units of measure. Steps can run per piece, per batch or per hour. Map the unit per step.
- BOI rights. BOI follows Sage 100 role security. A missing task right stops a write. Test every write with the integration user.
- One owner for dates. Switch off parallel scheduling runs or Plantafel moves once SkyPlanner owns the dates.
The Sage 100 integration: who configures and supports it
- The SkyPlanner team configures it during onboarding and supports it after go-live.
- Your Sage partner can take part. The partner knows your Sage 100 version, sets up users and rights and confirms the database access.
- Your own developers can build on it against SkyPlanner’s documented REST API. An API token is enough to start, and the SkyPlanner team assists when needed.
Once connected, the Arcturus engine schedules from live Sage 100 orders, and planned dates land on each step. 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, so you see the full cost before you start. See pricing, features and how Sage 100’s own planning compares in Sage 100 finite capacity scheduling. The overview is on the Sage 100 page. Sage 200 and Sage X3 have their own guides from the Sage 200 and Sage X3 pages, and other ERPs are in the ERP integrations hub.
SkyPlanner reviews from manufacturers
6 monthsof free capacity visible to sales
“SkyPlanner creates the foundation and reliability for all production planning.”
Anu Järvinen, Production Manager
Fredman Operations · Food-safe packaging papers
Sales sees free capacity six months ahead, and schedule-change requests that took an hour or more are answered in seconds.
100%delivery reliability since 2021
“SkyPlanner gives us visibility into capacity and makes planning predictable.”
Dan Berglund, COO/CFO
Opes Corporation · Chemical and food manufacturing
Delivery reliability has been 100% for the entire time SkyPlanner has been in use, since 2021.
FAQ
Does Sage 100 have a REST API for work tickets?
US Sage 100 exposes its business logic through the Business Object Interface, with ODBC for reads and Visual Integrator for file jobs. SkyPlanner reads work tickets through ODBC and BOI, and writes step dates and labor through BOI. German Sage 100 is read from its SQL Server database, and the write-back route is set with your Sage partner in scoping.
Who builds the Sage 100 integration?
The SkyPlanner team configures the two-way integration to your Sage 100 setup during onboarding and supports it after go-live. Your Sage partner sets up users, rights and database access and can take part. Your own developers can also build on SkyPlanner’s documented REST API, and an API token is enough to start.
How are planned dates written back to Sage 100?
On US Sage 100, the integration updates the planned dates of each work ticket step through BOI and posts Labor Entry from operator timelogs. On German Sage 100, it updates the Arbeitsgang dates of each Fertigungsauftrag and books Rückmeldungen over the write route your Sage partner and the SkyPlanner team set in scoping.
Can Sage 100 push changes in real time?
SkyPlanner picks up Sage 100 changes with scheduled reads: open orders on a short cycle, stock and purchase orders hourly. In the other direction, SkyPlanner’s webhooks push schedule changes as they happen.
Can we test SkyPlanner before building the integration?
Yes. The 30-day free trial supports up to 20 workstations with CSV or Excel imports of your work tickets or Fertigungsaufträge, no credit card needed. Start the trial, or talk to sales to scope the integration.