# Vydané faktury · API DameDokladu

> Operace ve skupině Vydané faktury.

Source: https://damedoklad.cz/docs/api-reference/invoices/

# Vydané faktury

Operace ve skupině Vydané faktury.

## Seznam: faktury

GET `/v1/invoices`

List issued invoices (faktury vydané). \`from\` and \`to\` filter on the issue date; \`unpaid=true\` keeps those with an open balance

Nástroj MCP: `list-invoices`

### Parametry dotazu

`limit` integer min 1 max 500

`offset` integer min 0 max 9007199254740991

`search` string max 200 chars

`from` string YYYY-MM-DD

Date as YYYY-MM-DD.

`to` string YYYY-MM-DD

Date as YYYY-MM-DD.

`status` string

Document status, for example draft, issued, partially\_paid, paid, storno.

`contactId` string

Only documents of this contact.

`dueFrom` string

Due on or after this date, YYYY-MM-DD.

`dueTo` string

Due on or before this date, YYYY-MM-DD.

`q` string max 200 chars

Older name for \`search\`.

`unpaid` "true" | "false"

\`true\`: only documents with an open balance.

`customFieldKey` string

Only records with this custom field. Alone: it has any value. With customFieldValue: exactly that value, ignoring case.

`customFieldValue` string max 2000 chars

### Odpověď · 200

`data` object\[\] povinné

`object` "invoice" povinné

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

`total` integer

Rows that match, on all pages.

`hasMore` boolean povinné

More rows follow. Ask again with offset + the number of rows received.

```bash
curl https://api.damedoklad.cz/v1/invoices \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices', {
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.get(
    "https://api.damedoklad.cz/v1/invoices",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Vytvoření: faktura

POST `/v1/invoices`

Create an invoice, as a draft unless \`issue\` is true. Pass contactId from list-contacts, or contactName for a one-off customer. Prices are per unit before VAT, in haléře. Legal effect: with \`issue: true\` this assigns the final document number, creates a tax document, and posts to the books. Confirm with the user first.

Nástroj MCP: `create-invoice`

### Tělo požadavku

`carrierId` string | null

ID of the carrier. Find it with list-carriers.

`vatMode` "domestic" | "reverse\_charge" | "eu\_goods" | "eu\_services" | "third\_country\_goods" | "third\_country\_services" | "oss" | "eu\_triangular" | "eu\_new\_vehicle" | "goods\_installation\_networks" | "eu\_registration" | "eu\_sme" | "group\_internal" | "margin\_used\_goods" | "margin\_art" | "margin\_collectibles" | "margin\_travel" | "exempt" | "none"

`exchangeRate` number

`templateId` string | null

ID of the template.

`centerId` string | null

ID of the center.

`activityId` string | null

ID of the activity. Find it with list-activity.

`projectId` string | null

ID of the project.

`contactId` string

ID of the contact. Find it with list-contacts.

`contactName` string max 160 chars

`contactIco` string max 16 chars

Czech company number (IČO), 8 digits.

`contactDic` string max 16 chars

VAT number (DIČ), for example CZ12345678.

`seriesId` string

ID of the series. Find it with list-series.

`issueDate` string povinné YYYY-MM-DD

Date as YYYY-MM-DD.

`taxPointDate` string povinné YYYY-MM-DD

Date as YYYY-MM-DD.

`dueDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`currency` string 3 chars

ISO 4217 currency code, for example CZK or EUR.

`paymentMethod` "transfer" | "cash" | "proforma" | "card" | "cod"

`language` "cs" | "en" | "sk" | "de" | "fr" | "pl"

`notePublic` string | null

`noteInternal` string | null

`constantSymbol` string | null

`ourAccountNumber` string | null

`ourBankCode` string | null

`ourIban` string | null

IBAN without spaces.

`issue` boolean

`overrideDeliveryNotes` boolean

`deliveryNoteIds` string\[\]

`overrideCreditLimit` boolean

`proformaIds` string\[\]

`clientDocumentId` string min 8 chars max 64 chars

ID of the client document.

`offline` object

`soldAt` string povinné date-time

`number` string povinné max 40 chars

`listPrices` object\[\]

`itemId` string povinné

ID of the item. Find it with list-items.

`priceHaler` integer povinné min -9007199254740991 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`quantity` number povinné

`lines` object\[\] povinné

`purchaseHaler` integer min 0 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`exemptPercent` number min 0 max 100

`purchaseLineId` string | null

ID of the purchase line.

`description` string max 240 chars

`quantity` number povinné

`unit` string max 16 chars

`unitPriceHaler` integer min -9007199254740991 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`vatRate` number min 0 max 30

`itemId` string

ID of the item. Find it with list-items.

`warehouseId` string

ID of the warehouse. Find it with list-warehouses.

`lots` object\[\]

`itemId` string

ID of the item. Find it with list-items.

`lotId` string

ID of the lot.

`code` string max 64 chars

`quantity` number

`expiryDate` string | null

Date as YYYY-MM-DD.

`serialNumbers` string\[\]

`orderLineId` string

ID of the order line.

`recyclingFeeId` string | null

A fee from the list. null means no fee on this line, whatever the item says

`recyclingPerUnitHaler` integer min 0 max 9007199254740991

The amount per fee unit: with recyclingFeeId it replaces the rate of the fee on this line, without it the line carries a typed fee

`recyclingText` string max 120 chars

`recyclingUnit` "ks" | "kg"

The unit of a typed fee

`recyclingCoefficient` number min 0 max 1000000

How many times the fee applies to one unit of the line

`accountNumber` string | null

Account number from the chart of accounts, for example 311. list-accounts lists them.

`roundingMode` "auto" | "crown" | "none"

### Odpověď · 201

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
  "issueDate": "2026-10-30",
  "taxPointDate": "2026-10-30",
  "lines": [
    {
      "quantity": 1
    }
  ]
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    "issueDate": "2026-10-30",
    "taxPointDate": "2026-10-30",
    "lines": [
      {
        "quantity": 1
      }
    ]
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
        "issueDate": "2026-10-30",
        "taxPointDate": "2026-10-30",
        "lines": [
            {
                "quantity": 1
            }
        ]
    },
)
data = response.json()
```

## Detail: faktura

GET `/v1/invoices/{id}`

Get an invoice with lines, VAT recap, payments, and the amount still owed

Nástroj MCP: `get-invoice`

### Parametry v cestě

`id` string povinné

### Odpověď · 200

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL', {
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.get(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Úprava: faktura

PATCH `/v1/invoices/{id}`

Change a draft invoice. An issued invoice cannot be changed: storno it or create a credit note

Nástroj MCP: `update-invoice`

### Parametry v cestě

`id` string povinné

### Tělo požadavku

`carrierId` string | null

ID of the carrier. Find it with list-carriers.

`vatMode` "domestic" | "reverse\_charge" | "eu\_goods" | "eu\_services" | "third\_country\_goods" | "third\_country\_services" | "oss" | "eu\_triangular" | "eu\_new\_vehicle" | "goods\_installation\_networks" | "eu\_registration" | "eu\_sme" | "group\_internal" | "margin\_used\_goods" | "margin\_art" | "margin\_collectibles" | "margin\_travel" | "exempt" | "none"

`exchangeRate` number

`templateId` string | null

ID of the template.

`centerId` string | null

ID of the center.

`activityId` string | null

ID of the activity. Find it with list-activity.

`projectId` string | null

ID of the project.

`contactId` string

ID of the contact. Find it with list-contacts.

`seriesId` string

ID of the series. Find it with list-series.

`issueDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`taxPointDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`dueDate` string | null

Date as YYYY-MM-DD.

`currency` string 3 chars

ISO 4217 currency code, for example CZK or EUR.

`paymentMethod` "transfer" | "cash" | "proforma" | "card" | "cod"

`language` "cs" | "en" | "sk" | "de" | "fr" | "pl"

`notePublic` string | null

`noteInternal` string | null

`constantSymbol` string | null

`ourAccountNumber` string | null

`ourBankCode` string | null

`ourIban` string | null

IBAN without spaces.

`lines` object\[\]

`purchaseHaler` integer min 0 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`exemptPercent` number min 0 max 100

`purchaseLineId` string | null

ID of the purchase line.

`description` string max 240 chars

`quantity` number povinné

`unit` string max 16 chars

`unitPriceHaler` integer min -9007199254740991 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`vatRate` number min 0 max 30

`itemId` string

ID of the item. Find it with list-items.

`warehouseId` string

ID of the warehouse. Find it with list-warehouses.

`lots` object\[\]

`itemId` string

ID of the item. Find it with list-items.

`lotId` string

ID of the lot.

`code` string max 64 chars

`quantity` number

`expiryDate` string | null

Date as YYYY-MM-DD.

`serialNumbers` string\[\]

`orderLineId` string

ID of the order line.

`recyclingFeeId` string | null

A fee from the list. null means no fee on this line, whatever the item says

`recyclingPerUnitHaler` integer min 0 max 9007199254740991

The amount per fee unit: with recyclingFeeId it replaces the rate of the fee on this line, without it the line carries a typed fee

`recyclingText` string max 120 chars

`recyclingUnit` "ks" | "kg"

The unit of a typed fee

`recyclingCoefficient` number min 0 max 1000000

How many times the fee applies to one unit of the line

`accountNumber` string | null

Account number from the chart of accounts, for example 311. list-accounts lists them.

`roundingMode` "auto" | "crown" | "none"

### Odpověď · 200

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X PATCH https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "carrierId": "gcr_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
  "vatMode": "domestic",
  "exchangeRate": 1
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL', {
  method: 'PATCH',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "carrierId": "gcr_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    "vatMode": "domestic",
    "exchangeRate": 1
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.patch(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "carrierId": "gcr_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
        "vatMode": "domestic",
        "exchangeRate": 1
    },
)
data = response.json()
```

## Kopie: faktura

POST `/v1/invoices/{id}/copy`

Create a new draft invoice from an existing one

Nástroj MCP: `copy-invoice`

### Parametry v cestě

`id` string povinné

### Odpověď · 201

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/copy \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/copy', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/copy",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Vytvoření: dobropis z faktury

POST `/v1/invoices/{id}/credit-notes`

Create a draft credit note (dobropis) for an issued invoice. Line prices are negative

Nástroj MCP: `create-credit-note-from-invoice`

### Parametry v cestě

`id` string povinné

### Tělo požadavku

`vatMode` "domestic" | "reverse\_charge" | "eu\_goods" | "eu\_services" | "third\_country\_goods" | "third\_country\_services" | "oss" | "eu\_triangular" | "eu\_new\_vehicle" | "goods\_installation\_networks" | "eu\_registration" | "eu\_sme" | "group\_internal" | "margin\_used\_goods" | "margin\_art" | "margin\_collectibles" | "margin\_travel" | "exempt" | "none"

`exchangeRate` number

`templateId` string | null

ID of the template.

`centerId` string | null

ID of the center.

`activityId` string | null

ID of the activity. Find it with list-activity.

`projectId` string | null

ID of the project.

`contactId` string

ID of the contact. Find it with list-contacts.

`contactName` string max 160 chars

`contactIco` string max 16 chars

Czech company number (IČO), 8 digits.

`contactDic` string max 16 chars

VAT number (DIČ), for example CZ12345678.

`seriesId` string

ID of the series. Find it with list-series.

`invoiceId` string

ID of the invoice. Find it with list-invoices.

`originalInvoiceNumber` string | null

`reason` string max 500 chars

`issueDate` string povinné YYYY-MM-DD

Date as YYYY-MM-DD.

`taxPointDate` string povinné YYYY-MM-DD

Date as YYYY-MM-DD.

`khDphDate` string | null

Date as YYYY-MM-DD.

`dueDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`currency` string 3 chars

ISO 4217 currency code, for example CZK or EUR.

`paymentMethod` "transfer" | "cash" | "proforma" | "card" | "cod"

`language` "cs" | "en" | "sk" | "de" | "fr" | "pl"

`notePublic` string | null

`noteInternal` string | null

`issue` boolean

`lines` object\[\]

`purchaseHaler` integer min 0 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`exemptPercent` number min 0 max 100

`purchaseLineId` string | null

ID of the purchase line.

`description` string povinné max 240 chars

`quantity` number povinné

`unit` string max 16 chars

`unitPriceHaler` integer povinné min -9007199254740991 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`vatRate` number povinné min 0 max 30

`itemId` string

ID of the item. Find it with list-items.

`warehouseId` string

ID of the warehouse. Find it with list-warehouses.

`lots` object\[\]

`itemId` string

ID of the item. Find it with list-items.

`lotId` string

ID of the lot.

`code` string max 64 chars

`quantity` number

`expiryDate` string | null

Date as YYYY-MM-DD.

`serialNumbers` string\[\]

`orderLineId` string

ID of the order line.

`recyclingFeeId` string | null

A fee from the list. null means no fee on this line, whatever the item says

`recyclingPerUnitHaler` integer min 0 max 9007199254740991

The amount per fee unit: with recyclingFeeId it replaces the rate of the fee on this line, without it the line carries a typed fee

`recyclingText` string max 120 chars

`recyclingUnit` "ks" | "kg"

The unit of a typed fee

`recyclingCoefficient` number min 0 max 1000000

How many times the fee applies to one unit of the line

`accountNumber` string | null

Account number from the chart of accounts, for example 311. list-accounts lists them.

`roundingMode` "auto" | "crown" | "none"

### Odpověď · 201

`customFields` object

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`originalInvoiceNumber` null | string povinné

`seriesId` null | string

`reason` null | string

`taxPointDate` string date

`khDphDate` null | string date

`currency` string

`paymentMethod` string

`language` string

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "credit\_note\_line" povinné

`id` string povinné

`description` string povinné

`quantity` integer povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` integer povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` string | null povinné

`lineKind` string povinné

`sourceId` string | null povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` any\[\] povinné

`orderLineId` string | null povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`payments` object\[\]

`object` "credit\_note\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` any\[\]

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/credit-notes \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
  "issueDate": "2026-10-30",
  "taxPointDate": "2026-10-30"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/credit-notes', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    "issueDate": "2026-10-30",
    "taxPointDate": "2026-10-30"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/credit-notes",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
        "issueDate": "2026-10-30",
        "taxPointDate": "2026-10-30"
    },
)
data = response.json()
```

## Vystavení: faktura

POST `/v1/invoices/{id}/issue`

Issue a draft invoice. Legal effect: this assigns the final document number, creates a tax document, and posts to the books. Confirm with the user first. Refused with uninvoiced\_delivery\_note when a line would move stock while the customer has issued, not yet invoiced delivery notes for the item: name them in deliveryNoteIds to bill them, or set overrideDeliveryNotes if this is a further sale.

Nástroj MCP: `issue-invoice`

### Parametry v cestě

`id` string povinné

### Tělo požadavku

`overrideReservations` boolean

`overrideDeliveryNotes` boolean

`deliveryNoteIds` string\[\]

`overrideCreditLimit` boolean

Issue although the customer goes over Kredit max. Owner or accountant only, after the user has seen the warning.

### Odpověď · 200

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/issue \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "overrideReservations": false,
  "overrideDeliveryNotes": false,
  "deliveryNoteIds": [
    "dln_2n9F4kT7wQ1xYz0aBcDeFgHiJkL"
  ]
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/issue', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "overrideReservations": false,
    "overrideDeliveryNotes": false,
    "deliveryNoteIds": [
      "dln_2n9F4kT7wQ1xYz0aBcDeFgHiJkL"
    ]
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/issue",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "overrideReservations": False,
        "overrideDeliveryNotes": False,
        "deliveryNoteIds": [
            "dln_2n9F4kT7wQ1xYz0aBcDeFgHiJkL"
        ]
    },
)
data = response.json()
```

## Seznam: úhrady, faktura

GET `/v1/invoices/{id}/payments`

List the payments of an invoice

Nástroj MCP: `list-invoice-payments`

### Parametry v cestě

`id` string povinné

### Parametry dotazu

`limit` integer min 1 max 500

`offset` integer min 0 max 9007199254740991

`search` string max 200 chars

### Odpověď · 200

`data` object\[\] povinné

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`total` integer

Rows that match, on all pages.

`hasMore` boolean povinné

More rows follow. Ask again with offset + the number of rows received.

```bash
curl https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments', {
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.get(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Přidání: úhrada, faktura

POST `/v1/invoices/{id}/payments`

Record a payment of an invoice. Cash goes through a cash document of a register, a transfer through a bank account, and a later statement line takes it over. Legal effect: posts to the books. With several registers or accounts name registerId or bankAccountId. In another currency than the document, moneyAmountHaler says what moved on the account.

Nástroj MCP: `add-invoice-payment`

### Parametry v cestě

`id` string povinné

### Tělo požadavku

`amountHaler` integer povinné max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`paidOn` string povinné YYYY-MM-DD

Date as YYYY-MM-DD.

`method` "transfer" | "cash" | "card" | "other"

`inPerson` boolean

`note` string | null

`registerId` string

ID of the register.

`bankAccountId` string

ID of the bank account. Find it with list-bank-accounts.

`moneyAmountHaler` integer max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`allowNegative` boolean

`eetPrepaidLoadHaler` integer min 0 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`eetPrepaidUseHaler` integer min 0 max 9007199254740991

Integer amount in haléře: 100 = 1 Kč.

`eetVoucherId` string

ID of the eet voucher. Find it with list-eet-vouchers.

`eetMandateId` string

ID of the eet mandate. Find it with list-eet-mandates.

`eetOwnSale` boolean

`paidAt` string date-time

### Odpověď · 201

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "amountHaler": 1210000,
  "paidOn": "2026-10-30"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "amountHaler": 1210000,
    "paidOn": "2026-10-30"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "amountHaler": 1210000,
        "paidOn": "2026-10-30"
    },
)
data = response.json()
```

## Smazání: úhrada, faktura

DELETE `/v1/invoices/{id}/payments/{paymentId}`

Remove a payment from an invoice and reverse its posting

Nevratná operaceTato operace se nedá vrátit. MCP klienti se před ní ptají na potvrzení.

Nástroj MCP: `delete-invoice-payment`

### Parametry v cestě

`id` string povinné

`paymentId` string povinné

ID of the payment.

### Odpověď · 200

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X DELETE https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments/obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments/obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL', {
  method: 'DELETE',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.delete(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments/obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Detail: PDF, faktura

GET `/v1/invoices/{id}/pdf`

Download the invoice as a PDF

Nástroj MCP: `get-invoice-pdf`

### Parametry v cestě

`id` string povinné

### Odpověď · 200

Vrací soubor application/pdf.

```bash
curl https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/pdf \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -o soubor
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/pdf', {
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const file = await response.arrayBuffer();
```

```python
import os
import requests

response = requests.get(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/pdf",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
content = response.content
```

## Storno: faktura

POST `/v1/invoices/{id}/storno`

Cancel an issued invoice with a reversing document. Legal effect: reverses the tax document and the bookings. Fails when the invoice has payments or its period is closed. Confirm with the user first.

Nevratná operaceTato operace se nedá vrátit. MCP klienti se před ní ptají na potvrzení.

Nástroj MCP: `storno-invoice`

### Parametry v cestě

`id` string povinné

### Odpověď · 200

`id` string povinné

`number` null | string povinné

`variableSymbol` null | string povinné

`contactId` null | string povinné

`contactName` null | string povinné

`issueDate` string povinné date

`dueDate` null | string povinné date

`currency` string povinné

`totalHaler` integer povinné

`paidHaler` integer povinné

`status` string povinné

`overdue` boolean povinné

`fileId` null | string povinné

`customFields` object

`zakazka_zakaznika` string

`pocet` integer

`kampan` string

`vatMode` string

`exchangeRate` number

`templateId` null | string

`centerId` null | string

`activityId` null | string

`projectId` null | string

`seriesId` null | string

`constantSymbol` null | string

`taxPointDate` string date

`paymentMethod` string

`language` string

`notePublic` null | string

`noteInternal` null | string

`ourAccountNumber` null | string

`ourBankCode` null | string

`ourIban` null | string

`sellerName` null | string

`sellerIco` null | string

`sellerDic` null | string

`reminderOnDue` boolean

`reminderWeekAfter` boolean

`reminder14DaysAfter` boolean

`reminderMonthAfter` boolean

`netHaler` integer

`vatHaler` integer

`roundingHaler` integer

`recurringId` null | string

`stornoOfId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` null | string

`billToCity` null | string

`billToPostalCode` null | string

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` null | string

`shipToCity` null | string

`shipToPostalCode` null | string

`shipToCountry` null | string

`contactEmail` null | string

`lines` object\[\]

`object` "invoice\_line" povinné

`id` string povinné

`description` string povinné

`quantity` number povinné

`unit` string povinné

`unitPriceHaler` integer povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`totalHaler` integer povinné

`accountNumber` null | string povinné

`lineKind` string povinné

`sourceId` null | string povinné

`itemId` null | string povinné

`warehouseId` null | string povinné

`lots` object\[\] povinné

`itemId` null | string

`lotId` string | null povinné

`code` null | string povinné

`quantity` integer povinné

`expiryDate` string | null povinné

`orderLineId` null | string povinné

`recycling` null | object

`text` string povinné

`unit` string povinné

`feeId` null | string povinné

`rateHaler` integer povinné

`totalHaler` integer povinné

`weightMilli` integer

`perUnitHaler` integer povinné

`coefficientMilli` integer povinné

`typed` boolean

`vatLines` object\[\]

`object` "invoice\_vat\_line" povinné

`id` string povinné

`vatRate` number povinné

`netHaler` integer povinné

`vatHaler` integer povinné

`payments` object\[\]

`object` "invoice\_payment" povinné

`id` string povinné

`amountHaler` integer povinné

`paidOn` string povinné date

`method` string povinné

`note` null | string povinné

`links` object\[\]

`object` "document\_link" povinné

`id` string povinné

`fromKind` string povinné

`fromId` string povinné

`toKind` string povinné

`toId` string povinné

`kind` string povinné

`amountHaler` integer | null

`posting` object

`regime` string povinné

`event` string povinné

`journalLines` object\[\]

`account` null | string povinné

`side` string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`balanced` boolean

`cashJournal` object\[\]

`account` null | string povinné

`amountHaler` integer | null povinné

`documentId` null | string povinné

`receivablesBook` object\[\]

`documentId` null | string povinné

`amountHaler` integer | null povinné

`status` string povinné

`payablesBook` any\[\]

`asset` any\[\]

`retentions` object\[\]

`id` string povinné

`amountHaler` integer | null povinné

`dueDate` null | string povinné date

`note` string | null povinné

`longTerm` boolean povinné

`carrierId` null | string

`creditWarning` object

`level` string povinné

`exposureHaler` integer povinné

`afterHaler` integer povinné

`warnHaler` integer | null povinné

`blockHaler` integer povinné

`availableHaler` integer povinné

`original` any

`bankMovement` object

`id` string povinné

`bankAccountId` string povinné

`cashDocument` object

`id` string povinné

`number` null | string povinné

`warnings` any\[\] povinné

```bash
curl -X POST https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
  },
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/invoices/inv_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```
