{
  "openapi": "3.0.1",
  "info": {
    "title": "KROS OpenAPI",
    "description": "You can obtain an authorization token and set callback url after logging into the application <a target='_blank' href='https://fakturacia.kros.sk/'>https://fakturacia.kros.sk/</a> in the settings section.\r\n\r\nRate-limiting rules allow max.  3 requests in a time window of 1s or  3 requests in a time window of 1s or  3 requests in a time window of 1s or  10 requests in a time window of 1s or  300 requests in a time window of 1m.\r\n\r\nDuplicate POST request sent in time window of  120 seconds will not be processed.\r\n\r\nYou can find more information about Kros OpenAPI in the documentation <a target='_blank' href='https://www.kros.sk/openapi-dokumentacia/'>https://www.kros.sk/openapi-dokumentacia/</a> \r\n",
    "version": "1.0"
  },
  "paths": {
    "/api/attachments/{evidence}/{documentId}": {
      "get": {
        "tags": [
          "Attachments"
        ],
        "summary": "Gets attachment metadata of a document.",
        "parameters": [
          {
            "name": "evidence",
            "in": "path",
            "description": "Document evidence (currently only `expenses`).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "documentId",
            "in": "path",
            "description": "Document id.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/attachments/{evidence}/{documentId}/{attachmentId}/content": {
      "get": {
        "tags": [
          "Attachments"
        ],
        "summary": "Downloads the binary content of one attachment of a document.",
        "parameters": [
          {
            "name": "evidence",
            "in": "path",
            "description": "Document evidence (currently only `expenses`).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "documentId",
            "in": "path",
            "description": "Document id.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "attachmentId",
            "in": "path",
            "description": "Attachment id.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/auth/check": {
      "get": {
        "tags": [
          "Auth"
        ],
        "summary": "Check if connection is alive and token is correct.",
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/integration-subscription/poll": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Polls the status of a subscription using the provided state.",
        "description": "Retrieves the current approval status of an integration subscription identified by the `state` token issued during the subscription creation flow via the poll method.\n\nThis endpoint is intended to be called repeatedly (polling) until a terminal status is reached:\n- **Approved** — the subscription has been authorized; the response contains per-company access tokens and webhook secrets.\n- **Pending** — no decision has been made yet; continue polling.\n- **Denied** — the polling request limit has been exceeded.\n- **Expired** — the integration was confirmed but the 15-minute token retrieval window elapsed.",
        "requestBody": {
          "description": "Poll subscription request containing the state.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PollSubscriptionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PollSubscriptionResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes/{id}": {
      "get": {
        "tags": [
          "Delivery Notes"
        ],
        "summary": "Get delivery note by id.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeliveryNoteResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes": {
      "get": {
        "tags": [
          "Delivery Notes"
        ],
        "summary": "Get list of delivery notes based on query parameters.",
        "parameters": [
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date from. If issueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date to. If issueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ExtendedFields",
            "in": "query",
            "description": "Extended fields.\nOnly allowed value is Items. Parsing of values is case insensitive.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "NumberingSequence",
            "in": "query",
            "description": "Numbering sequence.\nMax length: 5.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeliveryNoteResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes/{id}/reports/{reportId}": {
      "get": {
        "tags": [
          "Delivery Notes"
        ],
        "summary": "Get delivery note pdf by id. Returns a downloadable PDF file.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes/{id}/reports/{reportId}/previewLink": {
      "get": {
        "tags": [
          "Delivery Notes"
        ],
        "summary": "Get a preview of a delivery note pdf by id. Returns a URL to the PDF preview.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes/batch": {
      "post": {
        "tags": [
          "Delivery Notes"
        ],
        "summary": "Upload list of delivery notes. Limited to 100 delivery notes in one request.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeliveryNoteListApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Delivery note upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/delivery-notes/single": {
      "post": {
        "tags": [
          "Delivery Notes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeliveryNoteApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeliveryNoteCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/expenses/{id}": {
      "get": {
        "tags": [
          "Expenses"
        ],
        "summary": "Gets a single expense document by Guid.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExpenseResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/expenses": {
      "get": {
        "tags": [
          "Expenses"
        ],
        "summary": "Gets a list of expenses based on query parameters.",
        "parameters": [
          {
            "name": "DocumentType",
            "in": "query",
            "description": "Optional single expense type filter. Undefined means all expense types.<p>Allowed values:</p><ul><li>10: ReceivedInvoice</li><li>11: Receipt</li><li>13: InternalDocument</li><li>15: ReceivedProformaInvoice</li><li>17: ReceivedCreditNote</li><li>19: ReceivedDebitNote</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time (ISO 8601). Optional incremental-sync filter.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Issue date from (ISO 8601 \"yyyy-MM-dd\"). When with issueDateTo set, must be ≤ issueDateTo.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Issue date to (ISO 8601 \"yyyy-MM-dd\"). When with issueDateFrom set, must be ≥ issueDateFrom.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DueDateFrom",
            "in": "query",
            "description": "Due date from (ISO 8601 \"yyyy-MM-dd\"). When with dueDateTo set, must be ≤ dueDateTo.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DueDateTo",
            "in": "query",
            "description": "Due date to (ISO 8601 \"yyyy-MM-dd\"). When with dueDateFrom set, must be ≥ dueDateFrom.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DeliveryDateFrom",
            "in": "query",
            "description": "Delivery date from (ISO 8601 \"yyyy-MM-dd\"). When with deliveryDateTo set, must be ≤ deliveryDateTo.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DeliveryDateTo",
            "in": "query",
            "description": "Delivery date to (ISO 8601 \"yyyy-MM-dd\"). When with deliveryDateFrom set, must be ≥ deliveryDateFrom.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ReceivedDateFrom",
            "in": "query",
            "description": "Received date from (ISO 8601 \"yyyy-MM-dd\"). When with receivedDateTo set, must be ≤ receivedDateTo.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ReceivedDateTo",
            "in": "query",
            "description": "Received date to (ISO 8601 \"yyyy-MM-dd\"). When with receivedDateFrom set, must be ≥ receivedDateFrom.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "PaymentStatus",
            "in": "query",
            "description": "Payment status filter. Undefined means no payment-status constraint.<p>Allowed values:</p><ul><li>0: NotPaid</li><li>1: FullyPaid</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TotalPriceInclVatFrom",
            "in": "query",
            "description": "Total price incl. VAT from (inclusive lower bound).",
            "schema": {
              "type": "number",
              "format": "double",
              "nullable": true
            }
          },
          {
            "name": "TotalPriceInclVatTo",
            "in": "query",
            "description": "Total price incl. VAT to (inclusive upper bound).",
            "schema": {
              "type": "number",
              "format": "double",
              "nullable": true
            }
          },
          {
            "name": "NumberingSequence",
            "in": "query",
            "description": "Numbering sequence.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ExpenseResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices/{id}": {
      "get": {
        "tags": [
          "Invoices"
        ],
        "summary": "Get invoice by id.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoiceResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices": {
      "get": {
        "tags": [
          "Invoices"
        ],
        "summary": "Gets list of invoices based on query parameters.",
        "parameters": [
          {
            "name": "DeliveryDateFrom",
            "in": "query",
            "description": "Delivery date from.\nExpected format is \"yyyy-MM-dd\" according to ISO 8601.\nIf DeliveryDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DeliveryDateTo",
            "in": "query",
            "description": "Delivery date to.\nExpected format is \"yyyy-MM-dd\" according to ISO 8601.\nIf DeliveryDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "OrderNumber",
            "in": "query",
            "description": "Order number. Max length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date from. If issueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date to.If issueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "PaymentStatus",
            "in": "query",
            "description": "Payment status filter.<p>Allowed values:</p><ul><li>0: NotPaid</li><li>1: FullyPaid</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DueDateStatus",
            "in": "query",
            "description": "Due date status filter.<p>Allowed values:</p><ul><li>1: InDue</li><li>2: OverDue</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "NumberingSequence",
            "in": "query",
            "description": "Numbering sequence.\nMax length: 5.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ExtendedFields",
            "in": "query",
            "description": "Extended fields.\nAllowed values are Items, VatBreakdowns, Payments and LinkedDocuments sepparated by comma. Parsing of values is case insensitive.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InvoiceResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Invoices"
        ],
        "summary": "Upload invoice.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InvoiceApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Invoice upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices/{id}/reports/{reportId}": {
      "get": {
        "tags": [
          "Invoices"
        ],
        "summary": "Get invoice pdf by id. Returns a downloadable PDF file.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id (Allowed values for invoices are: 17 - black and white; 19 - color, 101 - editable report).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices/{id}/reports/{reportId}/previewLink": {
      "get": {
        "tags": [
          "Invoices"
        ],
        "summary": "Get a preview of an invoice pdf by invoice id. Returns a URL to the PDF preview.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id (Allowed values for invoices are: 17 - black and white; 19 - color, 101 - editable report).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices/batch": {
      "post": {
        "tags": [
          "Invoices"
        ],
        "summary": "Upload list of invoices. Limited to 100 invoices in one request.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InvoiceListApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Invoice upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/payments": {
      "get": {
        "tags": [
          "Payments"
        ],
        "summary": "Get transactions with query parameters. This endpoint will only return payments added with account id, not the payments\r\nadded only to the document.",
        "parameters": [
          {
            "name": "PaymentDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nPayment date from. If PaymentDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "PaymentDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nPayment date to.If PaymentDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "AccountId",
            "in": "query",
            "description": "Account id.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "nullable": true
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "External id.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Iban",
            "in": "query",
            "description": "Iban.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified timestamp from (inclusive).\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProcessedPaymentIEnumerableApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/payments/batch": {
      "post": {
        "tags": [
          "Payments"
        ],
        "summary": "Upload list of payments. Limited to 100 payments in one request.\r\nThis endpoint will be used for adding payments to the document without account id, but also for adding payments with account id.\r\nIf payment is added with account id, then financial transaction will be created and callback with financial transaction payload will be called.\r\nIf payment is added without account id, then callback with payment payload will be called.\r\nIt is reccomended to add payments with account id, to fully leverage Finances in app. Hovever, for backward compatibility reasons,\r\nwe need to support also adding payments without account id, since some of our users are using this way to add payments to the document.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaymentListApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "405": {
            "description": "Method not allowed/Endpoint has not been implemented."
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Document Payment created callback. This callback payload will be used if payment is created without account id.": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/PaymentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          },
          "Financial transaction created callback - this callback payload will be used if payment is created with account id.": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/FinancialTransactionCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/payments/accounts": {
      "get": {
        "tags": [
          "Payments"
        ],
        "summary": "Get bank accounts.",
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FinancialAccountResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/payments/accounts/bank": {
      "post": {
        "tags": [
          "Payments"
        ],
        "summary": "Create a Bank account with valid iban.",
        "requestBody": {
          "description": "Bank account.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BankAccountApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FinancialAccountCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "405": {
            "description": "Method not allowed/Endpoint has not been implemented."
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/payments/accounts/cash": {
      "post": {
        "tags": [
          "Payments"
        ],
        "summary": "Create a Cash account.",
        "requestBody": {
          "description": "Cash account.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CashAccountApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FinancialAccountCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "405": {
            "description": "Method not allowed/Endpoint has not been implemented."
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/payments/accounts/paywall": {
      "post": {
        "tags": [
          "Payments"
        ],
        "summary": "Create Paywall.",
        "requestBody": {
          "description": "Paywall.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PaywallApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FinancialAccountCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "405": {
            "description": "Method not allowed/Endpoint has not been implemented."
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/proforma-invoices/{id}": {
      "get": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Get proforma invoice by id.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProformaInvoiceResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/proforma-invoices": {
      "get": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Gets list of proforma invoices based on query parameters.",
        "parameters": [
          {
            "name": "OrderNumber",
            "in": "query",
            "description": "Order number. Max length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date from. If issueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date to.If issueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "PaymentStatus",
            "in": "query",
            "description": "Payment status filter.<p>Allowed values:</p><ul><li>0: NotPaid</li><li>1: FullyPaid</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DueDateStatus",
            "in": "query",
            "description": "Due date status filter.<p>Allowed values:</p><ul><li>1: InDue</li><li>2: OverDue</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "NumberingSequence",
            "in": "query",
            "description": "Numbering sequence.\nMax length: 5.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ExtendedFields",
            "in": "query",
            "description": "Extended fields.\nAllowed values are Items, VatBreakdowns, Payments and LinkedDocuments sepparated by comma. Parsing of values is case insensitive.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProformaInvoiceResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Upload proforma invoice.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProformaInvoiceApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "ProformaInvoice upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/proforma-invoices/{id}/reports/{reportId}": {
      "get": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Get proforma invoice report by id. Returns a downloadable PDF file.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report id (Allowed values for proforma invoices are: 21 - black and white; 22 - color).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/proforma-invoices/{id}/reports/{reportId}/previewLink": {
      "get": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Get a preview of a proforma invoice pdf by invoice id. Returns a URL to the PDF preview.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report id (Allowed values for proforma invoices are: 21 - black and white; 22 - color).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/proforma-invoices/batch": {
      "post": {
        "tags": [
          "Proforma Invoices"
        ],
        "summary": "Upload list of proforma invoices. Limited to 100 proforma invoices in one request.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProformaInvoiceListApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "ProformaInvoice upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/received-orders/{id}": {
      "get": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Get received order by id.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReceivedOrderResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/received-orders": {
      "get": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Get list of received orders based on query parameters.",
        "parameters": [
          {
            "name": "ReceivedDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nReceived date from. If receivedDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ReceivedDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nReceived date to.If receivedDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nDue date from. If dueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "DueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nDue date to.If dueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ReceivedOrderStatus",
            "in": "query",
            "description": "Status of received order.<p>Allowed values:</p><ul><li>0: Pending</li><li>1: Complete</li><li>2: Cancelled</li><li>3: PastDue</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Invoice",
            "in": "query",
            "description": "Received order has or doesn't have invoice.<p>Allowed values:</p><ul><li>1: With</li><li>2: Without</li></ul>",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ExternalOrderNumber",
            "in": "query",
            "description": "External order number.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ExtendedFields",
            "in": "query",
            "description": "Extended fields.\nOnly allowed value is Items. Parsing of values is case insensitive.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "NumberingSequence",
            "in": "query",
            "description": "Numbering sequence.\nMax length: 5.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReceivedOrderResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Upload received order.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReceivedOrderApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Received order upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/received-orders/{id}/reports/{reportId}": {
      "get": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Get received order pdf by id.  Returns a downloadable PDF file.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id (Allowed values for received orders are: 16 - black and white; 26 - color).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/received-orders/{id}/reports/{reportId}/previewLink": {
      "get": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Get a preview of a received order pdf by invoice id. Returns a URL to the PDF preview.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Unique document id.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "reportId",
            "in": "path",
            "description": "Report Id (Allowed values for received orders are: 16 - black and white; 26 - color).",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/received-orders/batch": {
      "post": {
        "tags": [
          "Received Orders"
        ],
        "summary": "Upload list of received order. Limited to 100 orders in one request.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReceivedOrderListApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationResult"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DuplicateRequestResult"
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "callbacks": {
          "Received order upload finished": {
            "https://example.com/endpoint": {
              "post": {
                "summary": "Call from OpenApi to endpoint on which your server listens.",
                "requestBody": {
                  "content": {
                    "application/json": {
                      "schema": {
                        "$ref": "#/components/schemas/DocumentCallbackPayload"
                      }
                    }
                  }
                },
                "responses": {
                  "200": {
                    "description": "Status code that your server should return if the data was received successfully."
                  },
                  "400": {
                    "description": "Status code indicating that your server does not understand the format of the payload.\n                                No retries are attempted."
                  },
                  "500": {
                    "description": "Status code indicating server-side error in the delivery. 2 retries are attempted."
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/numberingSequences": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Get Number sequences of company.",
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NumberingSequenceResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tags": {
      "get": {
        "tags": [
          "Settings"
        ],
        "summary": "Gets all active tags for the company.",
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TagResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/warehouses": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get warehouses.",
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WarehouseResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/catalog-items": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get catalog items.",
        "parameters": [
          {
            "name": "ItemCode",
            "in": "query",
            "description": "Catalog item code. Max length is 25.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "description": "Catalog item name. Max length is 255. This field is used for full text search in Catalog item name column.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OnlyMarkedForEshop",
            "in": "query",
            "description": "If true, only items marked for eshop are returned.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "CatalogItemChangedTimestamp",
            "in": "query",
            "description": "Catalog item changed date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CatalogItemResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/receipts/{id}": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get a receipt by its identifier.\r\nReturns 404 if not found.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Movement identifier.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/receipts": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get list of receipts filtered by the query parameters.",
        "parameters": [
          {
            "name": "WarehouseId",
            "in": "query",
            "description": "Warehouse identifier.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "nullable": true
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date from. If issueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date to. If issueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "External identifier (from third-party system).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/issues/{id}": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get an issue by its identifier.\r\nReturns 404 if not found.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Movement identifier.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementResponseApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/issues": {
      "get": {
        "tags": [
          "Warehouses"
        ],
        "summary": "Get list of issues filtered by the query parameters.",
        "parameters": [
          {
            "name": "WarehouseId",
            "in": "query",
            "description": "Warehouse identifier.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "nullable": true
            }
          },
          {
            "name": "DocumentNumberFrom",
            "in": "query",
            "description": "Document number from.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DocumentNumberTo",
            "in": "query",
            "description": "Document number to.\nMax length: 20.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IssueDateFrom",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date from. If issueDateTo is also set, date from has to be lower or equal to date to.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "IssueDateTo",
            "in": "query",
            "description": "Expected format is \"yyyy-MM-dd\" according to ISO 8601.\nIssue date to. If issueDateFrom is also set, date to has to be greater or equal to date from.",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "LastModifiedTimestamp",
            "in": "query",
            "description": "Last modified date and time.\nExpected formats according to ISO 8601 are: \"yyyy-MM-ddTHH:mm:ss.ff\", \"yyyy-MM-ddTHH:mm:ss\".",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "External identifier (from third-party system).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Top",
            "in": "query",
            "description": "Pagination parameter. Takes intValue x records.\nDefault value: 100.\nMin value: 0.\nMax value: 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Skip",
            "in": "query",
            "description": "Pagination parameter. Skips x records.\nDefault value: 0.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementResponseIEnumerableApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/receipts/single": {
      "post": {
        "tags": [
          "Warehouses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MovementApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/movements/issues/single": {
      "post": {
        "tags": [
          "Warehouses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MovementApiRequestBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "headers": {
              "x-rate-limit-limit": {
                "description": "The rate limit period.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-remaining": {
                "description": "The number of request remaining in the time window before encountering a 429 error.",
                "schema": {
                  "type": "string"
                }
              },
              "x-rate-limit-reset": {
                "description": "The time at which the rate limit resets, specified in UTC epoch time.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MovementCreatedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "402": {
            "description": "Payment required"
          },
          "403": {
            "description": "Forbidden"
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "retry-after": {
                "description": "The number of seconds to wait before making a new request.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AccountingDetails": {
        "type": "object",
        "properties": {
          "syntheticAccount": {
            "maxLength": 3,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Synthetic account - Syntetický účet.",
            "nullable": true,
            "example": "123"
          },
          "analyticalAccount": {
            "maxLength": 6,
            "pattern": "^\\d*$",
            "type": "string",
            "description": "Analytical account - Analytický účet.",
            "nullable": true,
            "example": "456"
          },
          "descriptionAccounting": {
            "maxLength": 255,
            "type": "string",
            "description": "Description for accounting - Popis pre účtovníctvo.",
            "nullable": true,
            "example": "Popis"
          }
        },
        "additionalProperties": false,
        "description": "Accounting details."
      },
      "AttachmentResponse": {
        "type": "object",
        "properties": {
          "attachmentId": {
            "type": "string",
            "description": "Attachment identifier used to download its content.",
            "format": "uuid"
          },
          "fileName": {
            "type": "string",
            "description": "File name including extension.",
            "nullable": true
          },
          "contentType": {
            "type": "string",
            "description": "MIME type, e.g. `application/pdf` or `image/jpeg`.",
            "nullable": true
          },
          "sizeInBytes": {
            "type": "integer",
            "description": "File size in bytes.",
            "format": "int64"
          },
          "createdDate": {
            "type": "string",
            "description": "When the attachment was created.",
            "format": "date-time"
          },
          "extension": {
            "type": "string",
            "description": "File extension without the leading dot, e.g. `pdf`.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Public metadata of a single document attachment."
      },
      "AttachmentResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachmentResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "BadRequestResponse": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "description": "Validation errors.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Response for bad request with validation errors."
      },
      "BankAccount": {
        "required": [
          "currency",
          "iban",
          "name",
          "swift"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Custom bank account name - Vlastný názov účtu.",
            "example": "Slovenska sporitelna"
          },
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Account Currency - Mena účtu.",
            "example": "EUR"
          },
          "iban": {
            "maxLength": 40,
            "minLength": 1,
            "type": "string",
            "description": "valid IBAN - validný IBAN.",
            "example": "SK0809000000000123123123"
          },
          "swift": {
            "maxLength": 20,
            "minLength": 1,
            "type": "string",
            "description": "SWIFT.",
            "example": "GIBASKBX"
          }
        },
        "additionalProperties": false,
        "description": "Bank account properties."
      },
      "BankAccountApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/BankAccount"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "CashAccount": {
        "required": [
          "currency",
          "name"
        ],
        "type": "object",
        "properties": {
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Account Currency - Mena účtu.",
            "example": "EUR"
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Custom bank account name - Vlastný názov účtu.",
            "example": "Pokladnica EUR."
          }
        },
        "additionalProperties": false,
        "description": "Cash account properties."
      },
      "CashAccountApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/CashAccount"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "CatalogItemResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Id.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Name.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Description.",
            "nullable": true
          },
          "measureUnit": {
            "type": "string",
            "description": "Measure unit.",
            "nullable": true
          },
          "purchaseUnitPrice": {
            "type": "number",
            "description": "Purchase unit price.",
            "format": "double",
            "nullable": true
          },
          "purchaseUnitPriceInclVat": {
            "type": "number",
            "description": "Purchase unit price including VAT.",
            "format": "double",
            "nullable": true
          },
          "vatRate": {
            "type": "number",
            "description": "Vat rate.",
            "format": "double",
            "nullable": true
          },
          "itemCode": {
            "type": "string",
            "description": "Item code.",
            "nullable": true
          },
          "quantityOnHand": {
            "type": "number",
            "description": "Quantity on hand.",
            "format": "double"
          },
          "isMarkedForEshop": {
            "type": "boolean",
            "description": "Is catalog item marked as For eshop."
          },
          "catalogItemChangedTimestamp": {
            "type": "string",
            "description": "Catalog item last changed timestamp.",
            "format": "date-time"
          },
          "eanCode": {
            "type": "string",
            "description": "EAN code.",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "description": "Weight.",
            "format": "double",
            "nullable": true
          },
          "warehouses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WarehouseCatalogItemResponse"
            },
            "description": "Warehouses.",
            "nullable": true
          },
          "sellingPrices": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SellingPriceResponse"
            },
            "description": "Selling prices.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Catalog item response."
      },
      "CatalogItemResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CatalogItemResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "CompanyTokenPair": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "integer",
            "description": "The company ID.",
            "format": "int64"
          },
          "companyName": {
            "type": "string",
            "description": "The company name.",
            "nullable": true
          },
          "token": {
            "type": "string",
            "description": "The authentication token for the company.",
            "nullable": true
          },
          "webHookSecret": {
            "type": "string",
            "description": "The webhook secret for the company.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a company's token and webhook secret pair."
      },
      "CustomField": {
        "type": "object",
        "properties": {
          "label": {
            "maxLength": 20,
            "type": "string",
            "description": "Custom field label - Názov vlastného poľa.",
            "nullable": true,
            "example": "Zmluva č."
          },
          "value": {
            "maxLength": 30,
            "type": "string",
            "description": "Custom field value - Hodnota vlastného poľa.",
            "nullable": true,
            "example": "756"
          }
        },
        "additionalProperties": false,
        "description": "Custom field that can be added to document."
      },
      "DeliveryNote": {
        "required": [
          "vatPayerType"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItem"
            },
            "description": "Document items - Položky dokladu.",
            "nullable": true
          },
          "internalNote": {
            "maxLength": 300,
            "type": "string",
            "description": "Note hidden on printed document - Interná poznámka.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "maxLength": 255,
            "type": "string",
            "description": "Note showing on printed document - Poznámka pre tlač.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Supplier vat payer type - Typ platiteľa DPH. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use §7/7a for document. Omitted, false or null in case when VatPayer type other than 2. - Použitie paragrafu §7/7a.",
            "nullable": true,
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Language culture of document. Supported values sk-SK, en-GB, de-DE. If omitted or null sk-SK wil be used.\r\nBased on RFC 5646, https://datatracker.ietf.org/doc/html/rfc5646 - Jazyk dokladu.",
            "nullable": true,
            "example": "sk-SK"
          },
          "openingText": {
            "type": "string",
            "description": "Opening text, displayed above items - Úvodný text.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Closing text, displayed at the end of document - Záverečný text.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "maxLength": 255,
            "type": "string",
            "description": "Company registration court text - Firma zapísaná v registri.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC) - Dátum splatnosti.",
            "format": "date",
            "nullable": true
          },
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Document currency. If currency not filled, your company default currency will be used - Mena.",
            "nullable": true,
            "example": "EUR"
          },
          "exchangeRate": {
            "minimum": 0,
            "type": "number",
            "description": "Exchange rate between currency and EUR. Max 6 decimal places - Kurz.",
            "format": "double",
            "example": 1
          },
          "discountPercent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "Discount percent. Used for calculating discount only if filled with value and DiscountTotalPriceInclVat is 0, null or\r\nomitted - Zľava za doklad v percentách.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "discountTotalPriceInclVat": {
            "minimum": 0,
            "type": "number",
            "description": "Discount value including VAT – Výška zľavy za doklad s DPH.",
            "format": "double",
            "nullable": true,
            "example": 0
          },
          "tags": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of tags assigned to document.  Max 30 tags can be assigned to one document.\r\nIf Tag already exists, it will be used, otherwise new Tag will be created.\r\nWhen pairing tag to existing, case is not important.\r\nIf Tags is ommitted or null, existing value of tags will be preserved.\r\n<example>['Stredisko1', 'Dôležité']</example>",
            "nullable": true
          },
          "numberingSequence": {
            "maxLength": 5,
            "type": "string",
            "description": "The numbering sequence code - Kód číselného radu.",
            "nullable": true,
            "example": "DL"
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the delivery note - Číslo dodacieho listu.",
            "nullable": true,
            "example": ""
          },
          "invoiceNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of related invoice - Číslo faktúry.",
            "nullable": true,
            "example": "FA123456"
          },
          "orderNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of related order - Číslo objednávky.",
            "nullable": true,
            "example": "OBJ123456"
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC) - Dátum vystavenia.",
            "format": "date",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Delivery note."
      },
      "DeliveryNoteApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/DeliveryNote"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "DeliveryNoteCreatedResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Created delivery note identifier.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "External identifier echoed from the request.",
            "nullable": true
          },
          "documentNumber": {
            "type": "string",
            "description": "Assigned document number.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Response returned after successfully creating a delivery note."
      },
      "DeliveryNoteListApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DeliveryNote"
            },
            "description": "Data object of response."
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "DeliveryNoteResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document Id.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItemResponse"
            },
            "description": "Document items.",
            "nullable": true
          },
          "discount": {
            "$ref": "#/components/schemas/DocumentDiscount"
          },
          "documentNumber": {
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "202206001"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of vat payer. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "openingText": {
            "type": "string",
            "description": "Custom text  shown in the front of document.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Custom text shown in the end of document.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "type": "string",
            "description": "Company registration court text.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use of §7/7a.",
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Document culture.",
            "nullable": true,
            "example": "sk-SK"
          },
          "internalNote": {
            "type": "string",
            "description": "Note hidden on printed document.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "type": "string",
            "description": "Note showing on printed document.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "pdfReportLink": {
            "type": "string",
            "description": "Link to retrieve pdf report.",
            "nullable": true,
            "example": "https:/open-api-gateway/received-orders/1/reports/1"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Date when document was created.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Document last modified timestamp.",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "invoiceNumber": {
            "type": "string",
            "description": "The number of related invoice.",
            "nullable": true,
            "example": "FA123456"
          },
          "orderNumber": {
            "type": "string",
            "description": "The number of related order.",
            "nullable": true,
            "example": "OBJ123456"
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "DL"
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          }
        },
        "additionalProperties": false,
        "description": "Get delivery note by Id."
      },
      "DeliveryNoteResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/DeliveryNoteResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "DeliveryNoteResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DeliveryNoteResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "DocumentBankAccount": {
        "type": "object",
        "properties": {
          "iban": {
            "maxLength": 40,
            "type": "string",
            "description": "Account number in IBAN format - IBAN.",
            "nullable": true,
            "example": "SK6807200002891987426353"
          },
          "accountNumber": {
            "type": "string",
            "description": "Account number. Optionally filled only for foreign account - Číslo účtu (len pre zahraničný účet).",
            "nullable": true,
            "example": ""
          },
          "isForeign": {
            "type": "boolean",
            "description": "Flag if bank account is foreign - Zahraničný účet.",
            "example": false
          },
          "swift": {
            "type": "string",
            "description": "SWIFT code - SWIFT kód.",
            "nullable": true,
            "example": "CEKOSKBX"
          }
        },
        "additionalProperties": false,
        "description": "Bank account model."
      },
      "DocumentBaseLegislativePrice": {
        "type": "object",
        "properties": {
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT.",
            "format": "double",
            "example": 108
          },
          "totalPrice": {
            "type": "number",
            "description": "Total price without VAT.",
            "format": "double",
            "example": 90
          },
          "vatTotalPrice": {
            "type": "number",
            "description": "VAT value.",
            "format": "double",
            "example": 18
          },
          "sumForPayment": {
            "type": "number",
            "description": "Total amount to be paid in legislative currency (left to pay = this minus Kros.Esw.OpenApi.Base.Domain.Documents.Responses.ValueObjects.DocumentBaseLegislativePrice.SumOfPayments).",
            "format": "double",
            "example": 108
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of payments already made in legislative currency.",
            "format": "double",
            "example": 0
          }
        },
        "additionalProperties": false,
        "description": "Legislative price details."
      },
      "DocumentBasePrice": {
        "type": "object",
        "properties": {
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT.",
            "format": "double",
            "example": 84.6
          },
          "totalPrice": {
            "type": "number",
            "description": "Total price without VAT.",
            "format": "double",
            "example": 72
          },
          "vatTotalPrice": {
            "type": "number",
            "description": "VAT value.",
            "format": "double",
            "example": 18
          },
          "sumForPayment": {
            "type": "number",
            "description": "Total amount to be paid in document currency (left to pay = this minus Kros.Esw.OpenApi.Base.Domain.Documents.Responses.ValueObjects.DocumentBasePrice.SumOfPayments).",
            "format": "double",
            "example": 84.6
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of payments already made in document currency.",
            "format": "double",
            "example": 0
          },
          "totalPriceBeforeDiscount": {
            "type": "number",
            "description": "Total price before discount.",
            "format": "double",
            "example": 90
          },
          "totalPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Total price before discount including VAT.",
            "format": "double",
            "example": 108
          }
        },
        "additionalProperties": false,
        "description": "Price details."
      },
      "DocumentBasePrices": {
        "type": "object",
        "properties": {
          "documentPrices": {
            "$ref": "#/components/schemas/DocumentBasePrice"
          },
          "legislativePrices": {
            "$ref": "#/components/schemas/DocumentBaseLegislativePrice"
          },
          "exchangeRate": {
            "type": "number",
            "description": "Exchange rate.",
            "format": "double",
            "example": 1
          },
          "currency": {
            "type": "string",
            "description": "Currency.",
            "nullable": true,
            "example": "EUR"
          }
        },
        "additionalProperties": false,
        "description": "Prices."
      },
      "DocumentCallbackPayload": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "integer",
            "description": "Id of company.",
            "format": "int64",
            "example": 5587
          },
          "entityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of returned entity. Undefined = 0, Document = 1, DocumentPayments = 2, ReceivedTransactions = 3",
            "format": "int32"
          },
          "results": {
            "$ref": "#/components/schemas/UploadedDocumentHeaderObjectResults"
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status of the entire request. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 200
          },
          "apiUrl": {
            "type": "string",
            "description": "OpenApi GET url. {id} must by replaced by id of created document.",
            "nullable": true,
            "example": "http://example/endpoint/{id}"
          },
          "requestId": {
            "type": "string",
            "description": "Request id, used to pair with sent data.",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Payload example."
      },
      "DocumentDiscount": {
        "type": "object",
        "properties": {
          "discountPercent": {
            "type": "number",
            "description": "Discount percent.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "discountTotalPrice": {
            "type": "number",
            "description": "Discount value without VAT.",
            "format": "double",
            "example": 18
          },
          "discountTotalPriceInclVat": {
            "type": "number",
            "description": "Discount value including VAT.",
            "format": "double",
            "example": 21.6
          }
        },
        "additionalProperties": false,
        "description": "Document discount properties."
      },
      "DocumentItem": {
        "required": [
          "amount",
          "totalPriceInclVat"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "Item name - Názov položky.",
            "nullable": true,
            "example": "Položka na doklade"
          },
          "description": {
            "maxLength": 4000,
            "type": "string",
            "description": "Item description - Popis položky.",
            "nullable": true,
            "example": "Popis položky"
          },
          "amount": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Quantity - Množstvo.",
            "format": "decimal(15,6)",
            "example": 1
          },
          "measureUnit": {
            "maxLength": 50,
            "type": "string",
            "description": "Measure unit - Merná jednotka (MJ).",
            "nullable": true,
            "example": "ks"
          },
          "vatRate": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "VAT rate. Omitted or null in case of non VAT payer.",
            "format": "decimal(2,2)",
            "nullable": true,
            "example": 0
          },
          "discountPercent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "Discount percent. Discount values will be calculated on server side - Zľava na položku v percentách.",
            "format": "double",
            "nullable": true,
            "example": 10
          },
          "totalPriceInclVat": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Total price including VAT. Unit price will be calculated using amount - Suma celkom s DPH.",
            "format": "decimal(15,6)",
            "example": 120
          },
          "discountName": {
            "maxLength": 255,
            "type": "string",
            "description": "Discount name - Názov zľavy na položku.",
            "nullable": true,
            "example": "Názov zľavy na položku"
          },
          "itemCode": {
            "maxLength": 25,
            "type": "string",
            "description": "Item code - Kód položky.",
            "nullable": true,
            "example": "Kód položky"
          },
          "warehouseCode": {
            "maxLength": 3,
            "type": "string",
            "description": "Warehouse code - Kód skladu.",
            "nullable": true,
            "example": "S01"
          },
          "eanCode": {
            "maxLength": 48,
            "type": "string",
            "description": "EAN code - EAN kód.",
            "nullable": true,
            "example": "EAN kód položky"
          },
          "stockItemType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Stock item type - Typ skladovej položky. Required when Kros.Esw.BulkImportProcessing.Domain.DocumentItem.WarehouseCode is set. NonStock = 0, Stock = 1, Service = 2",
            "format": "int32",
            "example": 1
          }
        },
        "additionalProperties": false,
        "description": "Document item properties."
      },
      "DocumentItemResponse": {
        "type": "object",
        "properties": {
          "ordinal": {
            "type": "integer",
            "description": "Item ordinal number.",
            "format": "int32",
            "example": 1
          },
          "name": {
            "type": "string",
            "description": "Item name.",
            "nullable": true,
            "example": "Položka na doklade"
          },
          "description": {
            "type": "string",
            "description": "Item description.",
            "nullable": true,
            "example": "Popis položky"
          },
          "amount": {
            "type": "number",
            "description": "Quantity.",
            "format": "double",
            "example": 1
          },
          "measureUnit": {
            "type": "string",
            "description": "Measure unit.",
            "nullable": true,
            "example": "ks"
          },
          "baseUnitPriceBeforeDiscount": {
            "type": "number",
            "description": "Price of base measure unit.",
            "format": "double",
            "nullable": true,
            "example": 100
          },
          "baseUnitPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Price including VAT of base measure unit.",
            "format": "double",
            "nullable": true,
            "example": 120
          },
          "vatRate": {
            "type": "number",
            "description": "VAT rate.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "prices": {
            "$ref": "#/components/schemas/ItemPrices"
          },
          "discount": {
            "$ref": "#/components/schemas/ItemDiscount"
          },
          "itemCode": {
            "type": "string",
            "description": "Item code.",
            "nullable": true,
            "example": "Kód položky"
          },
          "stockItemType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of stock item. NonStock = 0, Stock = 1, Service = 2",
            "format": "int32",
            "example": 1
          },
          "warehouseCode": {
            "type": "string",
            "description": "Code of warehouse.",
            "nullable": true,
            "example": "S01"
          },
          "warehouseId": {
            "type": "integer",
            "description": "Warehouse id.",
            "format": "int64",
            "nullable": true,
            "example": 123
          },
          "eanCode": {
            "type": "string",
            "description": "EAN code.",
            "nullable": true,
            "example": "EAN kód položky"
          }
        },
        "additionalProperties": false,
        "description": "DocumentItemResponse."
      },
      "DuplicateRequestResult": {
        "type": "object",
        "properties": {
          "isDuplicateRequest": {
            "type": "boolean",
            "description": "Is duplicate request.",
            "example": true
          },
          "retryAfter": {
            "type": "integer",
            "description": "The number of seconds to wait before executing the same request so that it is not evaluated as a duplicate.",
            "format": "int32",
            "example": 37
          },
          "requestId": {
            "type": "string",
            "description": "Request id.",
            "format": "uuid"
          }
        },
        "additionalProperties": false,
        "description": "Duplicate request result."
      },
      "ExpenseResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Document identifier (MyDocuments documents are keyed by Guid).",
            "format": "uuid"
          },
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21
            ],
            "type": "integer",
            "description": "Expense document type discriminator. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10, Receipt = 11, NonAccountingDocument = 12, InternalDocument = 13, BankNotification = 14, ReceivedProformaInvoice = 15, CreditNote = 16, ReceivedCreditNote = 17, DebitNote = 18, ReceivedDebitNote = 19, Cancellation = 20, ReceivedCancellation = 21",
            "format": "int32"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          },
          "documentNumber": {
            "type": "string",
            "description": "The document number.",
            "nullable": true
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "deliveryDate": {
            "type": "string",
            "description": "Delivery date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "receivedDate": {
            "type": "string",
            "description": "Received date (dátum prijatia).",
            "format": "date-time",
            "nullable": true
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Created timestamp.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Last modified timestamp (the incremental-sync key).",
            "format": "date-time"
          },
          "paymentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              -1
            ],
            "type": "integer",
            "description": "Payment status. NotPaid = 0, FullyPaid = 1, OverPaid = 2, PartiallyPaid = 3, Undefined = -1",
            "format": "int32"
          },
          "paymentType": {
            "type": "string",
            "description": "Payment type.",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "accountingTransferStatus": {
            "type": "integer",
            "description": "Accounting transfer status.",
            "format": "int32",
            "nullable": true
          },
          "hasAttachments": {
            "type": "boolean",
            "description": "Whether the document has attachments."
          },
          "duplicationType": {
            "type": "integer",
            "description": "Suspected duplicate flag.",
            "format": "int32",
            "nullable": true
          },
          "syntheticAccount": {
            "type": "string",
            "description": "Document-level synthetic account.",
            "nullable": true
          },
          "nonTaxSyntheticAccount": {
            "type": "string",
            "description": "Document-level non-tax synthetic account.",
            "nullable": true
          },
          "analyticalAccount": {
            "type": "string",
            "description": "Document-level analytical account.",
            "nullable": true
          },
          "nonTaxAnalyticalAccount": {
            "type": "string",
            "description": "Document-level non-tax analytical account.",
            "nullable": true
          },
          "descriptionAccounting": {
            "type": "string",
            "description": "Document-level accounting description / text.",
            "nullable": true
          },
          "isLumpSumExpense": {
            "type": "boolean",
            "description": "Whether the document is a lump-sum expense."
          },
          "isVatSplitApplied": {
            "type": "boolean",
            "description": "Whether the 50/50 VAT split is applied at document level."
          },
          "vatSplitSyntheticAccount": {
            "type": "string",
            "description": "Synthetic account for the non-deductible portion of a 50/50 VAT split.",
            "nullable": true
          },
          "vatSplitAnalyticalAccount": {
            "type": "string",
            "description": "Analytical account for the non-deductible portion of a 50/50 VAT split.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Shared, flat response for every expense (incoming) document type.\r\nOn an expense the counterparty is the supplier, so Kros.Esw.OpenApi.Base.Domain.Documents.Responses.Expenses.ExpenseResponse.Partner is the supplier —\r\nconsistent with the sales API vocabulary."
      },
      "ExpenseResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ExpenseResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ExpenseResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExpenseResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "FinancialAccountCreatedResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "FinancialAccountResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Identifier of the account - Identifikátor účtu.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Custom bank account name - Vlastný názov účtu.",
            "nullable": true
          },
          "iban": {
            "type": "string",
            "description": "IBAN.",
            "nullable": true
          },
          "swift": {
            "type": "string",
            "description": "Swift.",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "description": "Currency - Mena.",
            "nullable": true
          },
          "isMain": {
            "type": "boolean",
            "description": "Is account main - Príznak či je účet vedený ako predvolený."
          },
          "accountType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of the account - Typ účtu. Undefined = 0, BankAccount = 1, CashAccount = 2, Paywall = 3",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Response for a financial account."
      },
      "FinancialAccountResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FinancialAccountResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "FinancialTransactionCallbackPayload": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "integer",
            "description": "Id of company.",
            "format": "int64",
            "example": 5587
          },
          "entityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of returned entity. Undefined = 0, Document = 1, DocumentPayments = 2, ReceivedTransactions = 3",
            "format": "int32"
          },
          "results": {
            "$ref": "#/components/schemas/UploadedTransactionUploadedPaymentDocumentResults"
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status of the entire request. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 200
          },
          "requestId": {
            "type": "string",
            "description": "Request id, used to pair with sent data.",
            "format": "uuid",
            "nullable": true
          },
          "apiUrl": {
            "type": "string",
            "description": "OpenApi GET url. {id} must by replaced by id of created payment.",
            "nullable": true,
            "example": ""
          }
        },
        "additionalProperties": false,
        "description": "Payload example - related entities are always empty."
      },
      "FiscalAddress": {
        "type": "object",
        "properties": {
          "businessName": {
            "maxLength": 255,
            "type": "string",
            "description": "Company name - Názov firmy - fakturačná adresa partnera.",
            "nullable": true,
            "example": "Názov firmy"
          },
          "contactName": {
            "maxLength": 100,
            "type": "string",
            "description": "Contact person name - Kontaktná osoba - fakturačná adresa partnera.",
            "nullable": true,
            "example": "Kontaktná osoba"
          },
          "street": {
            "maxLength": 255,
            "type": "string",
            "description": "Street - Ulica a číslo - fakturačná adresa partnera.",
            "nullable": true,
            "example": "Ulica 456"
          },
          "postCode": {
            "maxLength": 20,
            "type": "string",
            "description": "Postal code - PSČ - fakturačná adresa partnera.",
            "nullable": true,
            "example": "01001"
          },
          "city": {
            "maxLength": 255,
            "type": "string",
            "description": "City - Mesto / Obec - fakturačná adresa partnera.",
            "nullable": true,
            "example": "Mesto"
          },
          "country": {
            "maxLength": 255,
            "type": "string",
            "description": "Country - Krajina - fakturačná adresa partnera.",
            "nullable": true,
            "example": "Krajina"
          }
        },
        "additionalProperties": false,
        "description": "Fiscal address - Fakturačná adresa"
      },
      "Invoice": {
        "required": [
          "issueDate",
          "vatPayerType"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItem"
            },
            "description": "Document items - Položky dokladu.",
            "nullable": true
          },
          "internalNote": {
            "maxLength": 300,
            "type": "string",
            "description": "Note hidden on printed document - Interná poznámka.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "maxLength": 255,
            "type": "string",
            "description": "Note showing on printed document - Poznámka pre tlač.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Supplier vat payer type - Typ platiteľa DPH. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use §7/7a for document. Omitted, false or null in case when VatPayer type other than 2. - Použitie paragrafu §7/7a.",
            "nullable": true,
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Language culture of document. Supported values sk-SK, en-GB, de-DE. If omitted or null sk-SK wil be used.\r\nBased on RFC 5646, https://datatracker.ietf.org/doc/html/rfc5646 - Jazyk dokladu.",
            "nullable": true,
            "example": "sk-SK"
          },
          "openingText": {
            "type": "string",
            "description": "Opening text, displayed above items - Úvodný text.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Closing text, displayed at the end of document - Záverečný text.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "maxLength": 255,
            "type": "string",
            "description": "Company registration court text - Firma zapísaná v registri.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC) - Dátum splatnosti.",
            "format": "date",
            "nullable": true
          },
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Document currency. If currency not filled, your company default currency will be used - Mena.",
            "nullable": true,
            "example": "EUR"
          },
          "exchangeRate": {
            "minimum": 0,
            "type": "number",
            "description": "Exchange rate between currency and EUR. Max 6 decimal places - Kurz.",
            "format": "double",
            "example": 1
          },
          "discountPercent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "Discount percent. Used for calculating discount only if filled with value and DiscountTotalPriceInclVat is 0, null or\r\nomitted - Zľava za doklad v percentách.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "discountTotalPriceInclVat": {
            "minimum": 0,
            "type": "number",
            "description": "Discount value including VAT – Výška zľavy za doklad s DPH.",
            "format": "double",
            "nullable": true,
            "example": 0
          },
          "tags": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of tags assigned to document.  Max 30 tags can be assigned to one document.\r\nIf Tag already exists, it will be used, otherwise new Tag will be created.\r\nWhen pairing tag to existing, case is not important.\r\nIf Tags is ommitted or null, existing value of tags will be preserved.\r\n<example>['Stredisko1', 'Dôležité']</example>",
            "nullable": true
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC) - Dátum vystavenia.",
            "format": "date"
          },
          "orderNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "Order number related to invoice - Číslo objednávky.",
            "nullable": true,
            "example": "123456789"
          },
          "paymentType": {
            "maxLength": 30,
            "type": "string",
            "description": "Payment type - Spôsob úhrady.",
            "nullable": true,
            "example": "Bankový prevod"
          },
          "variableSymbol": {
            "maxLength": 100,
            "type": "string",
            "description": "Variable symbol. If null, DocumentNumber will be used - Variabilný symbol.",
            "nullable": true,
            "example": ""
          },
          "bankAccount": {
            "$ref": "#/components/schemas/DocumentBankAccount"
          },
          "deliveryDate": {
            "type": "string",
            "description": "Delivery date (UTC) - Dátum dodania.",
            "format": "date",
            "nullable": true
          },
          "advancePaymentDeduction": {
            "type": "number",
            "description": "Deduction of advanced payment - Odpočet zálohy.",
            "format": "double",
            "example": 0
          },
          "numberingSequence": {
            "maxLength": 5,
            "type": "string",
            "description": "The numbering sequence code - Kód číselného radu.",
            "nullable": true,
            "example": "OF"
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the invoice - Číslo faktúry.",
            "nullable": true,
            "example": ""
          },
          "invoiceType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Invoice type - Typ faktúry. Invoice = 0, CreditNote = 1, InvoiceForPayment = 2, DebitNote = 3",
            "format": "int32",
            "example": 0
          },
          "creditedInvoiceNumber": {
            "type": "string",
            "description": "Number of invoice the credit note or debit note is assigned to.\r\nCan be filled only if InvoiceType is CreditNote or DebitNote. – Číslo faktúry na dobropise/ťarchopise.",
            "nullable": true,
            "example": ""
          },
          "mandatoryText": {
            "maxLength": 250,
            "type": "string",
            "description": "Mandatory text - Povinný text.",
            "nullable": true,
            "example": "Povinný text."
          },
          "mandatoryTextType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12
            ],
            "type": "integer",
            "description": "Mandatory text type - Typ povinného textu. Undefined = 0, ExemptFromTax = 1, TaxLiabilityTransfer = 2, OutsideVatScope = 3, DepositPackaging = 4, TransitoryItem = 5, MarginTravelAgency = 6, MarginUsedGoods = 7, MarginArtworks = 8, MarginCollectibles = 9, ReverseChargeTriangularTrade = 10, IntraCommunitySupply = 11, Export = 12",
            "format": "int32",
            "example": 0
          },
          "ossTaxState": {
            "enum": [
              0,
              1
            ],
            "type": "integer",
            "description": "OssTaxState can be set to Registered only if vatPayerType == Payer(1),\r\npartner vatId is empty and partner country is from EU or Northern Ireland. - Osobitná úprava dane OSS. NonRegistered = 0, Registered = 1",
            "format": "int32",
            "example": 0
          },
          "customFields": {
            "maxItems": 4,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomField"
            },
            "description": "Custom fields - Vlastné polia.",
            "nullable": true
          },
          "accountingDetails": {
            "$ref": "#/components/schemas/AccountingDetails"
          },
          "isPaymentBasedVatRegime": {
            "type": "boolean",
            "description": "Indicates whether the document is subject to the § 68d payment-based VAT regime. - Osobitná úprava uplatňovania DPH na základe prijatia platby podľa § 68d.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Invoice."
      },
      "InvoiceApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/Invoice"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "InvoiceListApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Invoice"
            },
            "description": "Data object of response."
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "InvoiceResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document Id.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItemResponse"
            },
            "description": "Document items.",
            "nullable": true
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          },
          "discount": {
            "$ref": "#/components/schemas/DocumentDiscount"
          },
          "documentNumber": {
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "202206001"
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "OF"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of vat payer. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "openingText": {
            "type": "string",
            "description": "Custom text  shown in the front of document.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Custom text shown in the end of document.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "type": "string",
            "description": "Company registration court text.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use of §7/7a.",
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Document culture.",
            "nullable": true,
            "example": "sk-SK"
          },
          "internalNote": {
            "type": "string",
            "description": "Note hidden on printed document.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "type": "string",
            "description": "Note showing on printed document.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "pdfReportLink": {
            "type": "string",
            "description": "Link to retrieve pdf report.",
            "nullable": true,
            "example": "https:/open-api-gateway/received-orders/1/reports/1"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Date when document was created.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Document last modified timestamp.",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of payments.",
            "format": "double"
          },
          "countOfPayments": {
            "type": "integer",
            "description": "Count of payments.",
            "format": "int32"
          },
          "paymentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              -1
            ],
            "type": "integer",
            "description": "Payment status. NotPaid = 0, FullyPaid = 1, OverPaid = 2, PartiallyPaid = 3, Undefined = -1",
            "format": "int32",
            "example": 0
          },
          "orderNumber": {
            "type": "string",
            "description": "Order number.",
            "nullable": true
          },
          "bankAccount": {
            "$ref": "#/components/schemas/DocumentBankAccount"
          },
          "variableSymbol": {
            "type": "string",
            "description": "Variable symbol.",
            "nullable": true,
            "example": "12345"
          },
          "vatBreakdowns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VatBreakdown"
            },
            "description": "VAT breakdowns.",
            "nullable": true
          },
          "sentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9
            ],
            "type": "integer",
            "description": "Invoice status related to sending. Default = 0, SentToCustomer = 1, SeenByCustomer = 2, ApprovedByRecipient = 3, EInvoiceNotSent = 4, EInvoiceSending = 5, EInvoiceSendFailed = 6, EInvoiceSentToPeppol = 7, EInvoiceSeenByRecipient = 8, EInvoiceApprovedByRecipient = 9",
            "format": "int32",
            "example": 1
          },
          "paymentType": {
            "type": "string",
            "description": "Payment type.",
            "nullable": true,
            "example": "Bank transfer."
          },
          "sumForPayment": {
            "type": "number",
            "description": "Sum for payment.",
            "format": "double",
            "example": 100
          },
          "advancePaymentDeduction": {
            "type": "number",
            "description": "Advanced payment type deduction.",
            "format": "double",
            "example": 10
          },
          "invoiceType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of invoice. Invoice = 0, CreditNote = 1, InvoiceForPayment = 2, DebitNote = 3",
            "format": "int32",
            "example": 0
          },
          "creditedInvoiceNumber": {
            "type": "string",
            "description": "Number of invoice the credit note or debit note is assigned to.",
            "nullable": true,
            "example": "202206006"
          },
          "mandatoryText": {
            "type": "string",
            "description": "Mandatory text.",
            "nullable": true,
            "example": "Povinný text."
          },
          "mandatoryTextType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12
            ],
            "type": "integer",
            "description": "Type of mandatory text. Undefined = 0, ExemptFromTax = 1, TaxLiabilityTransfer = 2, OutsideVatScope = 3, DepositPackaging = 4, TransitoryItem = 5, MarginTravelAgency = 6, MarginUsedGoods = 7, MarginArtworks = 8, MarginCollectibles = 9, ReverseChargeTriangularTrade = 10, IntraCommunitySupply = 11, Export = 12",
            "format": "int32",
            "example": 0
          },
          "ossTaxState": {
            "enum": [
              0,
              1
            ],
            "type": "integer",
            "description": "OSS tax state. NonRegistered = 0, Registered = 1",
            "format": "int32",
            "example": 0
          },
          "reminderStatus": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Reminder status. Default = 0, SentToCustomer = 1, SeenByCustomer = 2",
            "format": "int32",
            "example": 0
          },
          "reminderCount": {
            "type": "integer",
            "description": "Reminder count.",
            "format": "int32",
            "example": 0
          },
          "deliveryDate": {
            "type": "string",
            "description": "Delivery date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "customFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomField"
            },
            "description": "Custom fields.",
            "nullable": true
          },
          "accountingDetails": {
            "$ref": "#/components/schemas/AccountingDetails"
          },
          "paymentDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentDetail"
            },
            "description": "Payment details.",
            "nullable": true
          },
          "linkedDocuments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LinkedDocument"
            },
            "description": "Linked documents.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Get Invoice by Id."
      },
      "InvoiceResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/InvoiceResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "InvoiceResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InvoiceResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ItemDiscount": {
        "type": "object",
        "properties": {
          "discountName": {
            "type": "string",
            "description": "Discount name.",
            "nullable": true,
            "example": "Názov zľavy na položku"
          },
          "discountPercent": {
            "type": "number",
            "description": "Discount percent.",
            "format": "double",
            "example": 10
          },
          "discountUnitPrice": {
            "type": "number",
            "description": "Discount unit price.",
            "format": "double",
            "example": 10
          },
          "discountUnitPriceInclVat": {
            "type": "number",
            "description": "Discount unit price including VAT.",
            "format": "double",
            "example": 12
          },
          "discountTotalPrice": {
            "type": "number",
            "description": "Discount total price. Discount values will be calculated on server side.",
            "format": "double",
            "example": 10
          },
          "discountTotalPriceInclVat": {
            "type": "number",
            "description": "Discount total price including VAT.",
            "format": "double",
            "example": 12
          }
        },
        "additionalProperties": false,
        "description": "Item discount response."
      },
      "ItemDocumentPrice": {
        "type": "object",
        "properties": {
          "unitPrice": {
            "type": "number",
            "description": "Unit price.",
            "format": "double",
            "example": 90
          },
          "unitPriceInclVat": {
            "type": "number",
            "description": "Unit price including VAT.",
            "format": "double",
            "example": 108
          },
          "totalPrice": {
            "type": "number",
            "description": "Total price.",
            "format": "double",
            "example": 90
          },
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT.",
            "format": "double",
            "example": 108
          },
          "unitPriceBeforeDiscount": {
            "type": "number",
            "description": "Unit price before discount.",
            "format": "double",
            "example": 100
          },
          "unitPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Unit price including VAT before discount.",
            "format": "double",
            "example": 120
          },
          "totalPriceBeforeDiscount": {
            "type": "number",
            "description": "Total price before discount.",
            "format": "double",
            "example": 100
          },
          "totalPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Total price including VAT before discount.",
            "format": "double",
            "example": 120
          }
        },
        "additionalProperties": false,
        "description": "Price."
      },
      "ItemLegislativePrice": {
        "type": "object",
        "properties": {
          "unitPriceBeforeDiscount": {
            "type": "number",
            "description": "Unit price before discount.",
            "format": "double",
            "example": 100
          },
          "unitPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Unit price including VAT before discount.",
            "format": "double",
            "example": 120
          },
          "totalPriceBeforeDiscount": {
            "type": "number",
            "description": "Total price before discount.",
            "format": "double",
            "example": 100
          },
          "totalPriceInclVatBeforeDiscount": {
            "type": "number",
            "description": "Total price including VAT before discount.",
            "format": "double",
            "example": 120
          }
        },
        "additionalProperties": false,
        "description": "Price."
      },
      "ItemPrices": {
        "type": "object",
        "properties": {
          "documentPrices": {
            "$ref": "#/components/schemas/ItemDocumentPrice"
          },
          "legislativePrices": {
            "$ref": "#/components/schemas/ItemLegislativePrice"
          }
        },
        "additionalProperties": false,
        "description": "Prices."
      },
      "LinkedDocument": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "integer",
            "description": "Linked document id.",
            "format": "int64",
            "example": 25489
          },
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21
            ],
            "type": "integer",
            "description": "Linked document type. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10, Receipt = 11, NonAccountingDocument = 12, InternalDocument = 13, BankNotification = 14, ReceivedProformaInvoice = 15, CreditNote = 16, ReceivedCreditNote = 17, DebitNote = 18, ReceivedDebitNote = 19, Cancellation = 20, ReceivedCancellation = 21",
            "format": "int32",
            "example": 4
          },
          "numberingSequence": {
            "type": "string",
            "description": "Number sequence code.",
            "nullable": true,
            "example": "DL"
          },
          "documentNumber": {
            "type": "string",
            "description": "Document number.",
            "nullable": true,
            "example": "20240625"
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date.",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Linked document."
      },
      "Movement": {
        "required": [
          "warehouseCode"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MovementItem"
            },
            "description": "Movement items - Položky dokladu.",
            "nullable": true
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the movement - Číslo skladového pohybu.",
            "nullable": true,
            "example": ""
          },
          "internalNote": {
            "maxLength": 300,
            "type": "string",
            "description": "Note hidden on printed document - Interná poznámka.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "maxLength": 255,
            "type": "string",
            "description": "Note showing on printed document - Poznámka pre tlač.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "warehouseCode": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Target warehouse code - Kód skladu.\r\nIf provided, resolves to WarehouseId.\r\nIf both WarehouseId and WarehouseCode are provided, they must match.",
            "example": "S01"
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC) - Dátum vystavenia.",
            "format": "date",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Movement (receiving note or shipping note) - Skladový pohyb (príjemka alebo výdajka)."
      },
      "MovementApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/Movement"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "MovementCreatedResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Created movement identifier.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "External identifier echoed from the request.",
            "nullable": true
          },
          "documentNumber": {
            "type": "string",
            "description": "Assigned document number.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Response returned after successfully creating a warehouse movement."
      },
      "MovementItem": {
        "required": [
          "amount",
          "totalPriceInclVat"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "Item name - Názov položky.",
            "nullable": true,
            "example": "Položka na doklade"
          },
          "description": {
            "maxLength": 4000,
            "type": "string",
            "description": "Item description - Popis položky.",
            "nullable": true,
            "example": "Popis položky"
          },
          "amount": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Quantity - Množstvo.",
            "format": "decimal(15,6)",
            "example": 1
          },
          "measureUnit": {
            "maxLength": 50,
            "type": "string",
            "description": "Measure unit - Merná jednotka (MJ).",
            "nullable": true,
            "example": "ks"
          },
          "vatRate": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "VAT rate. Omitted or null in case of non VAT payer.",
            "format": "decimal(2,2)",
            "nullable": true,
            "example": 0
          },
          "totalPriceInclVat": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Total price including VAT. Unit price will be calculated using amount - Suma celkom s DPH.",
            "format": "decimal(15,6)",
            "example": 120
          },
          "itemCode": {
            "maxLength": 25,
            "type": "string",
            "description": "Item code - Kód položky.",
            "nullable": true,
            "example": "Kód položky"
          },
          "eanCode": {
            "maxLength": 48,
            "type": "string",
            "description": "EAN code - EAN kód.",
            "nullable": true,
            "example": "EAN kód položky"
          }
        },
        "additionalProperties": false,
        "description": "Movement item properties."
      },
      "MovementResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document Id.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItemResponse"
            },
            "description": "Document items.",
            "nullable": true
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          },
          "discount": {
            "$ref": "#/components/schemas/DocumentDiscount"
          },
          "documentNumber": {
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "202206001"
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "OF"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of vat payer. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "openingText": {
            "type": "string",
            "description": "Custom text  shown in the front of document.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Custom text shown in the end of document.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "type": "string",
            "description": "Company registration court text.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use of §7/7a.",
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Document culture.",
            "nullable": true,
            "example": "sk-SK"
          },
          "internalNote": {
            "type": "string",
            "description": "Note hidden on printed document.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "type": "string",
            "description": "Note showing on printed document.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "pdfReportLink": {
            "type": "string",
            "description": "Link to retrieve pdf report.",
            "nullable": true,
            "example": "https:/open-api-gateway/received-orders/1/reports/1"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Date when document was created.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Document last modified timestamp.",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "warehouseId": {
            "type": "integer",
            "description": "Warehouse identifier.",
            "format": "int64",
            "example": 42
          },
          "warehouseCode": {
            "type": "string",
            "description": "Warehouse code.",
            "nullable": true,
            "example": "WH001"
          },
          "totalWarehousePrice": {
            "type": "number",
            "description": "Total warehouse price of all items.",
            "format": "double",
            "example": 1500.5
          }
        },
        "additionalProperties": false,
        "description": "Get Movement by Id."
      },
      "MovementResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/MovementResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "MovementResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MovementResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "MyCompany": {
        "required": [
          "address"
        ],
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/MyCompanyAddress"
          },
          "registrationId": {
            "maxLength": 20,
            "type": "string",
            "description": "Registration Id - IČO.",
            "nullable": true,
            "example": "12345678"
          },
          "taxId": {
            "maxLength": 20,
            "type": "string",
            "description": "Tax Id - DIČ.",
            "nullable": true,
            "example": "2020123456"
          },
          "vatId": {
            "maxLength": 20,
            "type": "string",
            "description": "Vat Id - IČ DPH.",
            "nullable": true,
            "example": "SK2020123456"
          },
          "phoneNumber": {
            "maxLength": 40,
            "type": "string",
            "description": "Phone number - Telefón.",
            "nullable": true,
            "example": "0901 123 456"
          },
          "email": {
            "maxLength": 255,
            "type": "string",
            "description": "Email address - Email.",
            "nullable": true,
            "example": "mail@mail.sk"
          },
          "web": {
            "maxLength": 255,
            "type": "string",
            "description": "Website url - Webová adresa.",
            "nullable": true,
            "example": "www.kros.sk"
          }
        },
        "additionalProperties": false,
        "description": "My company detail."
      },
      "MyCompanyAddress": {
        "type": "object",
        "properties": {
          "businessName": {
            "maxLength": 255,
            "type": "string",
            "description": "Company name - Názov firmy - moja firma.",
            "nullable": true,
            "example": "Názov firmy"
          },
          "contactName": {
            "maxLength": 100,
            "type": "string",
            "description": "Contact person name - Kontaktná osoba - moja firma.",
            "nullable": true,
            "example": "Kontaktná osoba"
          },
          "street": {
            "maxLength": 255,
            "type": "string",
            "description": "Street - Ulica a číslo - moja firma.",
            "nullable": true,
            "example": "Ulica 456"
          },
          "postCode": {
            "maxLength": 20,
            "type": "string",
            "description": "Postal code - PSČ - moja firma.",
            "nullable": true,
            "example": "01001"
          },
          "city": {
            "maxLength": 255,
            "type": "string",
            "description": "City - Mesto / Obec - moja firma.",
            "nullable": true,
            "example": "Mesto"
          },
          "country": {
            "maxLength": 255,
            "type": "string",
            "description": "Country - Krajina - moja firma.",
            "nullable": true,
            "example": "Krajina"
          }
        },
        "additionalProperties": false,
        "description": "My Company address - Adresa mojej firmy"
      },
      "NumberingSequenceResponse": {
        "type": "object",
        "properties": {
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21
            ],
            "type": "integer",
            "description": "Document type. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10, Receipt = 11, NonAccountingDocument = 12, InternalDocument = 13, BankNotification = 14, ReceivedProformaInvoice = 15, CreditNote = 16, ReceivedCreditNote = 17, DebitNote = 18, ReceivedDebitNote = 19, Cancellation = 20, ReceivedCancellation = 21",
            "format": "int32",
            "example": 2
          },
          "name": {
            "type": "string",
            "description": "Name of sequence.",
            "nullable": true,
            "example": "Odoslané faktúry."
          },
          "sequenceCode": {
            "type": "string",
            "description": "Sequence code.",
            "nullable": true,
            "example": "OF"
          }
        },
        "additionalProperties": false,
        "description": "Response for single numbering sequence."
      },
      "NumberingSequenceResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NumberingSequenceResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "Partner": {
        "required": [
          "address"
        ],
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/FiscalAddress"
          },
          "registrationId": {
            "maxLength": 20,
            "type": "string",
            "description": "Registration Id - IČO.",
            "nullable": true,
            "example": "12345678"
          },
          "taxId": {
            "maxLength": 20,
            "type": "string",
            "description": "Tax Id - DIČ.",
            "nullable": true,
            "example": "2020123456"
          },
          "vatId": {
            "maxLength": 20,
            "type": "string",
            "description": "Vat Id - IČ DPH.",
            "nullable": true,
            "example": "SK2020123456"
          },
          "phoneNumber": {
            "maxLength": 40,
            "type": "string",
            "description": "Phone number - Telefón.",
            "nullable": true,
            "example": "0901 123 456"
          },
          "email": {
            "maxLength": 255,
            "type": "string",
            "description": "Email address - Email.",
            "nullable": true,
            "example": "mail@mail.sk"
          },
          "postalAddress": {
            "$ref": "#/components/schemas/PostalAddress"
          }
        },
        "additionalProperties": false,
        "description": "Partner detail."
      },
      "Payment": {
        "required": [
          "dateOfPayment",
          "sumOfPayment"
        ],
        "type": "object",
        "properties": {
          "dateOfPayment": {
            "type": "string",
            "description": "Date of payment (UTC) - Dátum úhrady.",
            "format": "date",
            "example": "2026-02-03"
          },
          "sumOfPayment": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Sum of payment - Suma úhrady.",
            "format": "decimal(15,6)",
            "example": 120.26
          },
          "originalSumOfPayment": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Original sum of payment - Originálna suma v mene úhrady.\r\nIf SumOfPayment is in a different currency than currency of account Or if originalCurrency is provided, this value must be provided.\r\nAk je platba v inej mene ako je mena účtu alebo je zadaná originálna mena, tak originálna suma musí byť zadaná.",
            "format": "decimal(15,6)",
            "example": 2924.7
          },
          "originalCurrency": {
            "maxLength": 3,
            "type": "string",
            "description": "Original currency of Payment - Mena úhrady.\r\nIf OriginalSumOfPayment is provided, this value must also be provided.\r\nAk je zadaná OriginalSumOfPayment, tak OriginalCurrency musí byť zadaná tiež.",
            "nullable": true,
            "example": "CZK"
          },
          "variableSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Variable symbol - Variabilný symbol.",
            "nullable": true,
            "example": "20260069"
          },
          "paymentReference": {
            "maxLength": 255,
            "type": "string",
            "description": "Payment reference/End to end Id - Referencia platby.",
            "nullable": true,
            "example": "MY_REF_2002"
          },
          "constantSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Constant symbol - Konštantný symbol.",
            "nullable": true,
            "example": "0308"
          },
          "specificSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Specific symbol - Špecifický symbol.",
            "nullable": true,
            "example": "8796589652"
          },
          "remittanceInformation": {
            "maxLength": 255,
            "type": "string",
            "description": "Remittance information - Správa pre prijímateľa.",
            "nullable": true,
            "example": "Payment for rent - February 2026"
          },
          "partnerName": {
            "maxLength": 255,
            "type": "string",
            "description": "Partner name - Názov partnera.",
            "nullable": true,
            "example": "Partner, s.r.o."
          },
          "note": {
            "maxLength": 300,
            "type": "string",
            "description": "Note - poznámka.",
            "nullable": true,
            "example": "Some note"
          },
          "accountId": {
            "type": "integer",
            "description": "ID of account in our system - ID založeného účtu.\r\nId can be retrieved from the GET /api / payments /accounts endpoint.\r\nIf provided, payment will be added as a transaction and could be later paired with the document, even if the document\r\ndoes not exist yet or fails to be paired automatically.",
            "format": "int64",
            "nullable": true,
            "example": 123
          },
          "paymentType": {
            "enum": [
              1,
              2
            ],
            "type": "integer",
            "description": "Type of the payment, default is bank transfer - Typ platby, default je bankový prevod. BankTransfer = 1, CardPayment = 2",
            "format": "int32"
          },
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "External id for third party systems - Externé ID pre systémy tretích strán.",
            "nullable": true,
            "example": "564654556"
          },
          "isWithoutDocument": {
            "type": "boolean",
            "description": "Indicates that this payment will never have an associated document - Platba bez dokladu.\r\nWhen true, the created transaction will be excluded from automatic document pairing.\r\nOnly applicable when AccountId is provided.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Payment properties."
      },
      "PaymentCallbackPayload": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "integer",
            "description": "Id of company.",
            "format": "int64",
            "example": 5587
          },
          "entityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of returned entity. Undefined = 0, Document = 1, DocumentPayments = 2, ReceivedTransactions = 3",
            "format": "int32"
          },
          "results": {
            "$ref": "#/components/schemas/UploadedPaymentUploadedPaymentDocumentResults"
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status of the entire request. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 200
          },
          "requestId": {
            "type": "string",
            "description": "Request id, used to pair with sent data.",
            "format": "uuid",
            "nullable": true
          },
          "apiUrl": {
            "type": "string",
            "description": "OpenApi GET url. {id} must by replaced by id of created payment.",
            "nullable": true,
            "example": ""
          }
        },
        "additionalProperties": false,
        "description": "Payload example."
      },
      "PaymentDetail": {
        "type": "object",
        "properties": {
          "sumOfPayment": {
            "type": "number",
            "description": "Sum of payment.",
            "format": "double",
            "example": 120.26
          },
          "dateOfPayment": {
            "type": "string",
            "description": "Date of payment (UTC).",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Payment detail."
      },
      "PaymentListApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Payment"
            },
            "description": "Data object of response."
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "PaymentMatchedDocument": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "integer",
            "description": "ID of document - Id dokladu.",
            "format": "int64",
            "nullable": true,
            "example": 123
          },
          "documentGuid": {
            "type": "string",
            "description": "Guid of document, applies only to expeness - Guid výdavkového dokladu.",
            "format": "uuid",
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document - Vaša identifikácia dokladu.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partnerName": {
            "type": "string",
            "description": "Partner.",
            "nullable": true
          },
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21
            ],
            "type": "integer",
            "description": "Document type - Typ dokladu. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10, Receipt = 11, NonAccountingDocument = 12, InternalDocument = 13, BankNotification = 14, ReceivedProformaInvoice = 15, CreditNote = 16, ReceivedCreditNote = 17, DebitNote = 18, ReceivedDebitNote = 19, Cancellation = 20, ReceivedCancellation = 21",
            "format": "int32",
            "example": 1
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the document - Číslo dokladu.",
            "nullable": true,
            "example": ""
          },
          "numberingSequence": {
            "maxLength": 5,
            "type": "string",
            "description": "The numbering sequence code - Kód číselného radu.",
            "nullable": true
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC) - Dátum splatnosti.",
            "format": "date",
            "nullable": true
          },
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT - Celková cena vrátane DPH.",
            "format": "double",
            "example": 123.32
          },
          "sumLeftToPay": {
            "type": "number",
            "description": "Sum left to pay - Suma k úhrade.",
            "format": "double",
            "example": 23.32
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of payments - Suma úhrad.",
            "format": "double",
            "example": 100
          }
        },
        "additionalProperties": false,
        "description": "Info about document matched with payment - Informácie o doklade spárovanom s platbou."
      },
      "Paywall": {
        "required": [
          "currency",
          "name"
        ],
        "type": "object",
        "properties": {
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Account Currency - Mena účtu.",
            "example": "EUR"
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Custom bank account name - Vlastný názov účtu.",
            "example": "Platobná brána."
          }
        },
        "additionalProperties": false,
        "description": "Paywall account properties."
      },
      "PaywallApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/Paywall"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "PollSubscriptionRequest": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "description": "The state provided during subscription creation.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Request model for polling subscription status."
      },
      "PollSubscriptionResponse": {
        "type": "object",
        "properties": {
          "status": {
            "enum": [
              "Pending",
              "Approved",
              "Denied",
              "Expired"
            ],
            "type": "string",
            "description": "Current status of the subscription. Pending = 0, Approved = 1, Denied = 2, Expired = 3"
          },
          "companies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CompanyTokenPair"
            },
            "description": "List of companies with their tokens (only populated when Status is Approved).",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Response model for polling subscription status."
      },
      "PollSubscriptionResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/PollSubscriptionResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "PostalAddress": {
        "type": "object",
        "properties": {
          "businessName": {
            "maxLength": 255,
            "type": "string",
            "description": "Company name - Názov firmy - poštová adresa partnera.",
            "nullable": true,
            "example": "Názov firmy"
          },
          "contactName": {
            "maxLength": 100,
            "type": "string",
            "description": "Contact person name - Kontaktná osoba - poštová adresa partnera.",
            "nullable": true,
            "example": "Kontaktná osoba"
          },
          "street": {
            "maxLength": 255,
            "type": "string",
            "description": "Street - Ulica a číslo - poštová adresa partnera.",
            "nullable": true,
            "example": "Ulica 456"
          },
          "postCode": {
            "maxLength": 20,
            "type": "string",
            "description": "Postal code - PSČ - poštová adresa partnera.",
            "nullable": true,
            "example": "01001"
          },
          "city": {
            "maxLength": 255,
            "type": "string",
            "description": "City - Mesto / Obec - poštová adresa partnera.",
            "nullable": true,
            "example": "Mesto"
          },
          "country": {
            "maxLength": 255,
            "type": "string",
            "description": "Country - Krajina - poštová adresa partnera.",
            "nullable": true,
            "example": "Krajina"
          }
        },
        "additionalProperties": false,
        "description": "Postal address - Poštová adresa"
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "ProcessedPayment": {
        "required": [
          "dateOfPayment",
          "sumOfPayment"
        ],
        "type": "object",
        "properties": {
          "dateOfPayment": {
            "type": "string",
            "description": "Date of payment (UTC) - Dátum úhrady.",
            "format": "date",
            "example": "2026-02-03"
          },
          "sumOfPayment": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Sum of payment - Suma úhrady.",
            "format": "decimal(15,6)",
            "example": 120.26
          },
          "originalSumOfPayment": {
            "maximum": 999999999,
            "minimum": -999999999,
            "type": "number",
            "description": "Original sum of payment - Originálna suma v mene úhrady.\r\nIf SumOfPayment is in a different currency than currency of account Or if originalCurrency is provided, this value must be provided.\r\nAk je platba v inej mene ako je mena účtu alebo je zadaná originálna mena, tak originálna suma musí byť zadaná.",
            "format": "decimal(15,6)",
            "example": 2924.7
          },
          "originalCurrency": {
            "maxLength": 3,
            "type": "string",
            "description": "Original currency of Payment - Mena úhrady.\r\nIf OriginalSumOfPayment is provided, this value must also be provided.\r\nAk je zadaná OriginalSumOfPayment, tak OriginalCurrency musí byť zadaná tiež.",
            "nullable": true,
            "example": "CZK"
          },
          "variableSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Variable symbol - Variabilný symbol.",
            "nullable": true,
            "example": "20260069"
          },
          "paymentReference": {
            "maxLength": 255,
            "type": "string",
            "description": "Payment reference/End to end Id - Referencia platby.",
            "nullable": true,
            "example": "MY_REF_2002"
          },
          "constantSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Constant symbol - Konštantný symbol.",
            "nullable": true,
            "example": "0308"
          },
          "specificSymbol": {
            "maxLength": 10,
            "type": "string",
            "description": "Specific symbol - Špecifický symbol.",
            "nullable": true,
            "example": "8796589652"
          },
          "remittanceInformation": {
            "maxLength": 255,
            "type": "string",
            "description": "Remittance information - Správa pre prijímateľa.",
            "nullable": true,
            "example": "Payment for rent - February 2026"
          },
          "partnerName": {
            "maxLength": 255,
            "type": "string",
            "description": "Partner name - Názov partnera.",
            "nullable": true,
            "example": "Partner, s.r.o."
          },
          "note": {
            "maxLength": 300,
            "type": "string",
            "description": "Note - poznámka.",
            "nullable": true,
            "example": "Some note"
          },
          "accountId": {
            "type": "integer",
            "description": "ID of account in our system - ID založeného účtu.\r\nId can be retrieved from the GET /api / payments /accounts endpoint.\r\nIf provided, payment will be added as a transaction and could be later paired with the document, even if the document\r\ndoes not exist yet or fails to be paired automatically.",
            "format": "int64",
            "nullable": true,
            "example": 123
          },
          "paymentType": {
            "enum": [
              1,
              2
            ],
            "type": "integer",
            "description": "Type of the payment, default is bank transfer - Typ platby, default je bankový prevod. BankTransfer = 1, CardPayment = 2",
            "format": "int32"
          },
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "External id for third party systems - Externé ID pre systémy tretích strán.",
            "nullable": true,
            "example": "564654556"
          },
          "isWithoutDocument": {
            "type": "boolean",
            "description": "Indicates that this payment will never have an associated document - Platba bez dokladu.\r\nWhen true, the created transaction will be excluded from automatic document pairing.\r\nOnly applicable when AccountId is provided.",
            "example": false
          },
          "id": {
            "type": "integer",
            "description": "Transaction id - ID transakcie.",
            "format": "int64",
            "example": 123
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Last modified timestamp (UTC) - Dátum a čas poslednej zmeny.",
            "format": "date-time",
            "example": "2026-02-03T10:15:30.000000+00:00"
          },
          "matchedDocuments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentMatchedDocument"
            },
            "description": "Matched documents for this payment. Can be empty if no document was matched. - Doklady spárované s touto platbou. Môže byť prázdny, ak nebol spárovay žiadny doklad.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Payment properties."
      },
      "ProcessedPaymentIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProcessedPayment"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ProformaInvoice": {
        "required": [
          "issueDate",
          "vatPayerType"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItem"
            },
            "description": "Document items - Položky dokladu.",
            "nullable": true
          },
          "internalNote": {
            "maxLength": 300,
            "type": "string",
            "description": "Note hidden on printed document - Interná poznámka.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "maxLength": 255,
            "type": "string",
            "description": "Note showing on printed document - Poznámka pre tlač.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Supplier vat payer type - Typ platiteľa DPH. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use §7/7a for document. Omitted, false or null in case when VatPayer type other than 2. - Použitie paragrafu §7/7a.",
            "nullable": true,
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Language culture of document. Supported values sk-SK, en-GB, de-DE. If omitted or null sk-SK wil be used.\r\nBased on RFC 5646, https://datatracker.ietf.org/doc/html/rfc5646 - Jazyk dokladu.",
            "nullable": true,
            "example": "sk-SK"
          },
          "openingText": {
            "type": "string",
            "description": "Opening text, displayed above items - Úvodný text.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Closing text, displayed at the end of document - Záverečný text.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "maxLength": 255,
            "type": "string",
            "description": "Company registration court text - Firma zapísaná v registri.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC) - Dátum splatnosti.",
            "format": "date",
            "nullable": true
          },
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Document currency. If currency not filled, your company default currency will be used - Mena.",
            "nullable": true,
            "example": "EUR"
          },
          "exchangeRate": {
            "minimum": 0,
            "type": "number",
            "description": "Exchange rate between currency and EUR. Max 6 decimal places - Kurz.",
            "format": "double",
            "example": 1
          },
          "discountPercent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "Discount percent. Used for calculating discount only if filled with value and DiscountTotalPriceInclVat is 0, null or\r\nomitted - Zľava za doklad v percentách.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "discountTotalPriceInclVat": {
            "minimum": 0,
            "type": "number",
            "description": "Discount value including VAT – Výška zľavy za doklad s DPH.",
            "format": "double",
            "nullable": true,
            "example": 0
          },
          "tags": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of tags assigned to document.  Max 30 tags can be assigned to one document.\r\nIf Tag already exists, it will be used, otherwise new Tag will be created.\r\nWhen pairing tag to existing, case is not important.\r\nIf Tags is ommitted or null, existing value of tags will be preserved.\r\n<example>['Stredisko1', 'Dôležité']</example>",
            "nullable": true
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC) - Dátum vystavenia.",
            "format": "date"
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the proforma invoice - Číslo preddavkovej faktúry.",
            "nullable": true,
            "example": ""
          },
          "orderNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "Order number related to invoice - Číslo objednávky.",
            "nullable": true,
            "example": "123456789"
          },
          "paymentType": {
            "maxLength": 30,
            "type": "string",
            "description": "Payment type - Spôsob úhrady.",
            "nullable": true,
            "example": "Bankový prevod"
          },
          "variableSymbol": {
            "maxLength": 100,
            "type": "string",
            "description": "Variable symbol. If null, DocumentNumber will be used - Variabilný symbol.",
            "nullable": true,
            "example": ""
          },
          "bankAccount": {
            "$ref": "#/components/schemas/DocumentBankAccount"
          },
          "numberingSequence": {
            "maxLength": 5,
            "type": "string",
            "description": "The numbering sequence code - Kód číselného radu.",
            "nullable": true,
            "example": "OPF"
          }
        },
        "additionalProperties": false,
        "description": "Invoice."
      },
      "ProformaInvoiceApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProformaInvoice"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ProformaInvoiceListApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProformaInvoice"
            },
            "description": "Data object of response."
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ProformaInvoiceResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document Id.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItemResponse"
            },
            "description": "Document items.",
            "nullable": true
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          },
          "discount": {
            "$ref": "#/components/schemas/DocumentDiscount"
          },
          "documentNumber": {
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "202206001"
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "OF"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of vat payer. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "openingText": {
            "type": "string",
            "description": "Custom text  shown in the front of document.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Custom text shown in the end of document.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "type": "string",
            "description": "Company registration court text.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use of §7/7a.",
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Document culture.",
            "nullable": true,
            "example": "sk-SK"
          },
          "internalNote": {
            "type": "string",
            "description": "Note hidden on printed document.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "type": "string",
            "description": "Note showing on printed document.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "pdfReportLink": {
            "type": "string",
            "description": "Link to retrieve pdf report.",
            "nullable": true,
            "example": "https:/open-api-gateway/received-orders/1/reports/1"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Date when document was created.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Document last modified timestamp.",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "issueDate": {
            "type": "string",
            "description": "Issue date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of payments.",
            "format": "double"
          },
          "countOfPayments": {
            "type": "integer",
            "description": "Count of payments.",
            "format": "int32"
          },
          "paymentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              -1
            ],
            "type": "integer",
            "description": "Payment status. NotPaid = 0, FullyPaid = 1, OverPaid = 2, PartiallyPaid = 3, Undefined = -1",
            "format": "int32",
            "example": 0
          },
          "orderNumber": {
            "type": "string",
            "description": "Order number.",
            "nullable": true
          },
          "bankAccount": {
            "$ref": "#/components/schemas/DocumentBankAccount"
          },
          "variableSymbol": {
            "type": "string",
            "description": "Variable symbol.",
            "nullable": true,
            "example": "12345"
          },
          "vatBreakdowns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VatBreakdown"
            },
            "description": "VAT breakdowns.",
            "nullable": true
          },
          "sentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9
            ],
            "type": "integer",
            "description": "Invoice status related to sending. Default = 0, SentToCustomer = 1, SeenByCustomer = 2, ApprovedByRecipient = 3, EInvoiceNotSent = 4, EInvoiceSending = 5, EInvoiceSendFailed = 6, EInvoiceSentToPeppol = 7, EInvoiceSeenByRecipient = 8, EInvoiceApprovedByRecipient = 9",
            "format": "int32",
            "example": 1
          },
          "paymentType": {
            "type": "string",
            "description": "Payment type.",
            "nullable": true,
            "example": "Bank transfer."
          },
          "paymentDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentDetail"
            },
            "description": "Payment details.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Get ProformaInvoice by Id."
      },
      "ProformaInvoiceResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProformaInvoiceResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ProformaInvoiceResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProformaInvoiceResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ReceivedOrder": {
        "required": [
          "receivedDate",
          "vatPayerType"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "maxLength": 255,
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItem"
            },
            "description": "Document items - Položky dokladu.",
            "nullable": true
          },
          "internalNote": {
            "maxLength": 300,
            "type": "string",
            "description": "Note hidden on printed document - Interná poznámka.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "maxLength": 255,
            "type": "string",
            "description": "Note showing on printed document - Poznámka pre tlač.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Supplier vat payer type - Typ platiteľa DPH. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use §7/7a for document. Omitted, false or null in case when VatPayer type other than 2. - Použitie paragrafu §7/7a.",
            "nullable": true,
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Language culture of document. Supported values sk-SK, en-GB, de-DE. If omitted or null sk-SK wil be used.\r\nBased on RFC 5646, https://datatracker.ietf.org/doc/html/rfc5646 - Jazyk dokladu.",
            "nullable": true,
            "example": "sk-SK"
          },
          "openingText": {
            "type": "string",
            "description": "Opening text, displayed above items - Úvodný text.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Closing text, displayed at the end of document - Záverečný text.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "maxLength": 255,
            "type": "string",
            "description": "Company registration court text - Firma zapísaná v registri.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC) - Termín.",
            "format": "date",
            "nullable": true
          },
          "currency": {
            "maxLength": 3,
            "minLength": 1,
            "type": "string",
            "description": "Document currency. If currency not filled, your company default currency will be used - Mena.",
            "nullable": true,
            "example": "EUR"
          },
          "exchangeRate": {
            "minimum": 0,
            "type": "number",
            "description": "Exchange rate between currency and EUR. Max 6 decimal places - Kurz.",
            "format": "double",
            "example": 1
          },
          "discountPercent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number",
            "description": "Discount percent. Used for calculating discount only if filled with value and DiscountTotalPriceInclVat is 0, null or\r\nomitted - Zľava za doklad v percentách.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "discountTotalPriceInclVat": {
            "minimum": 0,
            "type": "number",
            "description": "Discount value including VAT – Výška zľavy za doklad s DPH.",
            "format": "double",
            "nullable": true,
            "example": 0
          },
          "tags": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of tags assigned to document.  Max 30 tags can be assigned to one document.\r\nIf Tag already exists, it will be used, otherwise new Tag will be created.\r\nWhen pairing tag to existing, case is not important.\r\nIf Tags is ommitted or null, existing value of tags will be preserved.\r\n<example>['Stredisko1', 'Dôležité']</example>",
            "nullable": true
          },
          "receivedDate": {
            "type": "string",
            "description": "Received date of order (UTC) - Dátum prijatia.",
            "format": "date"
          },
          "deliveryDate": {
            "type": "string",
            "description": "Delivery date (UTC) - Dátum dodania.",
            "format": "date",
            "nullable": true
          },
          "numberingSequence": {
            "maxLength": 5,
            "type": "string",
            "description": "The numbering sequence code - Kód číselného radu.",
            "nullable": true,
            "example": "OD"
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the received order - Číslo objednávky.",
            "nullable": true,
            "example": ""
          },
          "invoiceNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of related invoice - Číslo faktúry.",
            "nullable": true,
            "example": "FA123456"
          },
          "externalOrderNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of related external order - Externé číslo objednávky.",
            "nullable": true,
            "example": "EXTO123456"
          },
          "paymentType": {
            "maxLength": 30,
            "type": "string",
            "description": "Payment type - Spôsob úhrady.",
            "nullable": true,
            "example": "Hotovosť"
          }
        },
        "additionalProperties": false,
        "description": "Received order."
      },
      "ReceivedOrderApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ReceivedOrder"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ReceivedOrderListApiRequestBody": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReceivedOrder"
            },
            "description": "Data object of response."
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ReceivedOrderResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document Id.",
            "format": "int64"
          },
          "externalId": {
            "type": "string",
            "description": "Your identification of document.",
            "nullable": true,
            "example": "d93b19c9-7463-4066-a8c5-a86240cf75bc"
          },
          "myCompany": {
            "$ref": "#/components/schemas/MyCompany"
          },
          "partner": {
            "$ref": "#/components/schemas/Partner"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DocumentItemResponse"
            },
            "description": "Document items.",
            "nullable": true
          },
          "discount": {
            "$ref": "#/components/schemas/DocumentDiscount"
          },
          "documentNumber": {
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "202206001"
          },
          "vatPayerType": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Type of vat payer. NonPayer = 0, Payer = 1, RegisteredVatPayer7 = 2",
            "format": "int32",
            "example": 1
          },
          "openingText": {
            "type": "string",
            "description": "Custom text  shown in the front of document.",
            "nullable": true,
            "example": "Úvodný text"
          },
          "closingText": {
            "type": "string",
            "description": "Custom text shown in the end of document.",
            "nullable": true,
            "example": "Záverečný text"
          },
          "registrationCourtText": {
            "type": "string",
            "description": "Company registration court text.",
            "nullable": true,
            "example": "Firma zapísaná v registri ..."
          },
          "useParagraph7or7a": {
            "type": "boolean",
            "description": "Use of §7/7a.",
            "example": false
          },
          "culture": {
            "type": "string",
            "description": "Document culture.",
            "nullable": true,
            "example": "sk-SK"
          },
          "internalNote": {
            "type": "string",
            "description": "Note hidden on printed document.",
            "nullable": true,
            "example": "Interná poznámka"
          },
          "printedNote": {
            "type": "string",
            "description": "Note showing on printed document.",
            "nullable": true,
            "example": "Poznámka do tlačovej zostavy"
          },
          "pdfReportLink": {
            "type": "string",
            "description": "Link to retrieve pdf report.",
            "nullable": true,
            "example": "https:/open-api-gateway/received-orders/1/reports/1"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Date when document was created.",
            "format": "date-time"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "Document last modified timestamp.",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "description": "Due date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "description": "Assigned tags.",
            "nullable": true
          },
          "invoiceNumber": {
            "type": "string",
            "description": "The number of related invoice.",
            "nullable": true,
            "example": "FA123456"
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "OD"
          },
          "orderStatus": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Status of received order. Pending = 0, Complete = 1, Cancelled = 2",
            "format": "int32",
            "example": 1
          },
          "externalOrderNumber": {
            "type": "string",
            "description": "The number of related external order.",
            "nullable": true,
            "example": "EXTO123456"
          },
          "paymentType": {
            "type": "string",
            "description": "Payment type.",
            "nullable": true,
            "example": "Hotovosť"
          },
          "deliveryDate": {
            "type": "string",
            "description": "Delivery date (UTC).",
            "format": "date-time",
            "nullable": true
          },
          "receivedDate": {
            "type": "string",
            "description": "Received date of order (UTC).",
            "format": "date-time",
            "example": "2022-06-21"
          },
          "prices": {
            "$ref": "#/components/schemas/DocumentBasePrices"
          }
        },
        "additionalProperties": false,
        "description": "Get received order by Id."
      },
      "ReceivedOrderResponseApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ReceivedOrderResponse"
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ReceivedOrderResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ReceivedOrderResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "ResourceAcceptedResponse": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string",
            "description": "Request id.",
            "format": "uuid"
          }
        },
        "additionalProperties": false,
        "description": "Response for accepted resource."
      },
      "SellingPriceResponse": {
        "type": "object",
        "properties": {
          "priceLevelId": {
            "type": "string",
            "description": "Price level id.",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "description": "Price level code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Price level name.",
            "nullable": true
          },
          "sellingPrice": {
            "type": "string",
            "description": "Selling price level value.",
            "nullable": true
          },
          "sellingPriceInclVat": {
            "type": "string",
            "description": "Selling price level value including VAT.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Selling price."
      },
      "Tag": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Tag Id.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Tag name.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Tag."
      },
      "TagCategoryResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Category id.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Category name.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Tag category."
      },
      "TagResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Tag id.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "Tag name.",
            "nullable": true
          },
          "color": {
            "type": "string",
            "description": "Foreground/text color.",
            "nullable": true
          },
          "bgColor": {
            "type": "string",
            "description": "Background color.",
            "nullable": true
          },
          "category": {
            "$ref": "#/components/schemas/TagCategoryResponse"
          },
          "lastModifiedTimestamp": {
            "type": "string",
            "description": "DateTimeOffset of last tag update.",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Tag with category and audit timestamp."
      },
      "TagResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TagResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      },
      "UploadedDocumentHeader": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Document id.",
            "format": "int64",
            "example": 159
          },
          "numberingSequence": {
            "type": "string",
            "description": "The numbering sequence code.",
            "nullable": true,
            "example": "01"
          },
          "documentNumber": {
            "maxLength": 20,
            "type": "string",
            "description": "The number of the document.",
            "nullable": true,
            "example": "2022155"
          },
          "externalId": {
            "type": "string",
            "description": "External id.",
            "nullable": true,
            "example": ""
          },
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10
            ],
            "type": "integer",
            "description": "Type of created documents Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10",
            "format": "int32",
            "example": 2
          }
        },
        "additionalProperties": false,
        "description": "Response header of uploaded document."
      },
      "UploadedDocumentHeaderObjectResults": {
        "type": "object",
        "properties": {
          "entities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadedDocumentHeaderResourceStatus"
            },
            "description": "List of entities.",
            "nullable": true
          },
          "relatedEntityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of related entity.",
            "format": "int32",
            "nullable": true,
            "example": 1
          },
          "relatedEntities": {
            "type": "array",
            "items": { },
            "description": "List of changed related entities.. Contents of this property depends on Kros.Esw.OpenApi.Base.Application.Documents.Callbacks.Results`2.RelatedEntityType.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Results of webhook response."
      },
      "UploadedDocumentHeaderResourceStatus": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer",
            "description": "Index of the resource taken from the original order of resources sent to API.",
            "format": "int32"
          },
          "source": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Webhook source. Undefined = 0, OpenApi = 1, InvoicingApp = 2",
            "format": "int32",
            "example": 1
          },
          "operation": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Entity CRUD operation. Undefined = 0, Create = 1, Update = 2, Delete = 3",
            "format": "int32",
            "example": 1
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status code. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 201
          },
          "data": {
            "$ref": "#/components/schemas/UploadedDocumentHeader"
          },
          "problems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationProblemDetail"
            },
            "description": "Problems discovered during asynchronous processing of resource..",
            "nullable": true,
            "example": null
          }
        },
        "additionalProperties": false,
        "description": "Status of a resource with its data."
      },
      "UploadedPayment": {
        "type": "object",
        "properties": {
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10
            ],
            "type": "integer",
            "description": "Kros.Esw.OpenApi.Base.Application.Documents.Callbacks.UploadedPayment.DocumentType of document that payment belongs to or Undefined if payment is not paired with document. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10",
            "format": "int32",
            "example": 3
          },
          "documentId": {
            "type": "integer",
            "description": "Id of document that payment belongs to or 0 if payment is not paired with document.",
            "format": "int64",
            "example": 159
          },
          "variableSymbol": {
            "type": "string",
            "description": "Variable symbol.",
            "nullable": true,
            "example": "123"
          },
          "sumOfPayment": {
            "type": "number",
            "description": "Sum of payment.",
            "format": "double",
            "example": 120.26
          },
          "dateOfPayment": {
            "type": "string",
            "description": "Day of payment.",
            "format": "date"
          },
          "hasRelatedEntity": {
            "type": "boolean",
            "description": "Flag indicating that payment is associated to the document.",
            "example": true
          }
        },
        "additionalProperties": false,
        "description": "Uploaded payment model."
      },
      "UploadedPaymentDocument": {
        "type": "object",
        "properties": {
          "documentType": {
            "enum": [
              0,
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10
            ],
            "type": "integer",
            "description": "Document type. Undefined = 0, PriceOffer = 1, Invoice = 2, ProformaInvoice = 3, DeliveryNote = 4, MovementReceivingNote = 5, MovementShippingNote = 6, ReceivedOrder = 7, SentOrder = 8, InvoiceTemplate = 9, ReceivedInvoice = 10",
            "format": "int32",
            "example": 3
          },
          "documentId": {
            "type": "integer",
            "description": "Document id.",
            "format": "int64",
            "example": 159
          },
          "numberingSequence": {
            "type": "string",
            "description": "Numbering Sequence.",
            "nullable": true,
            "example": "OPF"
          },
          "documentNumber": {
            "type": "string",
            "description": "Document number.",
            "nullable": true,
            "example": "123"
          },
          "variableSymbol": {
            "type": "string",
            "description": "Variable symbol.",
            "nullable": true,
            "example": "123"
          },
          "sumOfPayments": {
            "type": "number",
            "description": "Sum of all payments of document.",
            "format": "double",
            "nullable": true,
            "example": 120.26
          },
          "countOfPayments": {
            "type": "integer",
            "description": "Count of all payments.",
            "format": "int32",
            "nullable": true,
            "example": 1
          },
          "paymentStatus": {
            "enum": [
              0,
              1,
              2,
              3,
              -1
            ],
            "type": "integer",
            "description": "Payment status of document. NotPaid = 0, FullyPaid = 1, OverPaid = 2, PartiallyPaid = 3, Undefined = -1",
            "format": "int32",
            "example": 1
          },
          "orderNumber": {
            "type": "string",
            "description": "Order number.",
            "nullable": true,
            "example": ""
          },
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price of document incl vat.",
            "format": "double",
            "example": 120.26
          }
        },
        "additionalProperties": false,
        "description": "Document related to payment."
      },
      "UploadedPaymentResourceStatus": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer",
            "description": "Index of the resource taken from the original order of resources sent to API.",
            "format": "int32"
          },
          "source": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Webhook source. Undefined = 0, OpenApi = 1, InvoicingApp = 2",
            "format": "int32",
            "example": 1
          },
          "operation": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Entity CRUD operation. Undefined = 0, Create = 1, Update = 2, Delete = 3",
            "format": "int32",
            "example": 1
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status code. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 201
          },
          "data": {
            "$ref": "#/components/schemas/UploadedPayment"
          },
          "problems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationProblemDetail"
            },
            "description": "Problems discovered during asynchronous processing of resource..",
            "nullable": true,
            "example": null
          }
        },
        "additionalProperties": false,
        "description": "Status of a resource with its data."
      },
      "UploadedPaymentUploadedPaymentDocumentResults": {
        "type": "object",
        "properties": {
          "entities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadedPaymentResourceStatus"
            },
            "description": "List of entities.",
            "nullable": true
          },
          "relatedEntityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of related entity.",
            "format": "int32",
            "nullable": true,
            "example": 1
          },
          "relatedEntities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadedPaymentDocument"
            },
            "description": "List of changed related entities.. Contents of this property depends on Kros.Esw.OpenApi.Base.Application.Documents.Callbacks.Results`2.RelatedEntityType.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Results of webhook response."
      },
      "UploadedTransaction": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Id of transaction - id platby.",
            "format": "int64",
            "example": 123
          },
          "dateOfPayment": {
            "type": "string",
            "description": "Date of payment (UTC) - Dátum úhrady.",
            "format": "date",
            "example": "2026-02-03"
          },
          "sumOfPayment": {
            "type": "number",
            "description": "Sum of payment - Suma úhrady.",
            "format": "decimal(15,6)",
            "example": 120.26
          },
          "variableSymbol": {
            "type": "string",
            "description": "Variable symbol - Variabilný symbol.",
            "nullable": true,
            "example": "20260069"
          },
          "paymentReference": {
            "type": "string",
            "description": "Payment reference/End to end Id - Referencia platby.",
            "nullable": true,
            "example": "MY_REF_2002"
          },
          "externalId": {
            "type": "string",
            "description": "External id of transaction.",
            "nullable": true,
            "example": "564654556"
          }
        },
        "additionalProperties": false,
        "description": "Uploaded transaction model."
      },
      "UploadedTransactionResourceStatus": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer",
            "description": "Index of the resource taken from the original order of resources sent to API.",
            "format": "int32"
          },
          "source": {
            "enum": [
              0,
              1,
              2
            ],
            "type": "integer",
            "description": "Webhook source. Undefined = 0, OpenApi = 1, InvoicingApp = 2",
            "format": "int32",
            "example": 1
          },
          "operation": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Entity CRUD operation. Undefined = 0, Create = 1, Update = 2, Delete = 3",
            "format": "int32",
            "example": 1
          },
          "status": {
            "enum": [
              100,
              101,
              102,
              103,
              200,
              201,
              202,
              203,
              204,
              205,
              206,
              207,
              208,
              226,
              300,
              301,
              302,
              303,
              304,
              305,
              306,
              307,
              308,
              400,
              401,
              402,
              403,
              404,
              405,
              406,
              407,
              408,
              409,
              410,
              411,
              412,
              413,
              414,
              415,
              416,
              417,
              421,
              422,
              423,
              424,
              426,
              428,
              429,
              431,
              451,
              500,
              501,
              502,
              503,
              504,
              505,
              506,
              507,
              508,
              510,
              511
            ],
            "type": "integer",
            "description": "Status code. Continue = 100, SwitchingProtocols = 101, Processing = 102, EarlyHints = 103, OK = 200, Created = 201, Accepted = 202, NonAuthoritativeInformation = 203, NoContent = 204, ResetContent = 205, PartialContent = 206, MultiStatus = 207, AlreadyReported = 208, IMUsed = 226, MultipleChoices = 300, Ambiguous = 300, MovedPermanently = 301, Moved = 301, Found = 302, Redirect = 302, SeeOther = 303, RedirectMethod = 303, NotModified = 304, UseProxy = 305, Unused = 306, TemporaryRedirect = 307, RedirectKeepVerb = 307, PermanentRedirect = 308, BadRequest = 400, Unauthorized = 401, PaymentRequired = 402, Forbidden = 403, NotFound = 404, MethodNotAllowed = 405, NotAcceptable = 406, ProxyAuthenticationRequired = 407, RequestTimeout = 408, Conflict = 409, Gone = 410, LengthRequired = 411, PreconditionFailed = 412, RequestEntityTooLarge = 413, RequestUriTooLong = 414, UnsupportedMediaType = 415, RequestedRangeNotSatisfiable = 416, ExpectationFailed = 417, MisdirectedRequest = 421, UnprocessableEntity = 422, UnprocessableContent = 422, Locked = 423, FailedDependency = 424, UpgradeRequired = 426, PreconditionRequired = 428, TooManyRequests = 429, RequestHeaderFieldsTooLarge = 431, UnavailableForLegalReasons = 451, InternalServerError = 500, NotImplemented = 501, BadGateway = 502, ServiceUnavailable = 503, GatewayTimeout = 504, HttpVersionNotSupported = 505, VariantAlsoNegotiates = 506, InsufficientStorage = 507, LoopDetected = 508, NotExtended = 510, NetworkAuthenticationRequired = 511",
            "format": "int32",
            "example": 201
          },
          "data": {
            "$ref": "#/components/schemas/UploadedTransaction"
          },
          "problems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationProblemDetail"
            },
            "description": "Problems discovered during asynchronous processing of resource..",
            "nullable": true,
            "example": null
          }
        },
        "additionalProperties": false,
        "description": "Status of a resource with its data."
      },
      "UploadedTransactionUploadedPaymentDocumentResults": {
        "type": "object",
        "properties": {
          "entities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadedTransactionResourceStatus"
            },
            "description": "List of entities.",
            "nullable": true
          },
          "relatedEntityType": {
            "enum": [
              0,
              1,
              2,
              3
            ],
            "type": "integer",
            "description": "Type of related entity.",
            "format": "int32",
            "nullable": true,
            "example": 1
          },
          "relatedEntities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UploadedPaymentDocument"
            },
            "description": "List of changed related entities.. Contents of this property depends on Kros.Esw.OpenApi.Base.Application.Documents.Callbacks.Results`2.RelatedEntityType.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Results of webhook response."
      },
      "ValidationError": {
        "type": "object",
        "properties": {
          "documentIndex": {
            "type": "integer",
            "description": "Index of document in list.",
            "format": "int32",
            "nullable": true
          },
          "propertyPath": {
            "type": "string",
            "description": "Property path.",
            "nullable": true,
            "example": "items[0].amount"
          },
          "errorMessage": {
            "type": "string",
            "description": "Error message.",
            "nullable": true,
            "example": "Unexpected character encountered while parsing value: a."
          }
        },
        "additionalProperties": false,
        "description": "Validation error."
      },
      "ValidationProblemDetail": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of a problem.",
            "format": "uri",
            "nullable": true,
            "example": null
          },
          "title": {
            "type": "string",
            "description": "Title.",
            "nullable": true,
            "example": null
          },
          "detail": {
            "type": "string",
            "description": "Detail.",
            "nullable": true,
            "example": null
          }
        },
        "additionalProperties": false,
        "description": "Validation problem details. Based on RFC 7807."
      },
      "ValidationResult": {
        "type": "object",
        "properties": {
          "isValid": {
            "type": "boolean",
            "description": "Validation result.",
            "readOnly": true,
            "example": false
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationError"
            },
            "description": "A collection of validation errors.",
            "nullable": true
          },
          "requestId": {
            "type": "string",
            "description": "Request id.",
            "format": "uuid"
          },
          "partiallyValid": {
            "type": "boolean",
            "description": "True, if request contains invalid and valid data, and partial procecssing is allowed."
          }
        },
        "additionalProperties": false,
        "description": "Validation result."
      },
      "VatBreakdown": {
        "type": "object",
        "properties": {
          "vatRate": {
            "type": "number",
            "description": "VAT rate.",
            "format": "double",
            "nullable": true,
            "example": 20
          },
          "vatTotalPrice": {
            "type": "number",
            "description": "VAT total price.",
            "format": "double",
            "example": 20
          },
          "totalPrice": {
            "type": "number",
            "description": "Total price.",
            "format": "double",
            "example": 80
          },
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT.",
            "format": "double",
            "example": 100
          },
          "prices": {
            "$ref": "#/components/schemas/VatBreakdownPrices"
          }
        },
        "additionalProperties": false,
        "description": "VAT breakdown."
      },
      "VatBreakdownPrice": {
        "type": "object",
        "properties": {
          "vatTotalPrice": {
            "type": "number",
            "description": "VAT total price.",
            "format": "double",
            "example": 20
          },
          "totalPrice": {
            "type": "number",
            "description": "Total price.",
            "format": "double",
            "example": 80
          },
          "totalPriceInclVat": {
            "type": "number",
            "description": "Total price including VAT.",
            "format": "double",
            "example": 100
          }
        },
        "additionalProperties": false,
        "description": "VAT breakdown price."
      },
      "VatBreakdownPrices": {
        "type": "object",
        "properties": {
          "legislative": {
            "$ref": "#/components/schemas/VatBreakdownPrice"
          }
        },
        "additionalProperties": false,
        "description": "VAT breakdown prices."
      },
      "WarehouseCatalogItemResponse": {
        "type": "object",
        "properties": {
          "warehouseId": {
            "type": "integer",
            "description": "Warehouse id.",
            "format": "int64"
          },
          "quantityOnHand": {
            "type": "string",
            "description": "Quantity on hand.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "Code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name.",
            "nullable": true
          },
          "averagePrice": {
            "type": "number",
            "description": "Average stock price.",
            "format": "double",
            "example": 16.2578
          },
          "negativeBalanceOccurred": {
            "type": "boolean",
            "description": "There exists at least 1 warehouse movement of this item, that results into negative balance."
          }
        },
        "additionalProperties": false,
        "description": "Warehouse catalog item response."
      },
      "WarehouseResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "Warehouse id.",
            "format": "int64"
          },
          "code": {
            "type": "string",
            "description": "Code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name.",
            "nullable": true
          },
          "sequenceCodes": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sequence codes.",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Warehouse response."
      },
      "WarehouseResponseIEnumerableApiResponse": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WarehouseResponse"
            },
            "description": "Data object of response.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Api response object."
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Please enter authorization token. In case of direct API usage, use Authorization header 'Bearer <your_token>'",
        "scheme": "Bearer"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ]
}