Connects with ERP & MES systems like

Integrations / ERP / Visma L7

Visma L7 APS Integration Guide for Production Scheduling

This Visma L7 integration guide shows partners and IT teams how to connect Visma L7 to SkyPlanner APS. SkyPlanner integrates with Visma L7 in both directions over the Visma L7 REST API:

  • Work numbers (työnumero), work stages (työnvaihe), resources, product structures, parts, materials, stock balances, sales rows and purchase rows flow in.
  • Each work card gets its resource, start date, priority, person and day-by-day hours back with PUT /manufphases/.
  • Resource calendar capacity is kept in step with POST /resourceupdates/.
  • Production events posted in L7 work queues are read back with GET /manufevents/.
  • 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 L7 setup during onboarding and supports it after go-live. Partners and developers can also build on SkyPlanner’s documented REST API (API reference).

Visma L7’s REST API

The API is Visma L7 – REST API, documented as OpenAPI 3.0.3 with a changelog (documentation). It runs on Visma LTR.

  • Base path is /ltrws/REST/L7 on your own LTR host, on premises or in Visma’s hosted application service.
  • Licensing. Each endpoint is licensed on its own. Writing the schedule needs the L7RMFPP licence for PUT /manufphases/, and capacity updates need L7RMCAP. Read endpoints carry their own licences.
  • Paging. Lists page with pageSize and recAfter, and filter with queryKey1, queryKey2 and queryString.

Authentication

Two tokens go with every L7 call:

  1. hash selects the database and company.
  2. token identifies the API user.

Your LTR administrator creates the API user in Visma LTR, connects it to the L7 company, grants profiles and creates the user token (get started). Use a dedicated integration user with only the rights the integration needs.

On the SkyPlanner side, the REST API authenticates with an API token sent in the Authorization-Token header. You create it under Settings > API. The integration tutorial walks through the first calls.

Change detection: modifiedAfter

The L7 REST API has no webhooks. Changes are read by polling:

  • Turn on change logging (DBLOG) in L7 file maintenance (Tiedostohuolto) for the tables the integration reads, such as the work cards and parts.
  • Call the read endpoints with modifiedAfter set to the last run. Deleted records come back marked as deleted, so cancelled work leaves the schedule.
  • Poll every few minutes. SkyPlanner sends webhooks when state or the schedule changes, so the write-back side is event-driven.

Data mapping

Visma L7 object (endpoint)SkyPlanner objectDirectionFrequency
Tuote (GET /products/)Products and materialsL7 → SkyPlannerInitial load, then on change
Parts of a work number (GET /manufcomponents/)SubproductsL7 → SkyPlannerPolling with modifiedAfter
Material needs (GET /manufmaterials/)Material requirements per jobL7 → SkyPlannerPolling with modifiedAfter
Resource (KRYH) tree with machine count (GET /manufresources/)Workstations and workstation groupsL7 → SkyPlannerInitial load, rarely after
Work card (TSUUNR) per stage (GET /manufphases/)Jobs (process steps) per workstationL7 → SkyPlannerPolling every few minutes
Stock balances (GET /stockbalances/)StockL7 → SkyPlannerPolling
Purchase rows (GET /purchaserows/)Purchase orders with delivery datesL7 → SkyPlannerPolling
Sales orders and rows (GET /salesorders/, GET /salesrows/)Due dates, customer priorityL7 → SkyPlannerPolling
Production events (GET /manufevents/)Progress per jobL7 → SkyPlannerPolling
Work card resource, startDate, priority, person, schedulingDays (PUT /manufphases/)Planned workstation, start, order and day hoursSkyPlanner → L7On schedule change, via SkyPlanner webhook
Resource calendar capacity (POST /resourceupdates/)Shift capacitySkyPlanner → L7When shifts change
Scheduling rules set in SkyPlannerAllowed workstations, setting time matrix, tools, peopleMaintained in SkyPlannerSet up during onboarding

Integration patterns

1. Initial master data load. Read the resource tree and map each machine to its own SkyPlanner workstation. Where one L7 resource has several machines, create one workstation per machine and a workstation group for the resource. Read products and the product structures with their work stages.

2. Work number sync. Read open work cards with GET /manufphases/, then keep them current with modifiedAfter. Read parts and material needs for each work number, and stock balances and purchase rows, so a stage waits for the delivery date of its purchase row.

3. Schedule write-back. For every stage the engine placed or moved, SkyPlanner calls PUT /manufphases/. The body carries one workSheet entry per work card with:

  • number, the work card, and resource, the chosen resource
  • startDate and priority, so L7 work queues show SkyPlanner’s order
  • person, when a named operator is planned
  • schedulingDays, the planned hours per date

L7 keeps a priority set by an external system as it is (source), so the order holds in the work queues.

4. Capacity sync. When shifts, holidays or overtime change in SkyPlanner, POST /resourceupdates/ writes the new capacity to the L7 resource calendar. L7 load views then match the plan.

5. Shop-floor progress. Operators keep posting in L7 work queues and Visma LTR, and SkyPlanner reads the events with GET /manufevents/. Operators can also confirm work in SkyPlanner Mobile Confirmations. Autopilot replans from either source and the next write-back carries the new times.

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

DataOwner
Products, structures, work stages, quantities, work number stateVisma L7
Stage sequence, start dates, day hours, resource choiceSkyPlanner
Allowed workstations, setting time matrix, tools, peopleSkyPlanner
Shifts and absencesSkyPlanner, written to the L7 resource calendar
Production events and stock postingsVisma L7 work queues and LTR

The main conflict source is L7’s own planning. Requirement calculation and fine planning can place unlocked stages again. Run them for material and reservations only, and do not re-plan the stages SkyPlanner owns.

Typical project steps

Implementation is normally completed within weeks after onboarding starts. Before that, the 30-day free trial runs on your own data from an Excel export of work numbers, stages and resources.

  1. Scoping. Fix the mapping table, ownership rules and polling interval.
  2. Access and licences. License the REST endpoints in scope. The LTR administrator creates the API user, hash and token, ideally in a test company first.
  3. Change logging. Turn on DBLOG for the tables you read.
  4. Initial load. Resources, products, structures and work stages.
  5. Work number sync. Polling with modifiedAfter, deletions and paging.
  6. Constraint setup in SkyPlanner. Allowed workstations, the setting time matrix, tools and people.
  7. Write-back. PUT /manufphases/ and POST /resourceupdates/, tested in the test company.
  8. Parallel run and go-live. Compare with the current plan, fix master data, then switch on write-back in production.

What to plan for in a Visma L7 integration

  • Per-endpoint licences. List every endpoint early and license them before testing.
  • Machine count. A resource with several machines divides the work in L7 (source). Split it into workstations in SkyPlanner and write back the resource L7 expects.
  • Day hours. L7 stores the plan as hours per date. SkyPlanner sends schedulingDays that add up to the stage’s duration.
  • Factory calendar. Keep it complete, because gaps push stages into the past (source).
  • Stock orders. mainNumber, subNumber, rowNumber and newQuantity are used only to change the quantity of a stock order. Leave them out for customer work.
  • The next ERP. Visma has ended new L7 development, and use of the product ends at the end of 2028 (Visma notice). Keep scheduling rules in SkyPlanner, not in L7 fields, so they carry over when you change ERP.

The Visma L7 integration: who configures and supports it

The work covers mapping to your resources, work stages and L7 setup. It also covers the scheduling rules you keep in SkyPlanner: allowed workstations, the setting time matrix, tools and people.

  1. The SkyPlanner team configures it during onboarding and supports it after go-live. Every plant runs L7 differently, and this is where that know-how goes.
  2. Your Visma partner can take part. The partner knows your L7 and LTR setup and can handle the API user, licences and test company. SkyPlanner provides the REST API, Swagger/OpenAPI documentation and webhooks.
  3. Your own developers can build on it against the same documented REST API with an API token. An API token is enough to start, and the SkyPlanner team assists when needed.

When you replace L7, the same SkyPlanner setup connects to the new ERP. See the pages for Business Central, Visma Net, Lemonsoft, Monitor ERP and Odoo.

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 how L7’s own planning compares in Does Visma L7 have finite capacity scheduling? The overview is on the Visma L7 page, and other systems are in the ERP integrations hub.

SkyPlanner reviews from manufacturers

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

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

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

FAQ

Does Visma L7 have an API for production data?

Yes. The Visma L7 REST API on Visma LTR exposes work stages, resources, parts, materials, production events, products, stock balances, sales rows and purchase rows. Each endpoint is licensed separately, and the LTR administrator creates the API user and tokens.

How is the schedule written back to Visma L7?

With PUT /manufphases/, which updates each work card’s resource, start date, priority, person and planned hours per date. POST /resourceupdates/ writes resource calendar capacity. L7 keeps the external priority, so the work queues follow SkyPlanner’s order.

Does Visma L7 support webhooks?

No webhooks are documented. Turn on change logging for the tables in scope and poll with modifiedAfter. SkyPlanner’s own webhooks push schedule changes as they happen.

What scheduling software integrates with Visma L7?

SkyPlanner APS integrates with Visma L7 in both directions over the L7 REST API, and Visma lists Skycode with SkyPlanner on its L7 integrations page. The SkyPlanner team configures it during onboarding.

Who builds the Visma L7 integration?

The SkyPlanner team configures the two-way integration to your L7 setup during onboarding and supports it after go-live. Your Visma partner or your own developers can also build on SkyPlanner’s documented REST API, and an API token is enough to start.

Can we test SkyPlanner before building the integration?

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