---
title: "Book a voucher"
method: PUT
path: "/Voucher/{voucherId}/bookAmount"
tags: ["Voucher"]
---

# Book a voucher

`PUT /Voucher/{voucherId}/bookAmount`

Booking the voucher with a transaction is probably the most important part in the bookkeeping process.<br> There are several ways on correctly booking a voucher, all by using the same endpoint.<br> Conveniently, the booking process is exactly the same as the process for invoices.<br> For this reason, you can have a look at it <a href='#tag/Invoice/How-to-book-an-invoice'>here</a> and all you need to do is to change "Invoice" into "Voucher" in the URL.

## Path parameters

- `voucherId` integer, required

## Request body

- object
  - `amount` number, required — Amount which should be booked. Can also be a partial amount.
  - `date` string, date-time, required — The booking date. Most likely the current date.
  - `type` 'FULL_PAYMENT' | 'N' | 'CB' | 'CF' | 'O' | 'OF' | 'MTC', required — Define a type for the booking.<br> The following type abbreviations are available (abbreviation <-> meaning).<br> <ul> <li>FULL_PAYMENT <-> Normal booking</li><li>N <-> Partial booking (historically used for normal booking)</li> <li>CB <-> Reduced amount due to discount (skonto)</li> <li>CF <-> Reduced/Higher amount due to currency fluctuations (deprecated)</li> <li>O <-> Reduced/Higher amount due to other reasons</li> <li>OF <-> Higher amount due to reminder charges</li> <li>MTC <-> Reduced amount due to the monetary traffic costs</li> </ul>
  - `checkAccount` object, required — The check account on which should be booked.
    - `id` integer, required — The id of the check account on which should be booked.
    - `objectName` string, required — Internal object name which is 'CheckAccount'.
  - `checkAccountTransaction` object — The check account transaction on which should be booked.<br> The transaction will be linked to the voucher.<br>Providing a transaction is required for online checkaccounts (like you would select an existing transaction in the UI). You should not provide a transaction for other account types, the transaction will be created automatically.
    - `id` integer, required — The id of the check account transaction on which should be booked.
    - `objectName` string, required — Internal object name which is 'CheckAccountTransaction'.
  - `createFeed` boolean — Determines if a feed is created for the booking process.

## Response `200`

Successful operation - Returns voucher log entry

- object
  - `id` string
  - `objectName` string
  - `create` string, date-time — Date of email creation
  - `voucher` object
    - `id` integer, required — The id of the voucher
    - `objectName` string, required — Internal object name which is 'Voucher'.
  - `fromStatus` string
  - `toStatus` string
  - `amountPayed` string
  - `bookingDate` string, date-time
  - `sevClient` object — Client to which the voucher belongs.
    - `id` integer, required — Unique identifier of the client
    - `objectName` string, required — Model name, which is 'SevClient'

## Other responses

- `400` — Bad request
- `401` — Authentication required
- `500` — Server Error

---

[API](https://skmtc.net/sevdesk/apis/sevdesk-api.md) · [All operations](https://skmtc.net/sevdesk/apis/sevdesk-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sevdesk/sevdesk-api/revisions/a32cec0fecea/schema)
