Visma Customer Credit Note V2 API

The CustomerCreditNoteV2 API from Visma — 1 operation(s) for customercreditnotev2.

Operations 1

POST /v2/customerCreditNote Create a Customer Credit Note. ScreenID=AR301000 #

Documentation

Specifications

Other Resources

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/visma-customercreditnotev2-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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.

OpenAPI Specification

visma-customercreditnotev2-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Visma.net ERP Customer Credit Note V2 API
  version: v1
servers:
- url: https://api.finance.visma.net
tags:
- name: CustomerCreditNoteV2
paths:
  /v2/customerCreditNote:
    post:
      tags:
      - CustomerCreditNoteV2
      summary: Create a Customer Credit Note. ScreenID=AR301000
      description: 'Response Message has StatusCode Created if POST operation succeed


        Response Message has StatusCode BadRequest or InternalServerError if POST operation failed


        The response headers include an ETag after a successful POST operation.'
      operationId: CustomerCreditNoteV2_Create
      parameters:
      - name: erp-api-background
        in: header
        description: 'Accepts the request and queues it to be executed in the background by our least busy worker. Responds with 202 Accepted and a document containing a JobId reference and details state location.

          Supported values:

          * a URL: when the background operation is finished, a notification will be posted to the URL with a document containing a reference id, status code and a details state location.

          * "none" (without quotes): Fire and forget; no notification will be sent when background operation is finished.

          * "subscription[:<name_1>=<value_1>,..,<name_n>=<value_n>]" (without quotes): when the background operation is finsihed, a notification is posted to the Webhook subscription set up in Developer Portal for your integration client.

          Optionally a set of name-value pairs can be added. These will be sent as headers in the POST request to the Webhook subscription''s url.


          To find status and details of a background-api operation, GET .. v1/background/{id}. To get the response payload of a background-api operation, if any, GET .. v1/background/{id}/content'
        schema:
          type: string
      requestBody:
        description: Defines the data for the Credit Note to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomerCreditNoteUpdateDto'
          text/json:
            schema:
              $ref: '#/components/schemas/CustomerCreditNoteUpdateDto'
          application/xml:
            schema:
              $ref: '#/components/schemas/CustomerCreditNoteUpdateDto'
          text/xml:
            schema:
              $ref: '#/components/schemas/CustomerCreditNoteUpdateDto'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CustomerCreditNoteUpdateDto'
        required: true
        x-bodyName: creditNote
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
            text/json:
              schema:
                type: object
        '202':
          description: Server accepted and queued the request for background execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
            text/json:
              schema:
                $ref: '#/components/schemas/BackgroundApiAcceptedDto'
      security:
      - interactiveapi: []
components:
  schemas:
    BackgroundApiAcceptedDto:
      type: object
      properties:
        id:
          type: string
        stateLocation:
          type: string
    DtoValueOfCustomerDocumentTypes:
      type: object
      properties:
        value:
          enum:
          - Invoice
          - DebitNote
          - CreditNote
          - Payment
          - VoidPayment
          - Prepayment
          - Refund
          - FinCharge
          - SmallBalanceWo
          - SmallCreditWo
          - CashSale
          - CashReturn
          - Undefined
          - NoUpdate
          type: string
    CustomerCreditNoteUpdateDto:
      type: object
      properties:
        paymentMethodId:
          $ref: '#/components/schemas/DtoValueOfString'
        currencyId:
          $ref: '#/components/schemas/DtoValueOfString'
        customerRefNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        externalReference:
          $ref: '#/components/schemas/DtoValueOfString'
        contact:
          $ref: '#/components/schemas/DtoValueOfNullableOfInt32'
        project:
          $ref: '#/components/schemas/DtoValueOfString'
        lines:
          type: array
          items:
            $ref: '#/components/schemas/CustomerCreditNoteLineUpdateDto'
        taxDetails:
          type: array
          items:
            $ref: '#/components/schemas/TaxDetailUpdateDto'
        applicationLines:
          type: array
          items:
            $ref: '#/components/schemas/PaymentLineBaseUpdateDto'
        customerVatZoneId:
          $ref: '#/components/schemas/DtoValueOfString'
        invoiceAddress:
          $ref: '#/components/schemas/DtoValueOfSalesInvoiceAddressUpdateDto'
        invoiceContact:
          $ref: '#/components/schemas/DtoValueOfSalesInvoiceContactUpdateDto'
        overrideNumberSeries:
          $ref: '#/components/schemas/DtoValueOfBoolean'
        sendToAutoInvoice:
          $ref: '#/components/schemas/DtoValueOfNullableOfBoolean'
        exchangeRate:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        startDate:
          $ref: '#/components/schemas/DtoValueOfNullableOfDateTime'
        endDate:
          $ref: '#/components/schemas/DtoValueOfNullableOfDateTime'
        accountingCostRef:
          $ref: '#/components/schemas/DtoValueOfString'
        originatorDocRef:
          $ref: '#/components/schemas/DtoValueOfString'
        contractDocRef:
          $ref: '#/components/schemas/DtoValueOfString'
        referenceNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        customerNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        childCustomerNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        consolidateInvoices:
          $ref: '#/components/schemas/DtoValueOfNullableOfBoolean'
        documentDate:
          $ref: '#/components/schemas/DtoValueOfDateTime'
        origInvoiceDate:
          $ref: '#/components/schemas/DtoValueOfDateTime'
        hold:
          $ref: '#/components/schemas/DtoValueOfBoolean'
        postPeriod:
          $ref: '#/components/schemas/postPeriodInCustomerCreditNoteUpdateDto'
        financialPeriod:
          $ref: '#/components/schemas/financialPeriodInCustomerCreditNoteUpdateDto'
        invoiceText:
          $ref: '#/components/schemas/DtoValueOfString'
        locationId:
          $ref: '#/components/schemas/DtoValueOfString'
        salesPersonID:
          $ref: '#/components/schemas/salesPersonIDInCustomerCreditNoteUpdateDto'
        salesperson:
          $ref: '#/components/schemas/salespersonInCustomerCreditNoteUpdateDto'
        note:
          $ref: '#/components/schemas/DtoValueOfString'
        branchNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        cashAccount:
          $ref: '#/components/schemas/DtoValueOfString'
        dontPrint:
          $ref: '#/components/schemas/DtoValueOfBoolean'
        dontEmail:
          $ref: '#/components/schemas/DtoValueOfBoolean'
    DtoValueOfDecimal:
      type: object
      properties:
        value:
          type: number
          format: double
    SegmentUpdateDto:
      type: object
      properties:
        segmentId:
          type: integer
          format: int32
        segmentValue:
          type: string
    DtoValueOfNullableOfDateTime:
      type: object
      properties:
        value:
          type: string
          format: date-time
    TaxDetailUpdateDto:
      type: object
      properties:
        taxId:
          $ref: '#/components/schemas/DtoValueOfString'
        taxableAmount:
          $ref: '#/components/schemas/DtoValueOfNullableOfDecimal'
        vatAmount:
          $ref: '#/components/schemas/DtoValueOfNullableOfDecimal'
        expenseAmount:
          $ref: '#/components/schemas/DtoValueOfNullableOfDecimal'
      description: This class represents a Tax Detail Line. Used to pass data to server for updating a tax line
    DtoValueOfNullableOfBoolean:
      type: object
      properties:
        value:
          type: boolean
    salespersonInCustomerCreditNoteUpdateDto:
      properties:
        value:
          type: string
      description: The identifier of the salesperson involved.
    SalesInvoiceAddressUpdateDto:
      type: object
      properties:
        overrideAddress:
          $ref: '#/components/schemas/DtoValueOfNullableOfBoolean'
        addressLine1:
          $ref: '#/components/schemas/DtoValueOfString'
        addressLine2:
          $ref: '#/components/schemas/DtoValueOfString'
        addressLine3:
          $ref: '#/components/schemas/DtoValueOfString'
        postalCode:
          $ref: '#/components/schemas/DtoValueOfString'
        city:
          $ref: '#/components/schemas/DtoValueOfString'
        countryId:
          $ref: '#/components/schemas/DtoValueOfString'
        county:
          $ref: '#/components/schemas/DtoValueOfString'
    SalesInvoiceContactUpdateDto:
      type: object
      properties:
        overrideContact:
          $ref: '#/components/schemas/DtoValueOfNullableOfBoolean'
        name:
          $ref: '#/components/schemas/DtoValueOfString'
        attention:
          $ref: '#/components/schemas/DtoValueOfString'
        email:
          $ref: '#/components/schemas/DtoValueOfString'
        phone1:
          $ref: '#/components/schemas/DtoValueOfString'
    postPeriodInCustomerCreditNoteUpdateDto:
      properties:
        value:
          type: string
      description: The financial period to which the transactions recorded in the document should be posted. Use the format MMYYYY.
    DtoValueOfSalesInvoiceAddressUpdateDto:
      type: object
      properties:
        value:
          $ref: '#/components/schemas/SalesInvoiceAddressUpdateDto'
    DtoValueOfSalesInvoiceContactUpdateDto:
      type: object
      properties:
        value:
          $ref: '#/components/schemas/SalesInvoiceContactUpdateDto'
    DtoValueOfInt32:
      type: object
      properties:
        value:
          type: integer
          format: int32
    DtoValueOfBoolean:
      type: object
      properties:
        value:
          type: boolean
    DtoValueOfNullableOfInt32:
      type: object
      properties:
        value:
          type: integer
          format: int32
    DtoValueOfString:
      type: object
      properties:
        value:
          type: string
    DtoValueOfDateTime:
      type: object
      properties:
        value:
          type: string
          format: date-time
    DtoValueOfNullableOfDecimal:
      type: object
      properties:
        value:
          type: number
          format: double
    CustomerCreditNoteLineUpdateDto:
      type: object
      properties:
        discountCode:
          $ref: '#/components/schemas/DtoValueOfString'
        taskId:
          $ref: '#/components/schemas/DtoValueOfString'
        operation:
          enum:
          - Insert
          - Update
          - Delete
          type: string
        inventoryNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        lineNumber:
          $ref: '#/components/schemas/DtoValueOfInt32'
        description:
          $ref: '#/components/schemas/DtoValueOfString'
        quantity:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        unitPriceInCurrency:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        manualAmountInCurrency:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        accountNumber:
          $ref: '#/components/schemas/DtoValueOfString'
        vatCodeId:
          $ref: '#/components/schemas/DtoValueOfString'
        uom:
          $ref: '#/components/schemas/DtoValueOfString'
        discountPercent:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        discountAmountInCurrency:
          $ref: '#/components/schemas/DtoValueOfDecimal'
        manualDiscount:
          $ref: '#/components/schemas/DtoValueOfBoolean'
        subaccount:
          type: array
          items:
            $ref: '#/components/schemas/SegmentUpdateDto'
        salesperson:
          $ref: '#/components/schemas/DtoValueOfString'
        deferralSchedule:
          $ref: '#/components/schemas/DtoValueOfInt32'
        deferralCode:
          $ref: '#/components/schemas/DtoValueOfString'
        termStartDate:
          $ref: '#/components/schemas/DtoValueOfDateTime'
        termEndDate:
          $ref: '#/components/schemas/DtoValueOfDateTime'
        note:
          $ref: '#/components/schemas/DtoValueOfString'
        branchNumber:
          $ref: '#/components/schemas/DtoValueOfString'
    financialPeriodInCustomerCreditNoteUpdateDto:
      properties:
        value:
          type: string
      description: The financial period to which the transactions recorded in the document should be posted. Use the format YYYYMM.
    PaymentLineBaseUpdateDto:
      type: object
      properties:
        operation:
          enum:
          - Insert
          - Update
          - Delete
          type: string
        documentType:
          $ref: '#/components/schemas/DtoValueOfCustomerDocumentTypes'
        refNbr:
          $ref: '#/components/schemas/DtoValueOfString'
        amountPaid:
          $ref: '#/components/schemas/DtoValueOfDecimal'
    salesPersonIDInCustomerCreditNoteUpdateDto:
      properties:
        value:
          type: integer
          format: int32
      description: The field is deprecated for customer document endpoints, please use Salesperson instead
  securitySchemes:
    interactiveapi:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://connect.visma.com/connect/authorize
          tokenUrl: https://connect.visma.com/connect/token
          scopes:
            vismanet_erp_interactive_api:read: vismanet_erp_interactive_api:read
            vismanet_erp_interactive_api:update: vismanet_erp_interactive_api:update
            vismanet_erp_interactive_api:create: vismanet_erp_interactive_api:create
            vismanet_erp_interactive_api:delete: vismanet_erp_interactive_api:delete
            vismanet_erp_interactive_api:ui-extension: vismanet_erp_interactive_api:ui-extension