---
title: "Book an invoice"
method: PUT
path: "/Invoice/{invoiceId}/bookAmount"
tags: ["Invoice"]
---

# Book an invoice

`PUT /Invoice/{invoiceId}/bookAmount`

Booking the invoice with a transaction is probably the most important part in the bookkeeping process.<br> There are several ways on correctly booking an invoice, all by using the same endpoint.<br> for more information look <a href='#tag/Invoice/How-to-book-an-invoice'>here</a>.

## Path parameters

- `invoiceId` integer, required

## Request body

- object
  - `amount` number, required — Amount which should be booked. Can also be a partial amount.
  - `date` integer, 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 invoice.<br>When the check account is type online, you must provider a transaction; other types will create the transaction.
    - `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 changed invoice log entry

- object
  - `id` string
  - `objectName` string
  - `additionalInformation` string
  - `create` string, date-time — Date of email creation
  - `creditNote` object
    - `id` integer, required — The id of the invoice
    - `objectName` string, required — Internal object name which is 'Invoice'.
  - `fromStatus` string
  - `toStatus` string
  - `ammountPayed` string
  - `bookingDate` string, date-time
  - `sevClient` object — Client to which invoice belongs. Will be filled automatically
    - `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)
