Visma Voucher Drafts API

A preliminary version of a voucher that can be edited and reviewed before being finalized. ___ Available in any of the following variants: * Pro * Standard * Solo * Bookkeeping

Operations 6

GET /voucherdrafts Get voucher drafts #
POST /voucherdrafts Create voucher draft #
GET /voucherdrafts/{voucherDraftId} Get voucher draft by id #
PUT /voucherdrafts/{voucherDraftId} Update voucher draft #
DELETE /voucherdrafts/{voucherDraftId} Delete voucher draft #
POST /voucherdrafts/{voucherDraftId}/convert Convert voucher draft to voucher #

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-voucherdrafts-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-voucherdrafts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Bookkeeping & Invoicing/eAccounting API V2 Voucher Drafts…
  description: 'Visit our complete Bookkeeping & Invoicing/eAccounting API docs for how to get started, information about authentication, error handling, query customization and more.


    ✉ API Support'
  version: v2
servers:
- url: https://eaccountingapi.vismaonline.com/v2/
tags:
- name: VoucherDrafts
  description: 'A preliminary version of a voucher that can be edited and reviewed before being finalized.


    ___


    Available in any of the following variants:

    * Pro

    * Standard

    * Solo

    * Bookkeeping'
paths:
  /voucherdrafts:
    get:
      tags:
      - VoucherDrafts
      summary: Get voucher drafts
      description: 'Get all voucher drafts, or add query parameters to filter the results. The response will include a list of voucher drafts with their details such as date, text, and associated voucher draft rows.


        ___

        Requires any of the following scopes:

        * ea:accounting

        * ea:accounting_readonly'
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResponseOfVoucherDraftApi'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
      operationId: getVoucherdrafts
      x-operation-id-source: derived
    post:
      tags:
      - VoucherDrafts
      summary: Create voucher draft
      description: 'Create a new voucher draft with transaction rows.


        ___

        Requires any of the following scopes:

        * ea:accounting'
      parameters:
      - name: amountIncludesVat
        in: query
        description: 'Default value: False. If true, the amounts are used as including VAT when draft is created.'
        schema:
          type: boolean
          default: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoucherDraftApi'
      responses:
        '201':
          description: Voucher draft created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VoucherDraftApi'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
      operationId: postVoucherdrafts
      x-operation-id-source: derived
  /voucherdrafts/{voucherDraftId}:
    get:
      tags:
      - VoucherDrafts
      summary: Get voucher draft by id
      description: 'Get a specific voucher draft by its unique identifier. The response will include the voucher draft details such as date, text, and associated voucher draft rows.


        ___

        Requires any of the following scopes:

        * ea:accounting

        * ea:accounting_readonly'
      parameters:
      - name: voucherDraftId
        in: path
        description: This represents the Id of the voucher draft.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VoucherDraftApi'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
        '404':
          description: Voucher not found
      operationId: getVoucherdraftsByVoucherDraftId
      x-operation-id-source: derived
    put:
      tags:
      - VoucherDrafts
      summary: Update voucher draft
      description: 'Replace an existing voucher draft''s data with the provided new data. The updated voucher draft can be saved for later completion or converted to a voucher.


        ___

        Requires any of the following scopes:

        * ea:accounting'
      parameters:
      - name: voucherDraftId
        in: path
        description: This represents the Id of the voucher draft.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoucherDraftApi'
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VoucherDraftApi'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
        '404':
          description: Voucher draft not found
      operationId: putVoucherdraftsByVoucherDraftId
      x-operation-id-source: derived
    delete:
      tags:
      - VoucherDrafts
      summary: Delete voucher draft
      description: 'Delete a specified voucher draft. This action cannot be undone.


        ___

        Requires any of the following scopes:

        * ea:accounting'
      parameters:
      - name: voucherDraftId
        in: path
        description: This represents the Id of the voucher draft.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Request successful
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
        '404':
          description: Voucher draft not found
      operationId: deleteVoucherdraftsByVoucherDraftId
      x-operation-id-source: derived
  /voucherdrafts/{voucherDraftId}/convert:
    post:
      tags:
      - VoucherDrafts
      summary: Convert voucher draft to voucher
      description: 'Convert a voucher draft to a finalized voucher. Once converted, the voucher draft will be removed and a new voucher will be created with the same transaction data.


        ___

        Requires any of the following scopes:

        * ea:accounting'
      parameters:
      - name: voucherDraftId
        in: path
        description: This represents the Id of the voucher draft.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Voucher created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VoucherApi'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommonExtendedBadRequest'
        '404':
          description: Voucher draft not found
      operationId: postVoucherdraftsByVoucherDraftIdConvert
      x-operation-id-source: derived
components:
  schemas:
    VoucherDraftApi:
      required:
      - VoucherDate
      type: object
      properties:
        Id:
          type: string
          description: The unique identifier of the voucher draft provided by eAccounting
          format: uuid
          readOnly: true
        VoucherDate:
          type: string
          description: The voucher date in yyyy-mm-dd format
          format: date-time
        VoucherText:
          maxLength: 1000
          minLength: 0
          type:
          - string
          - 'null'
          description: 'Description or text for the voucher. Maximum length: 1000 characters'
        NumberSeries:
          type:
          - string
          - 'null'
          description: The number series for the voucher. If not set, the default number series will be used
        CreatedUtc:
          type: string
          description: The UTC timestamp when the voucher draft was created
          format: date-time
          readOnly: true
        ModifiedUtc:
          type:
          - string
          - 'null'
          description: The UTC timestamp when the voucher draft was last modified
          format: date-time
          readOnly: true
        Rows:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/VoucherDraftRowApi'
          description: Collection of voucher draft rows containing accounting entries
      additionalProperties: false
    CommonPaginationMetadata:
      required:
      - CurrentPage
      - PageSize
      - ServerTimeUtc
      - TotalNumberOfPages
      - TotalNumberOfResults
      type: object
      properties:
        CurrentPage:
          type: integer
          description: The current page number
          format: int32
        PageSize:
          type: integer
          description: The number of results per page
          format: int32
        TotalNumberOfPages:
          type: integer
          description: The total number of pages available
          format: int32
        TotalNumberOfResults:
          type: integer
          description: The total number of results available for the query
          format: int32
        ServerTimeUtc:
          type: string
          description: <strong>Possible values:</strong><br/>2017-07-21T17:32:28Z<br/><br/>The date-time notation as defined by RFC 3339, section 5.6.
          format: date-time
      additionalProperties: false
    PaginatedResponseOfVoucherDraftApi:
      required:
      - Data
      - Meta
      type: object
      properties:
        Meta:
          $ref: '#/components/schemas/CommonPaginationMetadata'
        Data:
          type: array
          items:
            $ref: '#/components/schemas/VoucherDraftApi'
      additionalProperties: false
    CommonError:
      type: object
      properties:
        Field:
          type:
          - string
          - 'null'
        ErrorCode:
          type:
          - string
          - 'null'
        Message:
          type:
          - string
          - 'null'
        Key:
          type:
          - string
          - 'null'
      additionalProperties: false
    VoucherDraftRowApi:
      required:
      - AccountNumber
      type: object
      properties:
        AccountNumber:
          maximum: 9999999999
          minimum: 1
          type: integer
          description: The account number for the voucher row. Must be between 1 and 9999999999
          format: int64
        DebitAmount:
          maximum: 1000000000
          minimum: 0
          type: number
          description: The debit amount for this voucher row. Maximum 2 decimals allowed
          format: double
        CreditAmount:
          maximum: 1000000000
          minimum: 0
          type: number
          description: The credit amount for this voucher row. Maximum 2 decimals allowed
          format: double
        VatCodeId:
          type:
          - string
          - 'null'
          description: The VAT code identifier. If set, it will be used to calculate the corresponding VAT amount
          format: uuid
        CostCenterItemId1:
          type:
          - string
          - 'null'
          description: 'The first cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
        CostCenterItemId2:
          type:
          - string
          - 'null'
          description: 'The second cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
        CostCenterItemId3:
          type:
          - string
          - 'null'
          description: 'The third cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
        TransactionText:
          maxLength: 50
          minLength: 0
          type:
          - string
          - 'null'
          description: 'Transaction description text. Maximum length: 50 characters'
        ProjectId:
          type:
          - string
          - 'null'
          description: 'The project identifier for this voucher row. Source: Get from /v2/projects'
          format: uuid
        Quantity:
          type:
          - number
          - 'null'
          description: Quantity value with maximum 2 decimals. This feature is for Dutch companies only which have agriculture support enabled
          format: double
        Weight:
          type:
          - number
          - 'null'
          description: Weight value with maximum 2 decimals. This feature is for Dutch companies only which have agriculture support enabled
          format: double
        DeliveryDate:
          type:
          - string
          - 'null'
          description: Delivery date in YYYY-MM-DD format. This feature is for Dutch companies only which have agriculture support enabled
          format: date-time
        HarvestYear:
          type:
          - integer
          - 'null'
          description: The harvest year. This feature is for Dutch companies only which have agriculture support enabled
          format: int32
      additionalProperties: false
    CommonExtendedBadRequest:
      type: object
      properties:
        ErrorCode:
          type: integer
          format: int32
        DeveloperErrorMessage:
          type:
          - string
          - 'null'
        ErrorId:
          type: string
          format: uuid
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CommonError'
      additionalProperties: false
    VoucherApi:
      required:
      - Rows
      - VoucherDate
      - VoucherText
      type: object
      properties:
        Id:
          type: string
          description: Unique Id provided by the system
          format: uuid
          readOnly: true
        VoucherDate:
          type: string
          description: 'Bookkeeping date. Format: yyyy-mm-dd'
          format: date-time
        VoucherText:
          maxLength: 1000
          minLength: 0
          type: string
          description: Voucher's description
        Rows:
          type: array
          items:
            $ref: '#/components/schemas/VoucherRowApi'
          description: The accounting rows/lines of the voucher
        NumberAndNumberSeries:
          type:
          - string
          - 'null'
          description: Returns the voucher number
          readOnly: true
        NumberSeries:
          type:
          - string
          - 'null'
          description: Returns the number series. Use parameter useDefaultVoucherSeries with false value to set Series.
        ImportedVoucherNumber:
          type:
          - string
          - 'null'
          description: Returns original voucher number if the voucher is imported from another system.
          readOnly: true
        Attachments:
          $ref: '#/components/schemas/AttachmentLinkApi'
        ModifiedUtc:
          type:
          - string
          - 'null'
          description: The UTC date and time when the voucher was last modified.
          format: date-time
          readOnly: true
        VoucherType:
          type: integer
          description: <strong>Possible values:</strong><br/>2 = ManualVoucher,<br/>5 = BankAccountTransferDeposit,<br/>6 = BankAccountTransferWithDrawal,<br/>7 = PurchaseReceipt,<br/>8 = VatReport,<br/>9 = SieImport,<br/>10 = BankTransactionDeposit,<br/>11 = BankTransactionWithdrawal,<br/>12 = SupplierInvoiceDebit,<br/>13 = SupplierInvoiceCredit,<br/>14 = CustomerInvoiceDebit,<br/>15 = CustomerInvoiceCredit,<br/>16 = ClaimOnCardAcquirer,<br/>17 = TaxReturn,<br/>18 = AllocationPeriod,<br/>19 = AllocationPeriodCorrection,<br/>20 = InventoryEvent,<br/>21 = EmployerReport,<br/>22 = Payslip,<br/>23 = CustomerQuickInvoiceDebit,<br/>24 = CustomerQuickInvoiceCredit,<br/>25 = SupplierQuickInvoiceDebit,<br/>26 = SupplierQuickInvoiceCredit,<br/>27 = IZettleVoucher,<br/>28 = StockValuation,<br/>29 = ClaimOnSpotFactoring,<br/>30 = RecourseFactoring,<br/>32 = DirectDebit,<br/>33 = DirectDebitCorrection,<br/>34 = PaymentLinks
          format: int32
        SourceId:
          type:
          - string
          - 'null'
          description: The source of the voucher, e.g. invoice id.
          format: uuid
          readOnly: true
        CreatedUtc:
          type: string
          description: The UTC date and time when the voucher was created.
          format: date-time
          readOnly: true
      additionalProperties: false
    VoucherRowApi:
      required:
      - AccountNumber
      type: object
      properties:
        AccountNumber:
          maximum: 9999999999
          minimum: 1
          type: integer
          description: The account number for this row. Must be between 1 and 9999999999
          format: int64
        AccountDescription:
          type:
          - string
          - 'null'
          description: Account number description
          readOnly: true
        DebitAmount:
          maximum: 10000000000
          minimum: 0
          type: number
          description: The debit amount for this row. Maximum 2 decimal places
          format: double
        CreditAmount:
          maximum: 10000000000
          minimum: 0
          type: number
          description: The credit amount for this row. Maximum 2 decimal places
          format: double
        TransactionText:
          maxLength: 60
          minLength: 0
          type:
          - string
          - 'null'
          description: 'Transaction text used in searchable column in Account Analysis. Maximum length: 60 characters'
        CostCenterItemId1:
          type:
          - string
          - 'null'
          description: 'The first cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
          readOnly: true
        CostCenterItemId2:
          type:
          - string
          - 'null'
          description: 'The second cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
        CostCenterItemId3:
          type:
          - string
          - 'null'
          description: 'The third cost center item identifier. Source: Get from /v2/costcenters'
          format: uuid
        VatCodeId:
          type:
          - string
          - 'null'
          description: The VAT code identifier returned from the provided account number
          format: uuid
        VatCodeAndPercent:
          type:
          - string
          - 'null'
          description: 'The VAT code and percentage in the format ''Code (Percentage)''. Example: ''MVA 25%'''
        VatAmount:
          type:
          - number
          - 'null'
          description: The VAT amount for this row. Only for Denmark and Netherlands
          format: double
        Quantity:
          type:
          - number
          - 'null'
          description: The quantity for this row. Maximum 2 decimal places. This feature is for Dutch companies with agriculture support only
          format: double
        Weight:
          type:
          - number
          - 'null'
          description: The weight for this row. Maximum 2 decimal places. This feature is for Dutch companies with agriculture support only
          format: double
        DeliveryDate:
          type:
          - string
          - 'null'
          description: 'The delivery date. Format: YYYY-MM-DD. This feature is for Dutch companies with agriculture support only'
          format: date-time
        HarvestYear:
          type:
          - integer
          - 'null'
          description: The harvest year. This feature is for Dutch companies with agriculture support only
          format: int32
        ProjectId:
          type:
          - string
          - 'null'
          description: The project identifier. Get from /v2/projects
          format: uuid
      additionalProperties: false
    AttachmentLinkApi:
      required:
      - AttachmentIds
      - DocumentType
      type: object
      properties:
        DocumentId:
          type: string
          description: 'The id from the system of the corresponding linked document. Source: Get from endpoints corresponding to your document type'
          format: uuid
        DocumentType:
          type: integer
          description: <strong>Possible values:</strong><br/>0 = None,<br/>1 = SupplierInvoice,<br/>2 = Receipt,<br/>3 = Voucher,<br/>4 = SupplierInvoiceDraft,<br/>5 = AllocationPeriod,<br/>6 = Transfer,<br/>8 = BankTransaction,<br/>9 = VoucherDraft
          format: int32
        AttachmentIds:
          type: array
          items:
            type: string
            format: uuid
          description: List of guids representing the attachment ids fetched from the system
      additionalProperties: false
x-tagGroups:
- name: Sales
  tags:
  - ArticleLabels
  - Articles
  - CustomerInvoiceDrafts
  - CustomerInvoiceOffsets
  - CustomerInvoices
  - CustomerInvoiceValuationHistories
  - CustomerLabels
  - CustomerLedgerItems
  - Customers
  - DeliveryMethods
  - DeliveryTerms
  - DiscountAgreements
  - Orders
  - QuoteDrafts
  - Quotes
  - SalesPriceLists
  - TermsOfPayment
  - WebshopOrders
- name: Purchase
  tags:
  - BankAccounts
  - ForeignPaymentCodes
  - PurchaseReceiptDrafts
  - SupplierInvoiceDrafts
  - SupplierInvoices
  - SupplierInvoiceValuationHistories
  - SupplierLedgerItems
  - Suppliers
- name: Common
  tags:
  - Approval
  - AppStoreActivationStatus
  - AttachmentLinks
  - Attachments
  - AutoInvoice
  - Bank
  - Charts
  - CompanySettings
  - Company
  - Countries
  - Currencies
  - Documents
  - IdentityLookup
  - MessageThreads
  - Mobile
  - Notes
  - PartnerResourceLinks
  - SalesDocumentAttachments
  - Trials
  - Units
  - Users
  - VoTokenValidation
  - WebHooks
  - Zapier
- name: Accounting
  tags:
  - AccountBalance
  - Accounts
  - AccountTypes
  - AllocationPeriods
  - ArticleAccountCodings
  - BankTransactions
  - CostCenterItems
  - CostCenters
  - FiscalYears
  - InventoryItems
  - PaymentVoucher
  - Projects
  - SieFileImportExport
  - VatCode
  - VatReport
  - VoucherDrafts
  - Vouchers
  - VoucherWithOverunderPayment