Visma

Visma is a Nordic business-software group headquartered in Oslo, Norway, supplying cloud ERP, accounting, invoicing, payroll, HR and public-sector software to more than a million customers across Europe and Latin America. Its developer surface is federated across product lines rather than centralised: Visma.net ERP publishes a 511-operation OpenAPI 3.0 contract at api.finance.visma.net in service (client-credentials) and interactive (authorization-code) flavours; Bookkeeping & Invoicing/eAccounting and Cloud Payroll (Spiris, formerly Visma Spcs) publish OpenAPI 3.0 contracts at eaccountingapi.vismaonline.com and vlsapi.vismaonline.com; and Business NXT exposes a GraphQL API at business.visma.net. Identity is centralised on Visma Connect (connect.visma.com), an OpenID Connect provider advertising 129 scopes, with a second IdentityServer at identity.vismaonline.com for the Spiris product line. Visma ships two first-party remote MCP servers — Business NXT at mcp.business.visma.net and Spiris at mcp.spiris.se — both OAuth-protected and discoverable via RFC 9728.

Visma publishes 3 APIs on the APIs.io network: Visma.net ERP API, Bookkeeping & Invoicing / eAccounting API, and Cloud Payroll (Spiris Lon) API. Tagged areas include Accounting, Business Software, ERP, Enterprise, and Financial-Services.

The Visma catalog on APIs.io includes 1 event-driven AsyncAPI specification.

Visma’s developer surface includes documentation, API reference, getting-started guide, signup flow, support, engineering blog, authentication, and 35 more developer resources.

61.9/100 strong Agent 44/100 agent ready Full breakdown ↓
scored 2026-09-14 · rubric v0.22.0
5 APIs 1 MCP Servers
AccountingBusiness SoftwareERPEnterpriseFinancial-ServicesHuman ResourcesInvoicingNordicPayrollSoftware-as-a-Service

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-09-14 · rubric v0.22.0
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it carries 10 points of the composite. It is scored from the published contracts themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in front of it, and the first time that check is skipped a duplicate record is created. Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet, not penalised by it.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/visma: open an issue to ask a question, or submit a pull request to add artifacts. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

APIs 4

Individual APIs this provider publishes, each with its own machine-readable definition.

Visma.net ERP API

REST API for Visma.net ERP (Visma Net Financials) covering general ledger, accounts receivable and payable, customers, suppliers, sales orders, purchase orders, inventory, proje...

Visma Bookkeeping & Invoicing / eAccounting API

REST API for Bookkeeping & Invoicing / eAccounting (Spiris, formerly Visma Spcs) covering customers, suppliers, articles, customer and supplier invoices, orders, quotes, voucher...

Visma Cloud Payroll (Spiris Lon) API

REST API for Spiris Lon / Visma Cloud Payroll covering employees, employments, salary transactions, absences, pay periods, payslips and accounting output. Published as OpenAPI 3...

Visma Business NXT GraphQL API

GraphQL API for Business NXT, Visma's ERP for mid-market Nordic customers. Two endpoints share one schema: /api/graphql for a Visma.net user context (authorization code with PKC...

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

Visma MCP Server

MCP SERVER

Pricing Plans 1

Published pricing tiers and plan structures.

Visma Plans Pricing

1 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Visma Rate Limits

4 limits

RATE LIMITS

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Security Posture 4

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Visma Authentication

oauth2 · 2 schemes

SECURITY

Visma Domain Security

TLSv1.3 · HSTS · DNSSEC · DMARC

SECURITY

Visma Vulnerability Disclosure

Intigriti · contact published

SECURITY

Visma Trust Center

trust center published

SECURITY

Scopes 1

OAuth scopes governing access to this provider's APIs.

Visma Scopes

5 scopes · authorizationCode/clientCredentials

5 scopes

SCOPES

Resources

Get Started 4

Portal, sign-up, and the first successful call

Documentation 2

Reference material describing how the API behaves

Agent Surfaces 8

MCP servers, agent skills, and machine-readable catalogs

Scroll for all 8

Design & Contract 7

Pagination, idempotency, versioning, errors, and events

Scroll for all 7

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 8

Authentication, authorization, and security posture

Scroll for all 8

Operate 5

Status, limits, changes, and where to get help

Commercial 3

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Source (apis.yml)

apis.yml Raw ↑
aid: visma
name: Visma
url: https://raw.githubusercontent.com/api-evangelist/visma/refs/heads/main/apis.yml
description: 'Visma is a Nordic business-software group headquartered in Oslo, Norway, supplying cloud ERP, accounting, invoicing,
  payroll, HR and public-sector software to more than a million customers across Europe and Latin America. Its developer surface
  is federated across product lines rather than centralised: Visma.net ERP publishes a 511-operation OpenAPI 3.0 contract
  at api.finance.visma.net in service (client-credentials) and interactive (authorization-code) flavours; Bookkeeping & Invoicing/eAccounting
  and Cloud Payroll (Spiris, formerly Visma Spcs) publish OpenAPI 3.0 contracts at eaccountingapi.vismaonline.com and vlsapi.vismaonline.com;
  and Business NXT exposes a GraphQL API at business.visma.net. Identity is centralised on Visma Connect (connect.visma.com),
  an OpenID Connect provider advertising 129 scopes, with a second IdentityServer at identity.vismaonline.com for the Spiris
  product line. Visma ships two first-party remote MCP servers — Business NXT at mcp.business.visma.net and Spiris at mcp.spiris.se
  — both OAuth-protected and discoverable via RFC 9728.'
x-type: company
x-source: harvest:absent-parent
specificationVersion: '0.20'
created: '2026-09-13'
modified: '2026-09-13'
position: Producing
image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
tags:
- Accounting
- Business Software
- ERP
- Enterprise
- Financial-Services
- Human Resources
- Invoicing
- Nordic
- Payroll
- Software-as-a-Service
tags_raw:
- Accounting
- Business Software
- ERP
- Enterprise
- Financial Services
- Human Resources
- Invoicing
- Nordic
- Payroll
- SaaS
apis:
- aid: visma:visma-net-erp-api
  name: Visma.net ERP API
  description: 'REST API for Visma.net ERP (Visma Net Financials) covering general ledger, accounts receivable and payable,
    customers, suppliers, sales orders, purchase orders, inventory, projects and dimensions. 395 paths / 511 operations, published
    as OpenAPI 3.0.4 in two flavours that share an identical path and schema surface but differ in OAuth flow: the Service
    API uses client credentials, the Interactive API uses authorization code with named scopes.'
  humanURL: https://docs.vismasoftware.no/vismanetapi/
  baseURL: https://api.finance.visma.net
  tags:
  - ERP
  - Accounting
  - Finance
  - Inventory
  - Sales Orders
  tags_raw:
  - ERP
  - Accounting
  - Finance
  - Inventory
  - Sales Orders
  properties:
  - type: OpenAPI
    url: openapi/visma-net-erp-service-api-openapi.json
    name: Visma.net ERP Service API (client credentials)
  - type: OpenAPI
    url: openapi/visma-net-erp-interactive-api-openapi.json
    name: Visma.net ERP Interactive API (authorization code)
  - type: Documentation
    url: https://docs.vismasoftware.no/vismanetapi/
  - type: APIReference
    url: https://docs.vismasoftware.no/vismanetapi/api-reference/
  - type: GettingStarted
    url: https://docs.vismasoftware.no/vismanetapi/introduction/getting-started-with-visma-net-api/
  - type: Webhooks
    url: asyncapi/visma-net-erp-webhooks.yml
  - type: RateLimits
    url: rate-limits/visma-rate-limits.yml
  - type: Support
    url: https://docs.vismasoftware.no/vismanetapi/support/
  - type: Overlay
    url: overlays/visma-net-erp-service-api-overlay.yaml
  - type: Deprecation
    url: https://docs.vismasoftware.no/vismanetapi/end-of-life-notices/
  - type: Conventions
    url: conventions/visma-conventions.yml
  image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
- aid: visma:visma-eaccounting-api
  name: Visma Bookkeeping & Invoicing / eAccounting API
  description: REST API for Bookkeeping & Invoicing / eAccounting (Spiris, formerly Visma Spcs) covering customers, suppliers,
    articles, customer and supplier invoices, orders, quotes, vouchers, accounts, projects, cost centres and attachments.
    274 paths / 228 operations, OpenAPI 3.0.4, version 2, served from eaccountingapi.vismaonline.com.
  humanURL: https://developer.vismaonline.com/
  baseURL: https://eaccountingapi.vismaonline.com/v2/
  tags:
  - Accounting
  - Invoicing
  - Bookkeeping
  - Small Business
  tags_raw:
  - Accounting
  - Invoicing
  - Bookkeeping
  - Small Business
  properties:
  - type: OpenAPI
    url: openapi/visma-eaccounting-api-openapi.json
  - type: Documentation
    url: https://developer.vismaonline.com/docs/spiris-eaccounting-api-documentation
  - type: APIReference
    url: https://eaccountingapi.vismaonline.com/swagger/ui/index
  - type: LLMsTxt
    url: llms/visma-eaccounting-llms.txt
  - type: Overlay
    url: overlays/visma-eaccounting-api-overlay.yaml
  - type: ErrorCatalog
    url: errors/visma-problem-types.yml
  - type: ChangeLog
    url: https://developer.vismaonline.com/changelog
  image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
- aid: visma:visma-payroll-api
  name: Visma Cloud Payroll (Spiris Lon) API
  description: 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.
  humanURL: https://developer.vismaonline.com/docs/overview-visma-l%C3%B6n-smart
  baseURL: https://vlsapi.vismaonline.com/
  tags:
  - Payroll
  - Human Resources
  - Employees
  - Salary
  tags_raw:
  - Payroll
  - Human Resources
  - Employees
  - Salary
  properties:
  - type: OpenAPI
    url: openapi/visma-payroll-api-v2-openapi.json
    name: Spiris Lon API V2
  - type: OpenAPI
    url: openapi/visma-payroll-api-v1-openapi.json
    name: Spiris Lon API V1
  - type: Documentation
    url: https://developer.vismaonline.com/
  - type: Overlay
    url: overlays/visma-payroll-api-v2-overlay.yaml
  image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
- aid: visma:visma-business-nxt-api
  name: Visma Business NXT GraphQL API
  description: 'GraphQL API for Business NXT, Visma''s ERP for mid-market Nordic customers. Two endpoints share one schema:
    /api/graphql for a Visma.net user context (authorization code with PKCE) and /api/graphql-service for machine-to-machine
    access (client credentials). The schema is tenant-shaped — it includes each customer''s data-model-extension tables —
    and introspection is authentication-gated, so no SDL is captured here.'
  humanURL: https://docs.vismasoftware.no/businessnxtapi/
  baseURL: https://business.visma.net/api/graphql
  tags:
  - ERP
  - GraphQL
  - Accounting
  - Logistics
  tags_raw:
  - ERP
  - GraphQL
  - Accounting
  - Logistics
  properties:
  - type: Documentation
    url: https://docs.vismasoftware.no/businessnxtapi/
  - type: APIReference
    url: https://docs.vismasoftware.no/businessnxtapi/apireference/schema/
  - type: GettingStarted
    url: https://docs.vismasoftware.no/businessnxtapi/intro/gettingstarted/
  - type: MCPServer
    url: mcp/visma-mcp.yml
  - type: ToolCrosswalk
    url: mcp/visma-tool-crosswalk.yml
  image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
common:
- type: Website
  url: https://www.visma.com/
- type: DeveloperPortal
  url: https://developer.visma.com/
- type: Documentation
  url: https://docs.vismasoftware.no/
- type: APIReference
  url: https://docs.vismasoftware.no/vismanetapi/api-reference/
- type: GettingStarted
  url: https://docs.vismasoftware.no/vismanetapi/introduction/getting-started-with-visma-net-api/
- type: SignUp
  url: https://oauth.developers.visma.com/service-registry/
- type: Support
  url: https://docs.vismasoftware.no/vismanetapi/support/
- type: Blog
  url: https://www.visma.com/blog
- type: TermsOfService
  url: https://www.visma.com/legal
- type: PrivacyPolicy
  url: https://www.visma.com/privacy-statement
- type: StatusPage
  url: https://status.visma.com/
- type: Deprecation
  url: https://docs.vismasoftware.no/vismanetapi/end-of-life-notices/
- type: Security
  url: security/visma-vulnerability-disclosure.yml
- type: Compliance
  url: security/visma-trust-center.yml
- type: LLMsTxt
  url: llms/visma-llms.txt
- type: MCPServer
  url: mcp/visma-mcp.yml
  name: Visma remote MCP servers
  description: 'Two first-party OAuth-protected remote MCP servers: Business NXT at https://mcp.business.visma.net/ and Spiris
    (Bookkeeping & Invoicing) at https://mcp.spiris.se/mcp.'
- type: WellKnown
  url: well-known/visma-well-known.yml
- type: SecurityTxt
  url: well-known/visma-connect-security.txt
- type: Packages
  url: packages/visma-packages.yml
- type: Components
  url: components/visma-components.yml
- type: Authentication
  url: authentication/visma-authentication.yml
- type: OAuthScopes
  url: scopes/visma-scopes.yml
- type: Conventions
  url: conventions/visma-conventions.yml
- type: Conformance
  url: conformance/visma-conformance.yml
- type: ErrorCatalog
  url: errors/visma-problem-types.yml
- type: Lifecycle
  url: lifecycle/visma-lifecycle.yml
- type: ChangeLog
  url: changelog/visma-changelog.yml
- type: RateLimits
  url: rate-limits/visma-rate-limits.yml
- type: Plans
  url: plans/visma-plans-pricing.yml
- type: Sandbox
  url: sandbox/visma-sandbox.yml
- type: DataModel
  url: data-model/visma-data-model.yml
- type: Webhooks
  url: asyncapi/visma-net-erp-webhooks.yml
- type: DomainSecurity
  url: security/visma-domain-security.yml
- type: VulnerabilityDisclosure
  url: security/visma-vulnerability-disclosure.yml
- type: TrustCenter
  url: security/visma-trust-center.yml
- type: AgentSkill
  url: skills/_index.yml
- type: ToolCrosswalk
  url: mcp/visma-tool-crosswalk.yml
- type: GitHubOrganization
  url: https://github.com/Visma-Software-AS-Product
  name: Visma Software AS Product — official API example repositories
- type: AgentSkill
  url: skills/visma-create-customer-and-sales-order.md
  name: Create a customer and raise a sales order
- type: AgentSkill
  url: skills/visma-invoice-and-reverse.md
  name: Issue and reverse a customer invoice
- type: AgentSkill
  url: skills/visma-supplier-invoice-approval.md
  name: Supplier invoice intake and approval
- type: AgentSkill
  url: skills/visma-business-nxt-mcp-session.md
  name: Working a Business NXT MCP session
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
- FN: APIs.json
  email: info@apis.io
x-enrichment:
  date: '2026-09-13'
  status: enriched
  artifacts_added: 50
  pass: local-v3

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/visma"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/visma/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/visma/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.