# Visma Cloud Payroll (Spiris Lon) API

**Canonical:** https://apis.io/apis/visma/visma-payroll-api/  
**Provider:** Visma — https://apis.io/providers/visma/  
**Base URL:** https://vlsapi.vismaonline.com/  
**Documentation:** https://developer.vismaonline.com/docs/overview-visma-l%C3%B6n-smart

Visma Cloud Payroll (Spiris Lon) API is one of 4 APIs that [Visma](https://apis.io/providers/visma/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Payroll, Human Resources, Employees, and Salary. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

REST API for Spiris Lon / Visma Cloud Payroll covering employees, employments, salary transactions, absences, pay periods, payslips and accounting output. Published as OpenAPI 3.0.4 in two live versions, V2 (68 paths / 88 operations) and V1 (73 paths / 63 operations), served from vlsapi.vismaonline.com and sharing the Visma Online IdentityServer with eAccounting.

## Operations (60 of 88)

| Method | Path | Summary |
|---|---|---|
| GET | `/v2/agreements` | Get agreements |
| POST | `/v2/agreements` | Creates an agreement. |
| GET | `/v2/agreements/{agreementId}` | Get agreement by id |
| GET | `/v2/breakrules` | Get break rules |
| POST | `/v2/breakrules` | Create a break rule |
| GET | `/v2/breakrules/{breakRuleId}` | Get break rule by id |
| POST | `/v2/shortcuts/careofsickchild` | Create a care of sick child shortcut |
| GET | `/v2/shortcuts/careofsickchild/{shortcutId}` | Get a care of sick child shortcut by id |
| PUT | `/v2/shortcuts/careofsickchild/{shortcutId}` | Update a care of sick child shortcut |
| DELETE | `/v2/shortcuts/careofsickchild/{shortcutId}` | Delete a care of sick child shortcut |
| GET | `/v2/shortcuts/careofsickchild/{startDate}/{endDate}` | Get care of sick child shortcuts between dates |
| GET | `/v2/employees` | Get all employees |
| POST | `/v2/employees` | Create employee |
| GET | `/v2/employees/{employeeId}` | Get employee by id |
| POST | `/v2/employees/{employeeId}/workschedules` | Create employee work schedule |
| POST | `/v2/employees/{employeeId}/agreements` | Create employee agreement |
| GET | `/v2/externalperiods` | Get external periods |
| POST | `/v2/externalperiods` | Create an external period |
| GET | `/v2/externalperiods/{externalPeriodId}` | Get external period by unique identifier |
| DELETE | `/v2/externalperiods/{externalPeriodId}` | Delete an external period |
| GET | `/v2/externalperiods/{employeeId}/{deviationDate}` | Get external period by employee and deviation date |
| POST | `/v2/shortcuts/holiday` | Create a holiday shortcut |
| GET | `/v2/shortcuts/holiday/{shortcutId}` | Get a holiday shortcut by id |
| PUT | `/v2/shortcuts/holiday/{shortcutId}` | Update a holiday shortcut |
| DELETE | `/v2/shortcuts/holiday/{shortcutId}` | Delete a holiday shortcut |
| GET | `/v2/shortcuts/holiday/{startDate}/{endDate}` | Get holiday shortcuts between dates |
| POST | `/v2/shortcuts/hoursworked` | Create an hours worked shortcut |
| GET | `/v2/shortcuts/hoursworked/{shortcutId}` | Get an hours worked shortcut by id |
| PUT | `/v2/shortcuts/hoursworked/{shortcutId}` | Update an hours worked shortcut |
| DELETE | `/v2/shortcuts/hoursworked/{shortcutId}` | Delete an hours worked shortcut |
| GET | `/v2/shortcuts/hoursworked/{startDate}/{endDate}` | Get hours worked shortcuts between dates |
| POST | `/v2/shortcuts/otherabsence` | Create an other absence shortcut |
| GET | `/v2/shortcuts/otherabsence/{shortcutId}` | Get an other absence shortcut by id |
| PUT | `/v2/shortcuts/otherabsence/{shortcutId}` | Update an other absence shortcut |
| DELETE | `/v2/shortcuts/otherabsence/{shortcutId}` | Delete an other absence shortcut |
| GET | `/v2/shortcuts/otherabsence/{startDate}/{endDate}` | Get other absence shortcuts between dates |
| POST | `/v2/shortcuts/otheradditiondeduction` | Create other addition and deduction shortcut |
| GET | `/v2/shortcuts/otheradditiondeduction/{shortcutId}` | Get other addition and deduction shortcut by id |
| PUT | `/v2/shortcuts/otheradditiondeduction/{shortcutId}` | Update other addition and deduction shortcut |
| DELETE | `/v2/shortcuts/otheradditiondeduction/{shortcutId}` | Delete other addition and deduction shortcut |
| GET | `/v2/shortcuts/otheradditiondeduction/{startDate}/{endDate}` | Get other addition and deduction shortcuts between dates |
| POST | `/v2/shortcuts/overtime` | Create an overtime shortcut |
| GET | `/v2/shortcuts/overtime/{shortcutId}` | Get an overtime shortcut by id |
| PUT | `/v2/shortcuts/overtime/{shortcutId}` | Update an overtime shortcut |
| DELETE | `/v2/shortcuts/overtime/{shortcutId}` | Delete an overtime shortcut |
| GET | `/v2/shortcuts/overtime/{startDate}/{endDate}` | Get overtime shortcuts between dates |
| POST | `/v2/shortcuts/parentalleave` | Create a parental leave shortcut |
| GET | `/v2/shortcuts/parentalleave/{shortcutId}` | Get a parental leave shortcut by id |
| PUT | `/v2/shortcuts/parentalleave/{shortcutId}` | Update a parental leave shortcut |
| DELETE | `/v2/shortcuts/parentalleave/{shortcutId}` | Delete a parental leave shortcut |
| GET | `/v2/shortcuts/parentalleave/{startDate}/{endDate}` | Get parental leave shortcuts between dates |
| GET | `/v2/paycodes` | Gets paycodes |
| GET | `/v2/paycodes/{paycodeId}` | Gets a paycode by id |
| GET | `/v2/paycodes/travelandexpense` | Gets paycodes to use for travel and expense shortcut. |
| GET | `/v2/paycodes/otheradditiondeduction` | Gets paycodes to use for other addition deduction shortcut. |
| GET | `/v2/payrollsettings` | Get payroll settings. |
| GET | `/v2/payslips/wagerun/{wagerunId}` | Gets payslips for specified wage run |
| GET | `/v2/payslips/{payslipId}` | Gets payslip by id |
| GET | `/v2/payslips/{employeeId}/withdetails` | Gets all employees payslips with employee details |
| POST | `/v2/shortcuts/sickleave` | Create a sick leave shortcut |

…and 28 more operations. They are listed in full on the page.

## Machine-readable artifacts (4)

- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/visma/refs/heads/main/openapi/visma-payroll-api-v2-openapi.json
- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/visma/refs/heads/main/openapi/visma-payroll-api-v1-openapi.json
- **Documentation** — https://developer.vismaonline.com/
- **Overlay** — https://raw.githubusercontent.com/api-evangelist/visma/refs/heads/main/overlays/visma-payroll-api-v2-overlay.yaml

## Other Visma APIs (3)

- [Visma.net ERP API](https://apis.io/apis/visma/visma-net-erp-api/)
- [Visma Bookkeeping & Invoicing / eAccounting API](https://apis.io/apis/visma/visma-eaccounting-api/)
- [Visma Business NXT GraphQL API](https://apis.io/apis/visma/visma-business-nxt-api/)

## Tags

Payroll, Human Resources, Employees, Salary

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/visma/visma-payroll-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/visma/.
