# Advances to suppliers · DameDoklad API

> Operations in the Advances to suppliers group.

Source: https://damedoklad.cz/en/docs/api-reference/supplier-advances/

# Advances to suppliers

Operations in the Advances to suppliers group.

## List suppliers' tax documents for paid advances, including corrections and stornos

GET `/v1/supplier-advance-tax-documents`

List suppliers' tax documents for paid advances, including corrections and stornos

MCP tool: `list-supplier-advance-tax-documents`

### Query parameters

`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.

### Response · 200

`data` object\[\] required

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`total` integer

Rows that match, on all pages.

`hasMore` boolean required

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

```bash
curl https://api.damedoklad.cz/v1/supplier-advance-tax-documents \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advance-tax-documents', {
  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/supplier-advance-tax-documents",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Fill in the supplier's number on a tax document, usually a correction booked before the document arrived

PATCH `/v1/supplier-advance-tax-documents/{id}`

Fill in the supplier's number on a tax document, usually a correction booked before the document arrived

MCP tool: `update-supplier-advance-tax-document`

### Path parameters

`id` string required

### Request body

`supplierDocumentNumber` string required max 64 chars

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X PATCH https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "supplierDocumentNumber": "string"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL', {
  method: 'PATCH',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "supplierDocumentNumber": "string"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.patch(
    "https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "supplierDocumentNumber": "string"
    },
)
data = response.json()
```

## Cancel a supplier's tax document for a paid advance, or a self-assessment, with a reversing document

POST `/v1/supplier-advance-tax-documents/{id}/storno`

Cancel a supplier's tax document for a paid advance, or a self-assessment, with a reversing document. Legal effect: reverses the deduction in the period you learn of it. Refused once a final invoice has deducted it or a refund has corrected it. A self-assessment asks why (\`reason\`): a \`mistake\` is reversed in the original period, and the answer's \`stornoCorrection\` says whether that period needs an additional return and a follow-up control statement; a \`refund\` or a \`cancelled\` supply is corrected on \`occurredOn\`, today when left out. A refund that brings money back is better entered as a refund of the advance.

IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.

MCP tool: `storno-supplier-advance-tax-document`

### Path parameters

`id` string required

### Request body

`reason` "mistake" | "refund" | "cancelled"

`occurredOn` string YYYY-MM-DD

Date as YYYY-MM-DD.

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "reason": "mistake",
  "occurredOn": "2026-10-30"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "reason": "mistake",
    "occurredOn": "2026-10-30"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/supplier-advance-tax-documents/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/storno",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "reason": "mistake",
        "occurredOn": "2026-10-30"
    },
)
data = response.json()
```

## List zálohové faktury from suppliers: advances to pay or paid. \`from\` and \`to\` filter on the issue date; \`unpaid=true\` keeps those still to pay

GET `/v1/supplier-advances`

List zálohové faktury from suppliers: advances to pay or paid. \`from\` and \`to\` filter on the issue date; \`unpaid=true\` keeps those still to pay

MCP tool: `list-supplier-advances`

### Query parameters

`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

### Response · 200

`data` object\[\] required

`object` "supplier\_advance" required

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

`total` integer

Rows that match, on all pages.

`hasMore` boolean required

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

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

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances', {
  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/supplier-advances",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Record a supplier's zálohová faktura. It is not a tax document: nothing is posted and no VAT is claimed until it is paid and the supplier's tax document arrives

POST `/v1/supplier-advances`

Record a supplier's zálohová faktura. It is not a tax document: nothing is posted and no VAT is claimed until it is paid and the supplier's tax document arrives. Answers 409 when the supplier document number is already recorded. \`record: false\` keeps a draft.

MCP tool: `create-supplier-advance`

### Request body

`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.

`advanceAccount` "151" | "152" | "153" | "314" | "051" | "052"

`taxRecordsKind` "expense" | "long\_term\_asset" | "related\_party"

`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.

`supplierDocumentNumber` string required max 64 chars

`variableSymbol` string | null

`constantSymbol` string | null

`issueDate` string required 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"

`theirAccountNumber` string | null

`theirBankCode` string | null

`theirIban` string | null

IBAN without spaces.

`notePublic` string | null

`noteInternal` string | null

`record` boolean

`confirmDuplicate` boolean

`lines` object\[\] required

`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 required max 240 chars

`quantity` number required

`unit` string max 16 chars

`unitPriceHaler` integer required min -9007199254740991 max 9007199254740991

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

`vatRate` 0 | 10 | 12 | 15 | 21 required

`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.

`accountNumber` string | null

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

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

### Response · 201

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
  "supplierDocumentNumber": "string",
  "issueDate": "2026-10-30",
  "lines": [
    {
      "description": "Pečivo, říjen",
      "quantity": 1,
      "unitPriceHaler": 1210000,
      "vatRate": 0
    }
  ]
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    "supplierDocumentNumber": "string",
    "issueDate": "2026-10-30",
    "lines": [
      {
        "description": "Pečivo, říjen",
        "quantity": 1,
        "unitPriceHaler": 1210000,
        "vatRate": 0
      }
    ]
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/supplier-advances",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "contactId": "con_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
        "supplierDocumentNumber": "string",
        "issueDate": "2026-10-30",
        "lines": [
            {
                "description": "Pečivo, říjen",
                "quantity": 1,
                "unitPriceHaler": 1210000,
                "vatRate": 0
            }
        ]
    },
)
data = response.json()
```

## Get an advance to a supplier with lines, payments, and the supplier's tax documents

GET `/v1/supplier-advances/{id}`

Get an advance to a supplier with lines, payments, and the supplier's tax documents

MCP tool: `get-supplier-advance`

### Path parameters

`id` string required

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

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

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Change an advance to a supplier. Lines, currency, VAT mode, and supplier only while it is a draft

PATCH `/v1/supplier-advances/{id}`

Change an advance to a supplier. Lines, currency, VAT mode, and supplier only while it is a draft

MCP tool: `update-supplier-advance`

### Path parameters

`id` string required

### Request body

`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.

`advanceAccount` "151" | "152" | "153" | "314" | "051" | "052"

`taxRecordsKind` "expense" | "long\_term\_asset" | "related\_party"

`contactId` string

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

`seriesId` string

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

`supplierDocumentNumber` string max 64 chars

`variableSymbol` string | null

`constantSymbol` string | null

`issueDate` 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"

`theirAccountNumber` string | null

`theirBankCode` string | null

`theirIban` string | null

IBAN without spaces.

`notePublic` string | null

`noteInternal` string | null

`confirmDuplicate` 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 required max 240 chars

`quantity` number required

`unit` string max 16 chars

`unitPriceHaler` integer required min -9007199254740991 max 9007199254740991

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

`vatRate` 0 | 10 | 12 | 15 | 21 required

`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.

`accountNumber` string | null

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

`record` boolean

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

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X PATCH https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "vatMode": "domestic",
  "exchangeRate": 1,
  "templateId": "obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL"
}'
```

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

```python
import os
import requests

response = requests.patch(
    "https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "vatMode": "domestic",
        "exchangeRate": 1,
        "templateId": "obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL"
    },
)
data = response.json()
```

## Cancel an advance to a supplier that has no payments

POST `/v1/supplier-advances/{id}/cancel`

Cancel an advance to a supplier that has no payments

IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.

MCP tool: `cancel-supplier-advance`

### Path parameters

`id` string required

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/cancel \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/cancel', {
  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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/cancel",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Record a payment of an advance to a supplier: MD 314 or the account it sits on / D 221, or an expense in the cash book

POST `/v1/supplier-advances/{id}/payments`

Record a payment of an advance to a supplier: MD 314 or the account it sits on / D 221, or an expense in the cash book. Legal effect: posts to the books. Cash goes through a cash document of a register and a transfer through a bank account; with several name registerId or bankAccountId. A later statement line takes the transfer over.

MCP tool: `add-supplier-advance-payment`

### Path parameters

`id` string required

### Request body

`amountHaler` integer required max 9007199254740991

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

`paidOn` string required 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

`exchangeRate` number

### Response · 201

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_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/supplier-advances/sad_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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "amountHaler": 1210000,
        "paidOn": "2026-10-30"
    },
)
data = response.json()
```

## Remove a payment or refund of an advance to a supplier and reverse its posting

DELETE `/v1/supplier-advances/{id}/payments/{paymentId}`

Remove a payment or refund of an advance to a supplier and reverse its posting. Refused while a tax document stands on the payment or the advance is settled. Removing a refund also cancels its corrective tax document.

IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.

MCP tool: `remove-supplier-advance-payment`

### Path parameters

`id` string required

`paymentId` string required

ID of the payment.

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

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

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/payments/obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Move an advance to a supplier to another account: 314, 051, 052, 151, 152, or 153. Posts MD new / D old for what it holds

POST `/v1/supplier-advances/{id}/reclassify`

Move an advance to a supplier to another account: 314, 051, 052, 151, 152, or 153. Posts MD new / D old for what it holds. Legal effect: posts to the books. Double-entry only. Refused while a tax document stands on the advance and once it is settled: at the final invoice it clears by itself, MD 042 / D 052 and so on.

MCP tool: `reclassify-supplier-advance`

### Path parameters

`id` string required

### Request body

`advanceAccount` "151" | "152" | "153" | "314" | "051" | "052" required

`date` string YYYY-MM-DD

Date as YYYY-MM-DD.

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/reclassify \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "advanceAccount": "151"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/reclassify', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "advanceAccount": "151"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/reclassify",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "advanceAccount": "151"
    },
)
data = response.json()
```

## Record a draft advance to a supplier: it gets its number and can be paid

POST `/v1/supplier-advances/{id}/record`

Record a draft advance to a supplier: it gets its number and can be paid

MCP tool: `record-supplier-advance`

### Path parameters

`id` string required

### Response · 200

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/record \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY"
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/record', {
  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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/record",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
)
data = response.json()
```

## Record money a supplier paid back on an advance. Whatever part was taxed takes the supplier's corrective tax document (§ 74 ZDPH)

POST `/v1/supplier-advances/{id}/refund`

Record money a supplier paid back on an advance. Whatever part was taxed takes the supplier's corrective tax document (§ 74 ZDPH). amountHaler defaults to everything paid. Refused once the advance is settled into an invoice. \`supplierDocumentNumber\` can follow later through update-supplier-advance-tax-document.

MCP tool: `refund-supplier-advance`

### Path parameters

`id` string required

### Request body

`amountHaler` integer max 9007199254740991

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

`refundedOn` string required YYYY-MM-DD

Date as YYYY-MM-DD.

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

`reason` string required max 240 chars

`note` string | null

`exchangeRate` number

`supplierDocumentNumber` string max 64 chars

`receivedOn` string YYYY-MM-DD

Date as YYYY-MM-DD.

`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

### Response · 201

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/refund \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "refundedOn": "2026-10-30",
  "reason": "string"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/refund', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "refundedOn": "2026-10-30",
    "reason": "string"
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/refund",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "refundedOn": "2026-10-30",
        "reason": "string"
    },
)
data = response.json()
```

## Record the supplier's final invoice for an advance and deduct the advance from it. Lines default to the advance's. To deduct several, use \`supplierAdvanceIds\` on create-received-invoice

POST `/v1/supplier-advances/{id}/settle`

Record the supplier's final invoice for an advance and deduct the advance from it. Lines default to the advance's. To deduct several, use \`supplierAdvanceIds\` on create-received-invoice. Legal effect: posts costs and VAT and clears the advance against 321: MD 518 / D 314, or MD 042 / D 052 when the advance sits on an account of what it pays for and the line names no account of its own. Storno of the invoice hands the advance back.

MCP tool: `settle-supplier-advance`

### Path parameters

`id` string required

### Request body

`supplierDocumentNumber` string required max 64 chars

`issueDate` string required YYYY-MM-DD

Date as YYYY-MM-DD.

`taxPointDate` string required YYYY-MM-DD

Date as YYYY-MM-DD.

`receivedOn` string YYYY-MM-DD

Date as YYYY-MM-DD.

`dueDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`exchangeRate` number

`confirmDuplicate` 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 required max 240 chars

`quantity` number required

`unit` string max 16 chars

`unitPriceHaler` integer required min -9007199254740991 max 9007199254740991

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

`vatRate` 0 | 10 | 12 | 15 | 21 required

`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.

`accountNumber` string | null

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

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

### Response · 201

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`fileId` null | string required

`customFields` object

`vatMode` string

`exchangeRate` integer

`templateId` null | string

`centerId` string | null

`activityId` string | null

`projectId` null | string

`seriesId` null | string

`constantSymbol` string | null

`receivedOn` null | string date

`taxPointDate` string date

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` null | string

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`stornoOfId` null | string

`duplicateOfId` 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` "received\_invoice\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` null | string required

`lineKind` string required

`sourceId` null | string required

`itemId` null | string required

`warehouseId` null | string required

`lots` object\[\] required

`lotId` string | null required

`code` null | string required

`quantity` integer required

`expiryDate` string | null required

`orderLineId` null | string required

`recycling` null | object

`text` string required

`unit` string required

`feeId` null | string required

`rateHaler` integer required

`totalHaler` integer required

`weightMilli` integer

`perUnitHaler` integer required

`coefficientMilli` integer required

`typed` boolean

`vatLines` object\[\]

`object` "received\_invoice\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`settlements` object\[\]

`object` "received\_invoice\_settlement" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`supplierAdvances` object\[\]

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`posting` object

`regime` string required

`event` string required

`journalLines` object\[\]

`account` null | string required

`side` string required

`amountHaler` integer | null required

`documentId` null | string required

`balanced` boolean

`cashJournal` object\[\]

`account` null | string required

`amountHaler` integer | null required

`documentId` null | string required

`receivablesBook` any\[\]

`payablesBook` object\[\]

`documentId` null | string required

`amountHaler` integer | null required

`status` string required

`asset` any\[\]

`retentions` any\[\]

`duplicate` object

`existingId` string required

`bankMovement` object

`id` string required

`bankAccountId` string required

`cashDocument` object

`id` string required

`number` null | string required

`warnings` any\[\] required

`imported` object

`uuid` string required

`documentType` integer | null required

`warnings` string\[\] required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/settle \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "supplierDocumentNumber": "string",
  "issueDate": "2026-10-30",
  "taxPointDate": "2026-10-30"
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/settle', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "supplierDocumentNumber": "string",
    "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/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/settle",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "supplierDocumentNumber": "string",
        "issueDate": "2026-10-30",
        "taxPointDate": "2026-10-30"
    },
)
data = response.json()
```

## Record the supplier's tax document for a paid advance: MD 343 / D 314 for the VAT, into the VAT register and control statement of its period. For a service from the EU or a third country it records the customer's self-assessment of the payment instead. VAT payers only

POST `/v1/supplier-advances/{id}/tax-documents`

Record the supplier's tax document for a paid advance: MD 343 / D 314 for the VAT, into the VAT register and control statement of its period. For a service from the EU or a third country it records the customer's self-assessment of the payment instead. VAT payers only. Without \`lines\` the VAT is taken out of the part paid and not yet taxed, at the advance's rates. \`receivedOn\` decides the first period the deduction may be claimed in (§ 73 odst. 2 ZDPH). In modes eu\_services and third\_country\_services the tax is due on the day of the payment (§ 24 odst. 3, § 108 odst. 3 ZDPH): \`vatRate\` (default 21) goes on the payment as the base, \`supplierDocumentNumber\` is optional, and tax and deduction land in the same period with nothing in the books. Do not record it if the supply is not yet known with enough certainty (§ 24 odst. 3, second sentence): the final invoice then carries the tax.

MCP tool: `create-supplier-advance-tax-document`

### Path parameters

`id` string required

### Request body

`supplierDocumentNumber` string max 64 chars

`paymentId` string

ID of the payment.

`vatRate` 21 | 12

`issueDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`taxPointDate` string YYYY-MM-DD

Date as YYYY-MM-DD.

`receivedOn` string YYYY-MM-DD

Date as YYYY-MM-DD.

`exchangeRate` number

`amountHaler` integer max 9007199254740991

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

`lines` object\[\]

`vatRate` number required min 0 max 30

`netHaler` integer required min -9007199254740991 max 9007199254740991

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

`vatHaler` integer required min -9007199254740991 max 9007199254740991

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

`description` string max 400 chars

### Response · 201

`id` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`variableSymbol` null | string required

`contactId` null | string required

`contactName` null | string required

`issueDate` string required date

`dueDate` null | string required date

`currency` string required

`totalHaler` integer required

`paidHaler` integer required

`status` string required

`overdue` boolean required

`customFields` object

`stavba_zalohy` string

`vatMode` string

`exchangeRate` integer

`templateId` string | null

`centerId` string | null

`activityId` string | null

`projectId` string | null

`seriesId` null | string

`constantSymbol` string | null

`paymentMethod` string

`theirAccountNumber` null | string

`theirBankCode` null | string

`theirIban` string | null

`notePublic` string | null

`noteInternal` null | string

`netHaler` integer

`vatHaler` integer

`taxedHaler` integer

`advanceAccount` string

`selfAssessable` boolean

`receivedInvoiceId` null | string

`contactIco` null | string

`contactDic` null | string

`contactVatPayerType` null | string

`billToStreet` string | null

`billToCity` string | null

`billToPostalCode` string | null

`billToCountry` null | string

`shipToName` string | null

`shipToStreet` string | null

`shipToCity` string | null

`shipToPostalCode` string | null

`shipToCountry` string | null

`contactEmail` null | string

`lines` object\[\]

`object` "supplier\_advance\_line" required

`id` string required

`description` string required

`quantity` integer required

`unit` string required

`unitPriceHaler` integer required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`accountNumber` string | null required

`lineKind` string required

`sourceId` string | null required

`itemId` string | null required

`warehouseId` string | null required

`lots` any\[\] required

`orderLineId` string | null required

`vatLines` object\[\]

`object` "supplier\_advance\_vat\_line" required

`id` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`payments` object\[\]

`object` "supplier\_advance\_payment" required

`id` string required

`amountHaler` integer required

`paidOn` string required date

`method` string required

`note` null | string required

`exchangeRate` number required

`taxDocuments` object\[\]

`object` "supplier\_advance\_tax\_document" required

`id` string required

`supplierAdvanceId` string required

`number` null | string required

`supplierDocumentNumber` null | string required

`contactName` null | string required

`contactDic` null | string required

`status` string required

`issueDate` string required date

`taxPointDate` string required date

`receivedOn` null | string required date

`currency` string required

`exchangeRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`reason` null | string required

`correctsNumber` null | string required

`selfAssessed` boolean required

`paymentId` null | string required

`receivedInvoiceId` null | string required

`stornoOfId` null | string required

`lines` object\[\] required

`object` "supplier\_advance\_tax\_document\_line" required

`id` string required

`description` string required

`vatRate` integer required

`netHaler` integer required

`vatHaler` integer required

`totalHaler` integer required

`taxRecordsKind` string

`bankMovement` object

`id` string required

`bankAccountId` string required

`refund` object

`amountHaler` integer | null required

`paymentId` null | string required

`correctionId` null | string required

`correctionNumber` null | string required

`stornoCorrection` object

`reason` null | string required

`date` string required date

`period` string required

`additionalReturn` boolean required

`followUpStatement` boolean required

```bash
curl -X POST https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/tax-documents \
  -H "Authorization: Bearer $DAMEDOKLAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "supplierDocumentNumber": "string",
  "paymentId": "obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
  "vatRate": 21
}'
```

```javascript
const response = await fetch('https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/tax-documents', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.DAMEDOKLAD_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    "supplierDocumentNumber": "string",
    "paymentId": "obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
    "vatRate": 21
  }),
});
const data = await response.json();
```

```python
import os
import requests

response = requests.post(
    "https://api.damedoklad.cz/v1/supplier-advances/sad_2n9F4kT7wQ1xYz0aBcDeFgHiJkL/tax-documents",
    headers={"Authorization": f"Bearer {os.environ['DAMEDOKLAD_API_KEY']}"},
    json={
        "supplierDocumentNumber": "string",
        "paymentId": "obj_2n9F4kT7wQ1xYz0aBcDeFgHiJkL",
        "vatRate": 21
    },
)
data = response.json()
```
