Sales
Operations in the Sales group.
- GET/v1/contacts/{id}/set-off-candidates
- POST/v1/eet/certificate
- DEL/v1/eet/certificate
- POST/v1/eet/certificate/renew
- GET/v1/eet/certificate/renewal
- POST/v1/eet/devices
- PATCH/v1/eet/devices/{id}
- GET/v1/eet/mandates
- POST/v1/eet/mandates
- PATCH/v1/eet/mandates/{id}
- DEL/v1/eet/mandates/{id}
- POST/v1/eet/mandates/{id}/certificate
- GET/v1/eet/records
- POST/v1/eet/records/{id}/exclude
- POST/v1/eet/records/{id}/retry
- POST/v1/eet/records/retry
- GET/v1/eet/settings
- PATCH/v1/eet/settings
- GET/v1/eet/summary
- POST/v1/eet/test-connection
- POST/v1/eet/units
- PATCH/v1/eet/units/{id}
- GET/v1/eet/vouchers
- POST/v1/eet/vouchers
- GET/v1/eet/vouchers/{id}
- PATCH/v1/eet/vouchers/{id}
- POST/v1/eet/vouchers/{id}/adjust
- POST/v1/eet/vouchers/{id}/redeem
- POST/v1/eet/vouchers/{id}/void
- POST/v1/pos/bridge/grants
- GET/v1/pos/bridge/key
- GET/v1/pos/closures/{id}/pdf
- GET/v1/pos/offline-conflicts
- POST/v1/pos/offline-conflicts
- POST/v1/pos/offline-conflicts/{id}/resolve
- GET/v1/pos/offline-pack
- GET/v1/pos/receipts/{id}/pdf
- GET/v1/pos/registers
- POST/v1/pos/registers
- PATCH/v1/pos/registers/{id}
- GET/v1/pos/registers/{id}/closure-preview
- GET/v1/pos/registers/{id}/closures
- POST/v1/pos/registers/{id}/closures
- GET/v1/pos/registers/{id}/hardware
- PUT/v1/pos/registers/{id}/hardware
- GET/v1/pos/registers/{id}/quick-keys
- PUT/v1/pos/registers/{id}/quick-keys
- GET/v1/pos/series-gaps
- POST/v1/proformas/{id}/refund
- GET/v1/retentions
- POST/v1/retentions
- PATCH/v1/retentions/{id}
- DEL/v1/retentions/{id}
- POST/v1/retentions/{id}/classify
- GET/v1/retentions/notice
- POST/v1/retentions/reclassify
- GET/v1/retentions/settings
- PUT/v1/retentions/settings
- GET/v1/sales/accounting-options
- GET/v1/sales/doc/{kind}/{id}/emails
- GET/v1/sales/doc/{kind}/{id}/isdoc
- GET/v1/sales/doc/{kind}/{id}/pdf
- POST/v1/sales/doc/{kind}/{id}/public-link
- DEL/v1/sales/doc/{kind}/{id}/public-link
- POST/v1/sales/doc/{kind}/{id}/send
- GET/v1/sales/documents
- POST/v1/sales/documents
- GET/v1/sales/documents/{id}
- PATCH/v1/sales/documents/{id}
- DEL/v1/sales/documents/{id}
- POST/v1/sales/documents/{id}/cancel
- POST/v1/sales/documents/{id}/convert
- POST/v1/sales/documents/{id}/issue
- POST/v1/sales/documents/{id}/payments
- POST/v1/sales/documents/{id}/pos-return
- POST/v1/sales/documents/{id}/status
- POST/v1/sales/documents/{id}/storno
- GET/v1/sales/email-templates
- PUT/v1/sales/email-templates/{type}/{language}
- DEL/v1/sales/email-templates/{type}/{language}
- POST/v1/sales/import-isdoc
- POST/v1/sales/import-isdoc-advance
- POST/v1/sales/invoices/{id}/penalty-invoice
- POST/v1/sales/invoices/{id}/reminders
- GET/v1/sales/late-interest
- GET/v1/sales/overdue
- POST/v1/sales/pos-returns
- POST/v1/sales/pos-sales
- GET/v1/sales/recurring
- POST/v1/sales/recurring
- GET/v1/sales/recurring/{id}
- PATCH/v1/sales/recurring/{id}
- DEL/v1/sales/recurring/{id}
- POST/v1/sales/recurring/run-due
- GET/v1/sales/reminders
- GET/v1/sales/reminders/{id}/pdf
- POST/v1/sales/reminders/{id}/send
- POST/v1/sales/reminders/run-due
- GET/v1/sales/settings
- PUT/v1/sales/settings
- POST/v1/sales/settings/logo
- GET/v1/set-offs
- POST/v1/set-offs
- GET/v1/set-offs/{id}
- GET/v1/set-offs/{id}/pdf
- POST/v1/set-offs/{id}/storno
List the open receivables and payables of one contact that can be set off against each other
/v1/contacts/{id}/set-off-candidatesList the open receivables and payables of one contact that can be set off against each other
MCP tool: list-set-off-candidates
Path parameters
idstringrequiredQuery parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"set_off_candidate"requiredkindstringrequiredsidestringrequiredcreditNotebooleanrequireddocumentIdnull | stringrequirednumbernull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatecurrencynull | stringrequiredtotalHalerinteger | nullrequiredopenHalerintegerrequiredtotalintegerhasMorebooleanrequiredUpload the .p12 cash register certificate from DIS+ as base64 with its password. It is stored encrypted and the private key never comes back
/v1/eet/certificateUpload the .p12 cash register certificate from DIS+ as base64 with its password. It is stored encrypted and the private key never comes back. § 14 odst. 4: the taxpayer answers for handling the certificate so it cannot be misused. The password is used once to open the file and is not stored.
MCP tool: upload-eet-certificate
Request body
certificateBase64stringrequiredmin 16 charsmax 64000 charspasswordstringrequiredmax 200 charsResponse · 201
enabledbooleanrequiredmodestringrequiredliveAvailablebooleanrequiredeicnull | stringrequiredsuggestedEicnull | stringrequiredresponseTimeoutSecondsintegerrequiredcertificatenull | objectrequiredsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredunitsobject[]requiredobject"eet_unit"requiredidstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleandevicesobject[]requiredobject"eet_device"requiredidstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringmandatesobject[]object"eet_mandate"requiredidstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredDelete the stored cash register certificate and its private key. Refused while the company records sales in live mode
/v1/eet/certificateDelete the stored cash register certificate and its private key. Refused while the company records sales in live mode
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: remove-eet-certificate
Response · 200
enabledbooleanrequiredmodestringrequiredliveAvailablebooleanrequiredeicnull | stringrequiredsuggestedEicnull | stringrequiredresponseTimeoutSecondsintegerrequiredcertificatenull | objectrequiredsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredunitsobject[]requiredobject"eet_unit"requiredidstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleandevicesobject[]requiredobject"eet_device"requiredidstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringmandatesobject[]object"eet_mandate"requiredidstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredRenew a cash register certificate now through CA EET. Refused unless the operator has turned automatic renewal on
/v1/eet/certificate/renewRenew a cash register certificate now through CA EET. Refused unless the operator has turned automatic renewal on. The old certificate must still be valid. CA EET makes a new key and certificate, which replace the old ones here, encrypted. The sweep does this by itself from three weeks before the end.
MCP tool: renew-eet-certificate
Request body
mandateIdstring | nullResponse · 200
mandateIdnull | stringrequiredautomaticAvailablebooleanrequiredhasCertificatebooleanrequiredenvironmentnull | stringrequireddaysLeftinteger | nullrequiredduebooleanrequiredrenewBeforeDaysintegerrequiredexpiredbooleanrequiredlastnull | objectrequiredobject"eet_certificate_renewal"requiredidstringrequiredmandateIdnull | stringrequiredenvironmentstringrequiredstatusstringrequiredoldSerialnull | stringrequirednewSerialnull | stringrequiredattemptsintegerrequirederrorCodenull | stringrequirederrorMessagenull | stringrequiredstartedBystringrequiredcreatedAtstringrequireddate-timefinishedAtnull | stringrequireddate-timeWhether a cash register certificate is due for renewal, whether that can happen by itself, and how the last try ended
/v1/eet/certificate/renewalWhether a cash register certificate is due for renewal, whether that can happen by itself, and how the last try ended. Automatic renewal is the CA EET API (caeetapi_jwt.yml) and stays off until the operator sets EET_CA_RENEWAL_ENABLED. Without it a new certificate is issued in DIS+ and uploaded.
MCP tool: get-eet-certificate-renewal
Query parameters
mandateIdstringResponse · 200
mandateIdnull | stringrequiredautomaticAvailablebooleanrequiredhasCertificatebooleanrequiredenvironmentnull | stringrequireddaysLeftinteger | nullrequiredduebooleanrequiredrenewBeforeDaysintegerrequiredexpiredbooleanrequiredlastnull | objectrequiredobject"eet_certificate_renewal"requiredidstringrequiredmandateIdnull | stringrequiredenvironmentstringrequiredstatusstringrequiredoldSerialnull | stringrequirednewSerialnull | stringrequiredattemptsintegerrequirederrorCodenull | stringrequirederrorMessagenull | stringrequiredstartedBystringrequiredcreatedAtstringrequireddate-timefinishedAtnull | stringrequireddate-timeAdd a till device (pokladní zařízení) under a recording unit, optionally tied to one POS register or one cash register
/v1/eet/devicesAdd a till device (pokladní zařízení) under a recording unit, optionally tied to one POS register or one cash register
MCP tool: create-eet-device
Request body
mandateIdstring | nullunitIdstringrequireddeviceCodestringrequirednamestring | nullposRegisterIdstring | nullcashRegisterIdstring | nullisDefaultbooleanResponse · 201
idstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringChange a till device. The default device cannot be switched off while the company records sales
/v1/eet/devices/{id}Change a till device. The default device cannot be switched off while the company records sales
MCP tool: update-eet-device
Path parameters
idstringrequiredRequest body
unitIdstringdeviceCodestringnamestring | nullposRegisterIdstring | nullcashRegisterIdstring | nullmandateIdstring | nullisDefaultbooleanisActivebooleanResponse · 200
idstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringRepresentations and authorisations for EET: for whom this company records sales
/v1/eet/mandatesRepresentations and authorisations for EET: for whom this company records sales
MCP tool: list-eet-mandates
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"eet_mandate"requiredidstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredtotalintegerhasMorebooleanrequiredAdd a representation or authorisation: direct (přímé zastoupení), indirect (nepřímé, § 9), authorised (pověření jedním, § 10) or authorised_many (pověření více poplatníky)
/v1/eet/mandatesAdd a representation or authorisation: direct (přímé zastoupení), indirect (nepřímé, § 9), authorised (pověření jedním, § 10) or authorised_many (pověření více poplatníky). direct: the message is the principal's, with their EIČ and unit, signed with the certificate they gave you. indirect: your own message of the whole amount, with no principal in it. authorised: your EIČ, unit and certificate, with the principal in eic_poverujiciho. authorised_many: yours, with povereni_vice_popl; the principal's EIČ is optional and recommended when you are not one of the owners.
MCP tool: create-eet-mandate
Request body
kind"direct" | "indirect" | "authorised" | "authorised_many"requirednamestringrequiredmax 160 charsprincipalEicstring | nullreferencestring | nullvalidFromstring | nullvalidTostring | nullnotestring | nullResponse · 201
idstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredChange a representation or authorisation. Sales already recorded keep what they said
/v1/eet/mandates/{id}Change a representation or authorisation. Sales already recorded keep what they said
MCP tool: update-eet-mandate
Path parameters
idstringrequiredRequest body
namestringmax 160 charsprincipalEicstring | nullreferencestring | nullvalidFromstring | nullvalidTostring | nullisActivebooleannotestring | nullResponse · 200
idstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredRemove a representation that nothing has used. One with recorded sales is switched off instead
/v1/eet/mandates/{id}Remove a representation that nothing has used. One with recorded sales is switched off instead
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: delete-eet-mandate
Path parameters
idstringrequiredResponse · 200
idstringrequireddeletedbooleanrequiredUpload the .p12 the principal gave you for direct representation. It is stored encrypted and the private key never comes back
/v1/eet/mandates/{id}/certificateUpload the .p12 the principal gave you for direct representation. It is stored encrypted and the private key never comes back. Only for direct representation (popis položek situace 2). Under indirect representation and authorisation you sign with your own certificate.
MCP tool: upload-eet-mandate-certificate
Path parameters
idstringrequiredRequest body
certificateBase64stringrequiredmin 16 charsmax 64000 charspasswordstringrequiredmax 200 charsResponse · 201
idstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredRecorded sales with their send status. open=true lists only what still waits or failed
/v1/eet/recordsRecorded sales with their send status. open=true lists only what still waits or failed
MCP tool: list-eet-records
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDstatus"pending" | "sending" | "confirmed" | "rejected" | "needs_setup" | "excluded"open"true" | "false"Response · 200
dataobject[]requiredobject"eet_record"requiredidstringrequiredsourceKindstringrequiredsourceIdstringrequiredsourceEventstringrequireddocumentNumbernull | stringrequiredmodestringrequiredstatusstringrequiredunitNumberintegerrequireddeviceCodestringrequiredsequenceNumberstringrequiredsoldAtstringrequireddate-timesoldOnstringrequireddatetimeAssumedbooleanrequiredamountHalerintegerrequiredprepaidLoadHalerintegerrequiredprepaidUseHalerintegerrequiredresponseSignaturenull | stringrequiredattemptsintegerrequiredlastAttemptAtnull | stringrequireddate-timenextAttemptAtnull | stringrequireddate-timedeadlineAtstringrequireddate-timeoverDeadlinebooleanrequiredconfirmationCodenull | stringrequiredreceivedAtnull | stringrequireddate-timeisLatebooleanrequiredwarningsobject[]requiredcodeinteger | nullrequiredmessagenull | stringrequirederrorCodenull | stringrequirederrorMessagenull | stringrequiredtransactionIdnull | stringrequiredexcludedReasonnull | stringrequiredmandateIdnull | stringmandateKindnull | stringforManyTaxpayersbooleantotalintegerhasMorebooleanrequiredTake a sale that was never confirmed out of the queue, with a reason, because the law does not require recording it
/v1/eet/records/{id}/excludeTake a sale that was never confirmed out of the queue, with a reason, because the law does not require recording it. For exceptions like a one-off income (§ 7) or a § 11 to § 13 exemption. The decision stays with the company; a confirmed sale is corrected by a negative one instead (§ 8).
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: exclude-eet-record
Path parameters
idstringrequiredRequest body
reasonstringrequiredmin 3 charsmax 300 charsResponse · 200
idstringrequiredsourceKindstringrequiredsourceIdstringrequiredsourceEventstringrequireddocumentNumbernull | stringrequiredmodestringrequiredstatusstringrequiredunitNumberintegerrequireddeviceCodestringrequiredsequenceNumberstringrequiredsoldAtstringrequireddate-timesoldOnstringrequireddatetimeAssumedbooleanrequiredamountHalerintegerrequiredprepaidLoadHalerintegerrequiredprepaidUseHalerintegerrequiredresponseSignaturenull | stringrequiredattemptsintegerrequiredlastAttemptAtnull | stringrequireddate-timenextAttemptAtnull | stringrequireddate-timedeadlineAtstringrequireddate-timeoverDeadlinebooleanrequiredconfirmationCodenull | stringrequiredreceivedAtnull | stringrequireddate-timeisLatebooleanrequiredwarningsobject[]requiredcodeinteger | nullrequiredmessagenull | stringrequirederrorCodenull | stringrequirederrorMessagenull | stringrequiredtransactionIdnull | stringrequiredexcludedReasonnull | stringrequiredmandateIdnull | stringmandateKindnull | stringforManyTaxpayersbooleanSend a recorded sale again now. Repeats the same data with a new message id, marked as not the first attempt
/v1/eet/records/{id}/retrySend a recorded sale again now. Repeats the same data with a new message id, marked as not the first attempt
MCP tool: retry-eet-record
Path parameters
idstringrequiredResponse · 200
idstringrequiredsourceKindstringrequiredsourceIdstringrequiredsourceEventstringrequireddocumentNumbernull | stringrequiredmodestringrequiredstatusstringrequiredunitNumberintegerrequireddeviceCodestringrequiredsequenceNumberstringrequiredsoldAtstringrequireddate-timesoldOnstringrequireddatetimeAssumedbooleanrequiredamountHalerintegerrequiredprepaidLoadHalerintegerrequiredprepaidUseHalerintegerrequiredresponseSignaturenull | stringrequiredattemptsintegerrequiredlastAttemptAtnull | stringrequireddate-timenextAttemptAtnull | stringrequireddate-timedeadlineAtstringrequireddate-timeoverDeadlinebooleanrequiredconfirmationCodenull | stringrequiredreceivedAtnull | stringrequireddate-timeisLatebooleanrequiredwarningsobject[]requiredcodeinteger | nullrequiredmessagenull | stringrequirederrorCodenull | stringrequirederrorMessagenull | stringrequiredtransactionIdnull | stringrequiredexcludedReasonnull | stringrequiredmandateIdnull | stringmandateKindnull | stringforManyTaxpayersbooleanPut every waiting or refused sale back in the queue
/v1/eet/records/retryPut every waiting or refused sale back in the queue
MCP tool: retry-eet-records
Response · 200
queuedintegerrequiredEET 2.0 settings: on or off, mode, EIČ, recording units, till devices, and the certificate. The private key is never returned
/v1/eet/settingsEET 2.0 settings: on or off, mode, EIČ, recording units, till devices, and the certificate. The private key is never returned
MCP tool: get-eet-settings
Response · 200
enabledbooleanrequiredmodestringrequiredliveAvailablebooleanrequiredeicnull | stringrequiredsuggestedEicnull | stringrequiredresponseTimeoutSecondsintegerrequiredcertificatenull | objectrequiredsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredunitsobject[]requiredobject"eet_unit"requiredidstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleandevicesobject[]requiredobject"eet_device"requiredidstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringmandatesobject[]object"eet_mandate"requiredidstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredTurn EET 2.0 on or off, or change EIČ and the response limit. Live mode is refused unless the operator has enabled it
/v1/eet/settingsTurn EET 2.0 on or off, or change EIČ and the response limit. Live mode is refused unless the operator has enabled it. Turning it on needs a default device. Test mode sends to the official playground with the shared test certificate and fulfils no duty. § 19: the response limit is at least 2 seconds.
MCP tool: update-eet-settings
Request body
enabledbooleanmode"test" | "live"eicstring | nullresponseTimeoutSecondsintegermin 2max 60Response · 200
enabledbooleanrequiredmodestringrequiredliveAvailablebooleanrequiredeicnull | stringrequiredsuggestedEicnull | stringrequiredresponseTimeoutSecondsintegerrequiredcertificatenull | objectrequiredsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredunitsobject[]requiredobject"eet_unit"requiredidstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleandevicesobject[]requiredobject"eet_device"requiredidstringrequiredunitIdstringrequireddeviceCodestringrequirednamenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredisActivebooleanrequiredmandateIdnull | stringmandatesobject[]object"eet_mandate"requiredidstringrequiredkindstringrequirednamestringrequiredisActivebooleanrequiredvalidFromstring | nullrequiredvalidTonull | stringrequireddateprincipalEicnull | stringreferencenull | stringnotestring | nullcertificatenull | objectsubjectnull | stringrequiredserialstringrequirednotBeforestringrequireddate-timenotAfterstringrequireddate-timedaysLeftintegerrequiredenvironmentstringrequiredWhether this company records sales under EET 2.0, how many records wait or failed, and the till devices whose representation or authorisation ends within 14 days or is no longer in force, where a sale must be confirmed as the company's own (eetOwnSale)
/v1/eet/summaryWhether this company records sales under EET 2.0, how many records wait or failed, and the till devices whose representation or authorisation ends within 14 days or is no longer in force, where a sale must be confirmed as the company's own (eetOwnSale)
MCP tool: get-eet-summary
Response · 200
enabledbooleanrequiredmodenull | stringrequiredpendingintegerrequiredrejectedintegerrequiredneedsSetupintegerrequiredoverDeadlineintegerrequiredmandateWarningsobject[]deviceIdstringrequireddeviceCodenull | stringrequiredposRegisterIdnull | stringrequiredcashRegisterIdnull | stringrequiredisDefaultbooleanrequiredmandateIdnull | stringrequiredmandateNamestringrequiredvalidTonull | stringrequireddaysLeftinteger | nullrequiredexpiredbooleanrequiredregistersWithDevicestring[]Send one verification message to the official EET playground. Records nothing and uses the shared test certificate
/v1/eet/test-connectionSend one verification message to the official EET playground. Records nothing and uses the shared test certificate
MCP tool: test-eet-connection
Response · 200
okbooleanrequiredcodenull | stringrequiredmessagenull | stringrequiredwarningsany[]requiredelapsedMsintegerrequiredtransactionIdnull | stringrequiredAdd a recording unit with the number DIS+ assigned to it (evidenční jednotka, § 3 and § 15)
/v1/eet/unitsAdd a recording unit with the number DIS+ assigned to it (evidenční jednotka, § 3 and § 15)
MCP tool: create-eet-unit
Request body
namestringrequiredmax 120 charsunitNumberintegerrequiredmin 1max 999999999indirectRepresentationbooleanResponse · 201
idstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleanChange a recording unit. Sales already recorded keep the number they had
/v1/eet/units/{id}Change a recording unit. Sales already recorded keep the number they had
MCP tool: update-eet-unit
Path parameters
idstringrequiredRequest body
namestringmax 120 charsunitNumberintegermin 1max 999999999isActivebooleanindirectRepresentationbooleanResponse · 200
idstringrequirednamestringrequiredunitNumberintegerrequiredisActivebooleanrequirednumberLooksAssignedbooleanrequiredindirectRepresentationbooleanThe register of vouchers and prepaid credit, with their balances. `code` finds one exactly, `search` by code or holder
/v1/eet/vouchersThe register of vouchers and prepaid credit, with their balances. `code` finds one exactly, `search` by code or holder
MCP tool: list-eet-vouchers
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDstatus"active" | "used" | "void"kind"limited_network" | "specific_goods"codestringmax 40 charsResponse · 200
dataobject[]requiredobject"eet_voucher"requiredidstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timetotalintegerhasMorebooleanrequiredAdd a voucher to the register: limited_network for credit or a voucher for goods not yet named, specific_goods for named goods or a service
/v1/eet/vouchersAdd a voucher to the register: limited_network for credit or a voucher for goods not yet named, specific_goods for named goods or a service. Popis položek kap. 1 bod 13 and Příklad 4. A limited_network voucher is loaded by a sale with eetVoucherId and eetPrepaidLoadHaler, and spent with eetPrepaidUseHaler. A specific_goods voucher is an ordinary sale when bought, and redeeming it records nothing. openingBalanceHaler is for what was sold before this register.
MCP tool: create-eet-voucher
Request body
codestringmin 3 charsmax 40 charskind"limited_network" | "specific_goods"requiredopeningBalanceHalerintegermin 0max 9007199254740991descriptionstring | nullholderNamestring | nullcontactIdstring | nullvalidUntilstring | nullnotestring | nullResponse · 201
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeOne voucher with all its movements
/v1/eet/vouchers/{id}One voucher with all its movements
MCP tool: get-eet-voucher
Path parameters
idstringrequiredResponse · 200
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeChange the holder, validity, description or note of a voucher. Its balance moves only with sales and adjustments
/v1/eet/vouchers/{id}Change the holder, validity, description or note of a voucher. Its balance moves only with sales and adjustments
MCP tool: update-eet-voucher
Path parameters
idstringrequiredRequest body
descriptionstring | nullholderNamestring | nullcontactIdstring | nullvalidUntilstring | nullnotestring | nullResponse · 200
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeCorrect a voucher balance by hand, with a reason. Moves no money and records nothing in EET
/v1/eet/vouchers/{id}/adjustCorrect a voucher balance by hand, with a reason. Moves no money and records nothing in EET
MCP tool: adjust-eet-voucher
Path parameters
idstringrequiredRequest body
amountHalerintegerrequiredmin -9007199254740991max 9007199254740991reasonstringrequiredmin 3 charsmax 300 charsResponse · 200
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeMark a voucher for named goods as redeemed. No payment happens, so nothing is recorded in EET (popis položek, Příklad 4)
/v1/eet/vouchers/{id}/redeemMark a voucher for named goods as redeemed. No payment happens, so nothing is recorded in EET (popis položek, Příklad 4)
MCP tool: redeem-eet-voucher
Path parameters
idstringrequiredRequest body
datestringYYYY-MM-DDnotestring | nullResponse · 200
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeCancel a voucher, with a reason. What is left on it stops being spendable. Any money back is a separate return
/v1/eet/vouchers/{id}/voidCancel a voucher, with a reason. What is left on it stops being spendable. Any money back is a separate return
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: void-eet-voucher
Path parameters
idstringrequiredRequest body
reasonstringrequiredmin 3 charsmax 300 charsResponse · 200
idstringrequiredcodestringrequiredkindstringrequiredstatusstringrequiredbalanceHalerintegerrequiredvalueHalerintegerrequireddescriptionnull | stringrequiredholderNamenull | stringrequiredcontactIdstring | nullrequiredvalidUntilnull | stringrequireddateexpiredbooleanrequirednotestring | nullrequiredvoidReasonnull | stringrequiredcreatedAtstringrequireddate-timemovementsobject[]object"eet_voucher_movement"requiredidstringrequiredkindstringrequiredamountHalerintegerrequiredbalanceAfterHalerintegerrequiredsourceKindnull | stringrequiredsourceIdnull | stringrequireddocumentNumbernull | stringrequiredoccurredOnstringrequireddatenotenull | stringrequiredcreatedAtstringrequireddate-timeSign a short statement that this dashboard origin may pair with a local bridge. The bridge checks it against the Origin of the request and still asks for the code it shows
/v1/pos/bridge/grantsSign a short statement that this dashboard origin may pair with a local bridge. The bridge checks it against the Origin of the request and still asks for the code it shows
MCP tool: create-pos-bridge-grant
Request body
originstringrequiredmax 200 charsuriResponse · 200
grantstringrequiredexpiresAtstringrequireddate-timeThe public key the local bridge checks a pairing grant with, for its install command
/v1/pos/bridge/keyThe public key the local bridge checks a pairing grant with, for its install command
MCP tool: get-pos-bridge-key
Response · 200
algorithmstringrequiredpublicKeystringrequiredA day closure as an 80 mm slip
/v1/pos/closures/{id}/pdfA day closure as an 80 mm slip
MCP tool: get-pos-closure-pdf
Path parameters
idstringrequiredResponse · 200
Returns a application/pdf file.
Documents from a till without a connection that the server refused, and notices about what changed meanwhile. open=true lists what waits for a person
/v1/pos/offline-conflictsDocuments from a till without a connection that the server refused, and notices about what changed meanwhile. open=true lists what waits for a person
MCP tool: list-pos-offline-conflicts
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDopen"true" | "false"Response · 200
dataobject[]requiredobject"pos_offline_conflict"requiredidstringrequiredclientIdstringrequireddocumentKindstringrequiredseveritystringrequiredofflineNumbernull | stringrequiredhappenedAtstringrequireddate-timetotalHalerinteger | nullrequiredcodenull | stringrequiredmessagestringrequireddetailsobjectrequireditemsobject[]namenull | stringrequireditemIdnull | stringrequiredsoldHalerintegerrequiredcurrentHalerintegerrequireddeviceCodestring | nullrequiredstatusstringrequiredresolvedNotenull | stringrequiredresolvedAtnull | stringrequireddate-timetotalintegerhasMorebooleanrequiredA till says the server refused a document it holds. Reporting the same one again updates it, so everyone can see what waits. The document itself stays on the device
/v1/pos/offline-conflictsA till says the server refused a document it holds. Reporting the same one again updates it, so everyone can see what waits. The document itself stays on the device
MCP tool: report-pos-offline-conflict
Request body
clientIdstringrequiredmin 8 charsmax 64 charsdocumentKind"sale" | "return" | "invoice" | "order" | "closure"requiredseverity"refused" | "notice"offlineNumberstring | nullhappenedAtstringrequireddate-timetotalHalerinteger | nullcodestring | nullmessagestringrequiredmax 600 charsdetailsobjectdeviceCodestring | nullResponse · 201
idstringrequiredclientIdstringrequireddocumentKindstringrequiredseveritystringrequiredofflineNumbernull | stringrequiredhappenedAtstringrequireddate-timetotalHalerinteger | nullrequiredcodenull | stringrequiredmessagestringrequireddetailsobjectrequireditemsobject[]namenull | stringrequireditemIdnull | stringrequiredsoldHalerintegerrequiredcurrentHalerintegerrequireddeviceCodestring | nullrequiredstatusstringrequiredresolvedNotenull | stringrequiredresolvedAtnull | stringrequireddate-timeClose a conflict: acknowledged for a notice, discarded when a person decided the document will not be sent, with a note
/v1/pos/offline-conflicts/{id}/resolveClose a conflict: acknowledged for a notice, discarded when a person decided the document will not be sent, with a note. Discarding here closes the report. If the sale really happened, the money and goods have still moved, so whoever discards should say why. A document sent successfully closes its own conflict.
MCP tool: resolve-pos-offline-conflict
Path parameters
idstringrequiredRequest body
status"sent" | "discarded" | "acknowledged"requirednotestring | nullResponse · 200
idstringrequiredclientIdstringrequireddocumentKindstringrequiredseveritystringrequiredofflineNumbernull | stringrequiredhappenedAtstringrequireddate-timetotalHalerinteger | nullrequiredcodenull | stringrequiredmessagestringrequireddetailsobjectrequireditemsobject[]namenull | stringrequireditemIdnull | stringrequiredsoldHalerintegerrequiredcurrentHalerintegerrequireddeviceCodestring | nullrequiredstatusstringrequiredresolvedNotenull | stringrequiredresolvedAtnull | stringrequireddate-timeWhat a till keeps on its device to work without a connection: customers, price lists, serial numbers in stock, kits, the last 30 days of receipts, and where each drawer stands
/v1/pos/offline-packWhat a till keeps on its device to work without a connection: customers, price lists, serial numbers in stock, kits, the last 30 days of receipts, and where each drawer stands. A contact with restricted processing is left out. The lists are capped, and truncated says so. The dashboard clears all of it at logout.
MCP tool: get-pos-offline-pack
Response · 200
savedAtstringrequireddate-timecustomersobject[]requiredidstringrequirednamenull | stringrequirediconull | stringrequireddicstring | nullrequiredusualDueDaysinteger | nullrequiredpreferredPaymentMethodstring | nullrequiredaddressstring | nullrequiredgroupIdsany[]requiredtruncatedbooleanrequiredpriceListsobject[]requiredidstringrequirednamenull | stringrequiredisDefaultbooleanrequireddiscountBpintegerrequiredvalidFromstring | nullrequiredvalidTostring | nullrequiredpricesobject[]requireditemIdnull | stringrequiredpriceHalerintegerrequiredminQtyMilliintegerrequiredrulesobject[]requiredcontactIdnull | stringrequiredcontactGroupIdstring | nullrequireddiscountBpintegerrequiredserialsobject[]requireditemIdnull | stringrequiredcodenull | stringrequiredwarehouseIdnull | stringrequiredkitsobjectrequiredvouchersany[]requiredreceiptsobject[]requiredidstringrequiredclientSaleIdnull | stringrequirednumbernull | stringrequiredexternalNumbernull | stringrequiredsoldAtnull | stringrequireddate-timeregisterIdnull | stringrequiredpaymentMethodstringrequiredtotalHalerinteger | nullrequiredcontactNamestring | nullrequiredlinesobject[]requiredpositioninteger | nullrequireddescriptionnull | stringrequiredquantityintegerrequiredreturnedQuantityintegerrequiredunitnull | stringrequiredunitPriceHalerinteger | nullrequiredvatRateintegerrequireditemIdstring | nullrequiredserialsany[]requiredclosuresobjectrequireddenominationsHalerinteger[]requiredtodaystringrequireddateA sales receipt sized for an 80 mm thermal printer
/v1/pos/receipts/{id}/pdfA sales receipt sized for an 80 mm thermal printer
MCP tool: get-pos-receipt-pdf
Path parameters
idstringrequiredResponse · 200
Returns a application/pdf file.
List the cash registers of the till. A company with none gets its first one here
/v1/pos/registersList the cash registers of the till. A company with none gets its first one here
MCP tool: list-pos-registers
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"pos_register"requiredidstringrequirednamestringrequiredcodestringrequiredwarehouseIdnull | stringrequiredopeningFloatHalerintegerrequiredisActivebooleanrequiredtotalintegerhasMorebooleanrequiredAdd a cash register, with its own warehouse, quick keys, and day closures
/v1/pos/registersAdd a cash register, with its own warehouse, quick keys, and day closures
MCP tool: create-pos-register
Request body
namestringrequiredmax 120 charscodestringrequiredmax 16 charswarehouseIdstring | nullopeningFloatHalerintegermin 0max 9007199254740991isActivebooleanResponse · 201
idstringrequirednamestringrequiredcodestringrequiredwarehouseIdnull | stringrequiredopeningFloatHalerintegerrequiredisActivebooleanrequiredChange a cash register. The starting float only applies until its first closure
/v1/pos/registers/{id}Change a cash register. The starting float only applies until its first closure
MCP tool: update-pos-register
Path parameters
idstringrequiredRequest body
namestringmax 120 charscodestringmax 16 charswarehouseIdstring | nullopeningFloatHalerintegermin 0max 9007199254740991isActivebooleanResponse · 200
idstringrequirednamestringrequiredcodestringrequiredwarehouseIdnull | stringrequiredopeningFloatHalerintegerrequiredisActivebooleanrequiredWhat the drawer should hold now: opening float, cash in and out since the last closure, card total
/v1/pos/registers/{id}/closure-previewWhat the drawer should hold now: opening float, cash in and out since the last closure, card total
MCP tool: get-pos-closure-preview
Path parameters
idstringrequiredResponse · 200
registerIdnull | stringrequiredopeningCashHalerintegerrequiredcashSalesHalerintegerrequiredcashReturnsHalerintegerrequiredcardTotalHalerintegerrequiredexpectedCashHalerintegerrequiredreceiptCountintegerrequireddenominationsHalerinteger[]requiredPast day closures of a cash register
/v1/pos/registers/{id}/closuresPast day closures of a cash register
MCP tool: list-pos-closures
Path parameters
idstringrequiredQuery parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDResponse · 200
dataobject[]requiredobject"pos_closure"requiredidstringrequiredregisterIdstringrequirednumberstringrequireddatestringrequireddateopeningCashHalerintegerrequiredcashSalesHalerintegerrequiredcashReturnsHalerintegerrequiredcardTotalHalerintegerrequiredreceiptCountintegerrequiredexpectedCashHalerintegerrequiredcountedCashHalerintegerrequireddifferenceHalerintegerrequiredwithdrawnHalerintegerrequiredclosingFloatHalerintegerrequireddenominationsobject[]requiredvalueHalerinteger | nullrequiredcountintegerrequirednotestring | nullrequiredofflineNumbernull | stringtotalintegerhasMorebooleanrequiredClose the till for the day: count the cash, post any difference, and start the next day from what stays in the drawer
/v1/pos/registers/{id}/closuresClose the till for the day: count the cash, post any difference, and start the next day from what stays in the drawer. Schodek posts MD 569 / D 211, přebytek MD 211 / D 668, cash taken out MD 261 / D 211. In daňová evidence the difference goes to the peněžní deník; a shortage is not deductible (§ 25 odst. 1 písm. n) ZDP). Send expectedCashHaler from the preview to be stopped if a sale happened since.
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: create-pos-closure
Path parameters
idstringrequiredRequest body
datestringYYYY-MM-DDcountedCashHalerintegermin 0max 9007199254740991denominationsobject[]valueHalerintegerrequiredmax 9007199254740991countintegerrequiredmin 0max 9007199254740991withdrawnHalerintegermin 0max 9007199254740991expectedCashHalerintegermin -9007199254740991max 9007199254740991notestring | nullclientClosureIdstringmin 8 charsmax 64 charsofflineobjectsoldAtstringrequireddate-timenumberstringrequiredmax 40 charslistPricesobject[]itemIdstringrequiredpriceHalerintegerrequiredmin -9007199254740991max 9007199254740991quantitynumberrequiredResponse · 201
idstringrequiredregisterIdstringrequirednumberstringrequireddatestringrequireddateopeningCashHalerintegerrequiredcashSalesHalerintegerrequiredcashReturnsHalerintegerrequiredcardTotalHalerintegerrequiredreceiptCountintegerrequiredexpectedCashHalerintegerrequiredcountedCashHalerintegerrequireddifferenceHalerintegerrequiredwithdrawnHalerintegerrequiredclosingFloatHalerintegerrequireddenominationsobject[]requiredvalueHalerinteger | nullrequiredcountintegerrequirednotestring | nullrequiredofflineNumbernull | stringWhat the local bridge should drive for this till: printer, customer display, scale and payment terminal. Nothing here reaches a device by itself
/v1/pos/registers/{id}/hardwareWhat the local bridge should drive for this till: printer, customer display, scale and payment terminal. Nothing here reaches a device by itself
MCP tool: get-pos-hardware
Path parameters
idstringrequiredResponse · 200
registerIdstringrequireddevicesobjectrequiredprinterobjectprotocolstringrequiredconnectionobjectrequiredhostnull | stringrequiredportinteger | nullrequiredtypestringrequiredterminalobjectprotocolstringrequiredconnectionobjectrequiredhostnull | stringrequiredportinteger | nullrequiredtypestringrequiredcurrencyCodestringrequiredupdatedAtnull | stringrequireddate-timeSave the hardware profile of a till. Only open protocols: ESC/POS, CD5220, MT-SICS, NCI and ZVT. None has met a real device
/v1/pos/registers/{id}/hardwareSave the hardware profile of a till. Only open protocols: ESC/POS, CD5220, MT-SICS, NCI and ZVT. None has met a real device
MCP tool: put-pos-hardware
Path parameters
idstringrequiredRequest body
printerobject | nullprotocol"escpos"requiredconnectionobjectrequiredtype"tcp"requiredhoststringrequiredmax 120 charsportintegerrequiredmin 1max 65535tlsbooleanenabledbooleancolumnsintegermin 20max 64diacriticsbooleandrawerbooleandisplayobject | nullprotocol"cd5220" | "escpos"requiredconnectionobjectrequiredtype"tcp"requiredhoststringrequiredmax 120 charsportintegerrequiredmin 1max 65535tlsbooleanenabledbooleancolumnsintegermin 10max 40scaleobject | nullprotocol"mt-sics" | "nci"requiredconnectionobjectrequiredtype"tcp"requiredhoststringrequiredmax 120 charsportintegerrequiredmin 1max 65535tlsbooleanenabledbooleanterminalobject | nullprotocol"zvt" | "gpe" | "comgate" | "dotypay"requiredconnectionobjectrequiredtype"tcp"requiredhoststringrequiredmax 120 charsportintegerrequiredmin 1max 65535tlsbooleanenabledbooleancurrencyCodestringtimeoutSecondsintegermin 10max 300ecrIdstring | ""poiIdstringmax 40 charssaleIdstringmax 40 charsResponse · 200
registerIdstringrequireddevicesobjectrequiredprinterobjectprotocolstringrequiredconnectionobjectrequiredhostnull | stringrequiredportinteger | nullrequiredtypestringrequiredterminalobjectprotocolstringrequiredconnectionobjectrequiredhostnull | stringrequiredportinteger | nullrequiredtypestringrequiredcurrencyCodestringrequiredupdatedAtnull | stringrequireddate-timeThe favourite items on the quick keys of a cash register
/v1/pos/registers/{id}/quick-keysThe favourite items on the quick keys of a cash register
MCP tool: get-pos-quick-keys
Path parameters
idstringrequiredResponse · 200
registerIdstringrequireddataobject[]requiredobject"item"requiredidstringrequiredskustringrequirednamestringrequiredeannull | stringrequiredgroupIdnull | stringrequiredunitstringrequiredvatRateintegerrequiredtypestringrequiredtrackingstringrequiredtracksExpirybooleanrequiredvaluationstringrequiredpurchasePriceHalerintegerrequiredsalePriceHalerintegerrequiredsupplierIdnull | stringrequiredminStocknull | numberrequiredmaxStockinteger | nullrequiredallowNegativeboolean | nullrequiredisActivebooleanrequirednotestring | nullrequiredweightKgnull | numberrequiredgpsrIdnull | stringrequiredrecyclingFeeIdnull | stringrequiredrecyclingCoefficientnull | numberrequiredcustomFieldsobjectrequiredbarvastringzimnistringprumerintegerzarukastringdatevyrobcestringparentIdnull | stringrequiredattributesobjectrequiredBarvastringVelikoststringisKitbooleanrequiredportableBatterybooleanscannedUnitstringscannedFactorintegerSet the favourite items on the quick keys of a cash register, in order
/v1/pos/registers/{id}/quick-keysSet the favourite items on the quick keys of a cash register, in order
MCP tool: put-pos-quick-keys
Path parameters
idstringrequiredRequest body
itemIdsstring[]requiredResponse · 200
registerIdstringrequireddataobject[]requiredobject"item"requiredidstringrequiredskustringrequirednamestringrequiredeannull | stringrequiredgroupIdnull | stringrequiredunitstringrequiredvatRateintegerrequiredtypestringrequiredtrackingstringrequiredtracksExpirybooleanrequiredvaluationstringrequiredpurchasePriceHalerintegerrequiredsalePriceHalerintegerrequiredsupplierIdnull | stringrequiredminStocknull | numberrequiredmaxStockinteger | nullrequiredallowNegativeboolean | nullrequiredisActivebooleanrequirednotestring | nullrequiredweightKgnull | numberrequiredgpsrIdnull | stringrequiredrecyclingFeeIdnull | stringrequiredrecyclingCoefficientnull | numberrequiredcustomFieldsobjectrequiredbarvastringzimnistringprumerintegerzarukastringdatevyrobcestringparentIdnull | stringrequiredattributesobjectrequiredBarvastringVelikoststringisKitbooleanrequiredportableBatterybooleanscannedUnitstringscannedFactorintegerNumbers missing from a till device's own series (OFF-XXXX-NNNNNN) a day after a later number arrived: documents that may be on a lost or broken device. Enter such a sale afterwards from the receipt copy with POST /sales/pos-sales and offline.number set to the missing number
/v1/pos/series-gapsNumbers missing from a till device's own series (OFF-XXXX-NNNNNN) a day after a later number arrived: documents that may be on a lost or broken device. Enter such a sale afterwards from the receipt copy with POST /sales/pos-sales and offline.number set to the missing number
MCP tool: list-pos-series-gaps
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"pos_series_gap"requireddeviceCodenull | stringrequiredcountintegerrequiredfirstMissingstringrequiredlastMissingstringrequiredmissingstring[]requiredafternull | objectrequirednumbernull | stringrequiredsoldAtnull | stringrequireddate-timebeforenull | objectrequirednumbernull | stringrequiredsoldAtnull | stringrequireddate-timearrivedAtstringrequireddate-timetotalintegerhasMorebooleanrequiredPay back all or part of a received advance. Whatever part was taxed gets a corrective tax document (§ 42 ZDPH); books and cash book are posted
/v1/proformas/{id}/refundPay back all or part of a received advance. Whatever part was taxed gets a corrective tax document (§ 42 ZDPH); books and cash book are posted. amountHaler defaults to everything paid. Refused once the advance has been settled into an invoice: correct that invoice with a credit note.
MCP tool: refund-proforma
Path parameters
idstringrequiredRequest body
amountHalerintegermax 9007199254740991refundedOnstringrequiredYYYY-MM-DDmethod"transfer" | "cash" | "card" | "other"reasonstringrequiredmax 240 charsnotestring | nullregisterIdstringbankAccountIdstringmoneyAmountHalerintegermax 9007199254740991allowNegativebooleanResponse · 201
idstringrequirednumbernull | stringrequiredvariableSymbolnull | stringrequiredkindstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatetotalHalerintegerrequiredpaidHalerintegerrequiredstatusstringrequiredoverduebooleanrequiredfileIdnull | stringrequiredcustomFieldsobjectvatModestringexchangeRateintegertemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullseriesIdnull | stringcurrencystringourAccountNumbernull | stringourBankCodenull | stringourIbannull | stringpaymentMethodstringlanguagestringnotePublicstring | nullnoteInternalstring | nullnetHalerintegervatHalerintegercontactIconull | stringcontactDicnull | stringcontactVatPayerTypenull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringshipToNamestring | nullshipToStreetstring | nullshipToCitystring | nullshipToPostalCodestring | nullshipToCountrystring | nullcontactEmailnull | stringsellerNamenull | stringlinesobject[]object"proforma_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumberstring | nullrequiredlineKindstringrequiredsourceIdstring | nullrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredlotsany[]requiredorderLineIdnull | stringrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredvatLinesobject[]object"invoice_vat_line"requiredidstringrequiredvatRatenumberrequirednetHalerintegerrequiredvatHalerintegerrequiredpaymentsobject[]object"proforma_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nulltaxDocumentsobject[]object"advance_tax_document"requiredidstringrequirednumbernull | stringrequiredstatusstringrequiredissueDatenull | stringrequireddatenetHalerintegerrequiredvatHalerinteger | nullrequiredtotalHalerinteger | nullrequiredinvoiceIdnull | stringrequiredpostingobjectregimestringrequiredeventstringrequiredskippedbooleanjournalLinesobject[]accountnull | stringrequiredsidestringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredbalancedbooleancashJournalobject[]accountnull | stringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredreceivablesBookany[]payablesBookany[]assetany[]carrierIdstring | nullbankMovementobjectidstringrequiredbankAccountIdstringrequiredrefundobjectamountHalerinteger | nullrequiredpaymentIdnull | stringrequiredcorrectionIdnull | stringrequiredcorrectionNumbernull | stringrequiredList retentions (pozastávky) on issued and received invoices, with what is still open and when it falls due
/v1/retentionsList retentions (pozastávky) on issued and received invoices, with what is still open and when it falls due
MCP tool: list-document-retentions
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDkind"invoice" | "received_invoice"documentIdstringcontactIdstringstatus"open" | "paid" | "cancelled"Response · 200
dataobject[]requiredobject"document_retention"requiredidstringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredmodestringrequiredpercentinteger | nullrequiredbasestringrequiredamountHalerintegerrequiredopenHalerintegerrequireddueDatestringrequireddatenotenull | stringrequiredlongTermbooleanrequiredstatusstringrequiredtotalintegerhasMorebooleanrequiredHold back part of an invoice as a retention, by percent or amount, with its own later due date. VAT and revenue stay whole
/v1/retentionsHold back part of an invoice as a retention, by percent or amount, with its own later due date. VAT and revenue stay whole. Set it before issuing to have it printed. A PDF already issued is a tax document and is not rewritten: getRetentionNotice prints a notice for it, and e-mailing the invoice adds that notice. The payment QR code asks only for what is due. Several tranches are allowed.
MCP tool: create-document-retention
Request body
kind"invoice" | "received_invoice"requireddocumentIdstringrequiredmode"percent" | "amount"requiredpercentnumbermax 100base"total" | "net"amountHalerintegermax 9007199254740991dueDatestringrequiredYYYY-MM-DDnotestring | nullResponse · 201
idstringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredmodestringrequiredpercentinteger | nullrequiredbasestringrequiredamountHalerintegerrequiredopenHalerintegerrequireddueDatestringrequireddatenotenull | stringrequiredlongTermbooleanrequiredstatusstringrequiredChange a retention: its amount, due date, or note. A long-term one must be moved back before its amount changes
/v1/retentions/{id}Change a retention: its amount, due date, or note. A long-term one must be moved back before its amount changes
MCP tool: update-document-retention
Path parameters
idstringrequiredRequest body
mode"percent" | "amount"percentnumbermax 100base"total" | "net"amountHalerintegermax 9007199254740991dueDatestringYYYY-MM-DDnotestring | nullResponse · 200
idstringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredmodestringrequiredpercentinteger | nullrequiredbasestringrequiredamountHalerintegerrequiredopenHalerintegerrequireddueDatestringrequireddatenotenull | stringrequiredlongTermbooleanrequiredstatusstringrequiredCancel a retention, so the whole amount falls due with the document. A long-term one moves back with today as its date
/v1/retentions/{id}Cancel a retention, so the whole amount falls due with the document. A long-term one moves back with today as its date
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: delete-document-retention
Path parameters
idstringrequiredResponse · 200
idstringrequireddeletedbooleanrequiredMove a retention to the long-term analytic account (311900 or 321900) with one correcting entry, or back
/v1/retentions/{id}/classifyMove a retention to the long-term analytic account (311900 or 321900) with one correcting entry, or back. Long-term means due more than one year after the balance sheet date (vyhláška 500/2002 Sb. § 10, § 17). Double-entry books only. In a foreign currency it moves at the carrying value of the document.
MCP tool: classify-document-retention
Path parameters
idstringrequiredRequest body
longTermbooleanrequireddatestringrequiredYYYY-MM-DDResponse · 200
idstringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredmodestringrequiredpercentinteger | nullrequiredbasestringrequiredamountHalerintegerrequiredopenHalerintegerrequireddueDatestringrequireddatenotenull | stringrequiredlongTermbooleanrequiredstatusstringrequiredPrint a retention notice for a document already issued, with the payment due without the retention. The issued PDF itself stays as it is
/v1/retentions/noticePrint a retention notice for a document already issued, with the payment due without the retention. The issued PDF itself stays as it is
MCP tool: get-retention-notice
Query parameters
kind"invoice" | "received_invoice"requireddocumentIdstringrequiredlanguage"cs" | "en" | "de" | "fr"Response · 200
Returns a application/pdf file.
Sort every open retention by a balance sheet date: what falls due over a year later moves to long-term, and what no longer does moves back. dryRun only says what would move
/v1/retentions/reclassifySort every open retention by a balance sheet date: what falls due over a year later moves to long-term, and what no longer does moves back. dryRun only says what would move. Long-term means due more than one year after the balance sheet date (vyhláška 500/2002 Sb. § 10, § 17). Double-entry books only. After a period ends this runs by itself, once. A tranche already part paid stays where it is and is named as part_paid.
MCP tool: reclassify-retentions
Request body
datestringrequiredYYYY-MM-DDdryRunbooleanResponse · 200
datestringrequireddatedryRunbooleanrequiredmovedintegerrequireddataobject[]requiredidstringrequiredkindstringrequireddocumentIdnull | stringrequireddocumentNumbernull | stringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredamountHalerinteger | nullrequireddueDatenull | stringrequireddatelongTermbooleanrequiredmovestringrequiredWhich analytic accounts hold long-term retentions
/v1/retentions/settingsWhich analytic accounts hold long-term retentions
MCP tool: get-retention-settings
Response · 200
receivableAccountstringrequiredpayableAccountstringrequiredChoose the analytic accounts for long-term retentions, under 311 and 321. A tranche already moved stays where it is. An accountant should choose these
/v1/retentions/settingsChoose the analytic accounts for long-term retentions, under 311 and 321. A tranche already moved stays where it is. An accountant should choose these
MCP tool: update-retention-settings
Request body
receivableAccountstring | nullpayableAccountstring | nullResponse · 200
receivableAccountstringrequiredpayableAccountstringrequiredList the cost centers, activities, projects, posting templates, and accounts a document can use
/v1/sales/accounting-optionsList the cost centers, activities, projects, posting templates, and accounts a document can use
MCP tool: get-sales-accounting-options
Response · 200
centersobject[]requiredidstringrequiredkindstringrequiredcodenull | stringrequirednamenull | stringrequiredactivitiesany[]requiredprojectsobject[]requiredidstringrequiredkindstringrequiredcodenull | stringrequirednamenull | stringrequiredtemplatesobject[]requiredidstringrequiredcodenull | stringrequirednamenull | stringrequireddocumentTypenull | stringrequireddebitAccountstringrequiredcreditAccountnull | stringrequiredaccountsobject[]requirednumbernull | stringrequirednamenull | stringrequirednameEnnull | stringrequiredtypestringrequiredList the e-mails sent for a document
/v1/sales/doc/{kind}/{id}/emailsList the e-mails sent for a document
MCP tool: list-sales-document-emails
Path parameters
kindstringrequiredidstringrequiredQuery parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"sales_email"requiredidstringrequireddocumentKindnull | stringrequireddocumentIdnull | stringrequiredtostringrequiredsubjectnull | stringrequiredstatusstringrequirederrornull | stringrequiredattachmentsstring[]requiredsentAtnull | stringdate-timetotalintegerhasMorebooleanrequiredExport an issued document as ISDOC 6.0.2 XML
/v1/sales/doc/{kind}/{id}/isdocExport an issued document as ISDOC 6.0.2 XML
MCP tool: export-sales-document-isdoc
Path parameters
kindstringrequiredidstringrequiredResponse · 200
Returns a application/xml file.
Download the PDF of any issued sales document
/v1/sales/doc/{kind}/{id}/pdfDownload the PDF of any issued sales document
MCP tool: download-sales-document-pdf
Path parameters
kindstringrequiredidstringrequiredResponse · 200
Returns a application/pdf file.
Get or create the no-login public link to an issued document, with its payment QR code
/v1/sales/doc/{kind}/{id}/public-linkGet or create the no-login public link to an issued document, with its payment QR code
MCP tool: get-sales-public-link
Path parameters
kindstringrequiredidstringrequiredResponse · 200
idstringdocumentKindstringdocumentIdstringrequiredurlstringviewCountintegerlastViewedAtstring | nullrevokedAtstring | nullcreatedAtstringdate-timerevokedbooleanRevoke the public link to a document; anyone holding it loses access
/v1/sales/doc/{kind}/{id}/public-linkRevoke the public link to a document; anyone holding it loses access
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: revoke-sales-public-link
Path parameters
kindstringrequiredidstringrequiredResponse · 200
idstringdocumentKindstringdocumentIdstringrequiredurlstringviewCountintegerlastViewedAtstring | nullrevokedAtstring | nullcreatedAtstringdate-timerevokedbooleanE-mail an issued document to the customer with its PDF and ISDOC attached and a public payment link
/v1/sales/doc/{kind}/{id}/sendE-mail an issued document to the customer with its PDF and ISDOC attached and a public payment link. Defaults to the contact e-mail and the workspace template for the document type. The attempt is kept in the sent history.
MCP tool: send-sales-document
Path parameters
kindstringrequiredidstringrequiredRequest body
tostringemailsubjectstringmax 300 charsbodystringmax 10000 charsattachPdfbooleanattachIsdocbooleanResponse · 200
idstringrequireddocumentKindnull | stringrequireddocumentIdnull | stringrequiredtostringrequiredsubjectnull | stringrequiredstatusstringrequirederrornull | stringrequiredattachmentsstring[]requiredsentAtnull | stringdate-timeList quotes, RFQs, orders, sales receipts, debit notes, other receivables or payables, by kind
/v1/sales/documentsList quotes, RFQs, orders, sales receipts, debit notes, other receivables or payables, by kind
MCP tool: list-sales-documents
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDkind"quote" | "rfq" | "order_received" | "order_issued" | "pos_receipt" | "debit_note" | "other_receivable" | "other_payable" | "advance_tax_document"requiredstatusstringmax 32 charscontactIdstringcustomFieldKeystringcustomFieldValuestringmax 2000 charsResponse · 200
dataobject[]requiredobject"sales_document"requiredidstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredtotalintegerhasMorebooleanrequiredCreate a quote, RFQ, order, sales receipt, debit note, other receivable or payable; set issue to number it now
/v1/sales/documentsCreate a quote, RFQ, order, sales receipt, debit note, other receivable or payable; set issue to number it now
MCP tool: create-sales-document
Request body
kind"quote" | "rfq" | "order_received" | "order_issued" | "pos_receipt" | "debit_note" | "other_receivable" | "other_payable"requiredissuebooleanclientSaleIdstringmin 8 charsmax 64 charsofflineobjectsoldAtstringrequireddate-timenumberstringrequiredmax 40 charslistPricesobject[]itemIdstringrequiredpriceHalerintegerrequiredmin -9007199254740991max 9007199254740991quantitynumberrequiredcarrierIdstring | nullcontactIdstringcontactNamestringmax 160 charscontactIcostringmax 16 charscontactDicstringmax 16 charsseriesIdstringissueDatestringYYYY-MM-DDtaxPointDatestringYYYY-MM-DDdueDatestring | nullvalidUntilstring | nullcurrencystring3 charsexchangeRatenumbervatMode"eu_registration" | "eu_sme" | "group_internal" | "margin_used_goods" | "margin_art" | "margin_collectibles" | "margin_travel" | "domestic" | "reverse_charge" | "eu_goods" | "eu_services" | "third_country_goods" | "third_country_services" | "oss" | "eu_triangular" | "eu_new_vehicle" | "exempt" | "none"templateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethod"transfer" | "cash" | "card" | "cod" | "proforma"roundingMode"auto" | "crown" | "none"pricesIncludeVatbooleanlanguage"cs" | "en" | "sk" | "de" | "fr" | "pl"notePublicstring | nullnoteInternalstring | nullreasonstring | nullexternalNumberstring | nulloriginalKind"invoice" | "received_invoice"originalIdstringlinesobject[]requiredpurchaseHalerintegermin 0max 9007199254740991exemptPercentnumbermin 0max 100purchaseLineIdstring | nulldescriptionstringmax 240 charsquantitynumberrequiredunitstringmax 16 charsunitPriceHalerintegermin -9007199254740991max 9007199254740991vatRatenumbermin 0max 30itemIdstring | nullwarehouseIdstring | nullaccountNumberstring | nulllotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]recyclingFeeIdstring | nullrecyclingPerUnitHalerintegermin 0max 9007199254740991recyclingTextstringmax 120 charsrecyclingUnit"ks" | "kg"recyclingCoefficientnumbermin 0max 1000000Response · 201
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredGet a sales document with lines, payments, fulfilment, and links
/v1/sales/documents/{id}Get a sales document with lines, payments, fulfilment, and links
MCP tool: get-sales-document
Path parameters
idstringrequiredResponse · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredEdit a draft; after issue only notes and dates can change
/v1/sales/documents/{id}Edit a draft; after issue only notes and dates can change
MCP tool: update-sales-document
Path parameters
idstringrequiredRequest body
carrierIdstring | nullcontactIdstringcontactNamestringmax 160 charscontactIcostringmax 16 charscontactDicstringmax 16 charsseriesIdstringissueDatestringYYYY-MM-DDtaxPointDatestringYYYY-MM-DDdueDatestring | nullvalidUntilstring | nullcurrencystring3 charsexchangeRatenumbervatMode"eu_registration" | "eu_sme" | "group_internal" | "margin_used_goods" | "margin_art" | "margin_collectibles" | "margin_travel" | "domestic" | "reverse_charge" | "eu_goods" | "eu_services" | "third_country_goods" | "third_country_services" | "oss" | "eu_triangular" | "eu_new_vehicle" | "exempt" | "none"templateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethod"transfer" | "cash" | "card" | "cod" | "proforma"roundingMode"auto" | "crown" | "none"pricesIncludeVatbooleanlanguage"cs" | "en" | "sk" | "de" | "fr" | "pl"notePublicstring | nullnoteInternalstring | nullreasonstring | nullexternalNumberstring | nulloriginalKind"invoice" | "received_invoice"originalIdstringlinesobject[]purchaseHalerintegermin 0max 9007199254740991exemptPercentnumbermin 0max 100purchaseLineIdstring | nulldescriptionstringmax 240 charsquantitynumberrequiredunitstringmax 16 charsunitPriceHalerintegermin -9007199254740991max 9007199254740991vatRatenumbermin 0max 30itemIdstring | nullwarehouseIdstring | nullaccountNumberstring | nulllotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]recyclingFeeIdstring | nullrecyclingPerUnitHalerintegermin 0max 9007199254740991recyclingTextstringmax 120 charsrecyclingUnit"ks" | "kg"recyclingCoefficientnumbermin 0max 1000000Response · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredDelete a draft sales document
/v1/sales/documents/{id}Delete a draft sales document
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: delete-sales-document-draft
Path parameters
idstringrequiredResponse · 200
idstringrequireddeletedbooleanrequiredCancel a quote, RFQ, or order and release any stock reservation
/v1/sales/documents/{id}/cancelCancel a quote, RFQ, or order and release any stock reservation
MCP tool: cancel-sales-document
Path parameters
idstringrequiredResponse · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredTurn a document into the next one: quote to order or invoice, RFQ to order, order to invoice, delivery note, or receipt
/v1/sales/documents/{id}/convertTurn a document into the next one: quote to order or invoice, RFQ to order, order to invoice, delivery note, or receipt. Pass lines with quantities for a partial conversion; otherwise everything still open is taken. Orders track what is delivered and invoiced.
MCP tool: convert-sales-document
Path parameters
idstringrequiredRequest body
target"order_received" | "order_issued" | "invoice" | "proforma" | "delivery_note" | "received_invoice" | "receipt"requiredissuebooleanissueDatestringYYYY-MM-DDtaxPointDatestringYYYY-MM-DDsupplierDocumentNumberstringmax 64 charslinesobject[]lineIdstringrequiredquantitynumberrequiredwarehouseIdstringlotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]warehouseIdstringexchangeRatenumberlandedCostsobject[]labelstringrequiredmax 120 charsamountHalerintegerrequiredmin 0max 9007199254740991method"value" | "weight"Response · 201
targetstringrequiredcreatedobjectrequiredcustomFieldsobjectvatModestringexchangeRateinteger | nulltemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullobject"delivery_note" | "invoice" | "proforma" | "received_invoice" | "sales_document" | "stock_document"requiredidnull | stringrequirednumbernull | stringvariableSymbolnull | stringcontactIdnull | stringcontactNamenull | stringissueDatenull | stringdatedueDatestring | nullcurrencynull | stringtotalHalerinteger | nullpaidHalerintegerstatusstringoverduebooleanfileIdnull | stringseriesIdnull | stringconstantSymbolstring | nulltaxPointDatenull | stringdatepaymentMethodstringlanguagenull | stringnotePublicstring | nullnoteInternalstring | nullourAccountNumbernull | stringourBankCodenull | stringourIbannull | stringsellerNamenull | stringsellerIconull | stringsellerDicnull | stringreminderOnDuebooleanreminderWeekAfterbooleanreminder14DaysAfterbooleanreminderMonthAfterbooleannetHalerintegervatHalerinteger | nullroundingHalerintegerrecurringIdstring | nullstornoOfIdstring | nullcontactIconull | stringcontactDicnull | stringcontactVatPayerTypenull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringshipToNamestring | nullshipToStreetstring | nullshipToCitystring | nullshipToPostalCodestring | nullshipToCountrystring | nullcontactEmailnull | stringlinesobject[]object"delivery_note_line" | "invoice_line" | "proforma_line" | "received_invoice_line" | "sales_document_line"requiredidstringrequireddescriptionnull | stringrequiredquantityintegerrequiredunitnull | stringrequiredunitPriceHalerinteger | nullrequiredvatRateintegernetHalerintegervatHalerinteger | nulltotalHalerinteger | nullaccountNumberstring | nulllineKindstringsourceIdstring | nullitemIdnull | stringrequiredwarehouseIdnull | stringrequiredlotsany[]requiredorderLineIdnull | stringrequiredfulfilledQuantityintegerinvoicedQuantityintegerreservedQuantityintegerreturnedQuantityintegeroriginalLineIdstring | nullrecyclingnull | objecttextstringrequiredunitnull | stringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerinteger | nullrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredvatLinesobject[]object"invoice_vat_line" | "received_invoice_vat_line"requiredidstringrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerinteger | nullrequiredpaymentsany[]linksany[]postingobjectregimestringrequiredeventstringrequiredjournalLinesobject[]accountnull | stringrequiredsidestringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredbalancedbooleancashJournalany[]receivablesBookobject[]documentIdnull | stringrequiredamountHalerinteger | nullrequiredstatusstringrequiredpayablesBookany[]assetany[]skippedbooleanretentionsany[]totalValueHalerintegerdeliveryDatestringdatekindstringtaxDocumentsany[]supplierDocumentNumbernull | stringreceivedOnstring | nulltheirAccountNumberstring | nulltheirBankCodestring | nulltheirIbanstring | nullduplicateOfIdstring | nullsettlementsany[]supplierAdvancesany[]validUntilstring | nullreservationStatusstringexternalNumberstring | nullreasonstring | nullsourceKindnull | stringsourceIdnull | stringoriginalKindstring | nulloriginalIdstring | nulloriginalNumberstring | nullconsumedByIdstring | nullreceivedHalerinteger | nullregisterIdstring | nullclosureIdstring | nullchangeHaleranycarrierIdnull | stringsourceobjectrequiredobject"sales_document"requiredidstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredNumber a draft and post it to the books; a sales order also requests stock reservation
/v1/sales/documents/{id}/issueNumber a draft and post it to the books; a sales order also requests stock reservation. An other receivable or debit note over the contact credit limit is refused with credit_limit_exceeded; an owner or accountant can repeat it with overrideCreditLimit.
MCP tool: issue-sales-document
Path parameters
idstringrequiredRequest body
overrideReservationsbooleanoverrideDeliveryNotesbooleandeliveryNoteIdsstring[]overrideCreditLimitbooleanResponse · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredRecord a payment of a debit note, other receivable, or other payable. Cash goes through a cash document of a register, a transfer through a bank account, and a later statement line takes it over
/v1/sales/documents/{id}/paymentsRecord a payment of a debit note, other receivable, or other payable. Cash goes through a cash document of a register, a transfer through a bank account, and a later statement line takes it over
MCP tool: add-sales-document-payment
Path parameters
idstringrequiredRequest body
amountHalerintegerrequiredmin -9007199254740991max 9007199254740991paidOnstringrequiredYYYY-MM-DDmethod"transfer" | "cash" | "card" | "other"inPersonbooleanpaidAtstringdate-timenotestring | nullregisterIdstringbankAccountIdstringallowNegativebooleanResponse · 201
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredTake goods back on a sales receipt, all or part: a negative receipt, money back, stock back at the cost it left with
/v1/sales/documents/{id}/pos-returnTake goods back on a sales receipt, all or part: a negative receipt, money back, stock back at the cost it left with. A serial-tracked line needs the serial numbers coming back unless the whole line returns.
MCP tool: create-pos-return
Path parameters
idstringrequiredRequest body
paymentMethod"cash" | "card"reasonstring | nullclientSaleIdstringmin 8 charsmax 64 charsofflineobjectsoldAtstringrequireddate-timenumberstringrequiredmax 40 charslistPricesobject[]itemIdstringrequiredpriceHalerintegerrequiredmin -9007199254740991max 9007199254740991quantitynumberrequiredbackToVoucherbooleanlinesobject[]requiredlineIdstringrequiredquantitynumberrequiredserialNumbersstring[]Response · 201
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredMark an issued quote as accepted or rejected
/v1/sales/documents/{id}/statusMark an issued quote as accepted or rejected
MCP tool: set-sales-quote-status
Path parameters
idstringrequiredRequest body
status"accepted" | "rejected"requiredResponse · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredReverse a posted sales document with a storno document
/v1/sales/documents/{id}/stornoReverse a posted sales document with a storno document
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: storno-sales-document
Path parameters
idstringrequiredResponse · 200
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredList e-mail and reminder templates per document type and language
/v1/sales/email-templatesList e-mail and reminder templates per document type and language
MCP tool: list-sales-email-templates
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsResponse · 200
dataobject[]requiredobject"sales_email_template"requiredtypestringrequiredlanguagestringrequiredsubjectstringrequiredbodystringrequiredcustomizedbooleanrequiredtotalintegerhasMorebooleanrequiredReplace an e-mail or reminder template
/v1/sales/email-templates/{type}/{language}Replace an e-mail or reminder template. Placeholders: {{number}}, {{companyName}}, {{contactName}}, {{amount}}, {{dueDate}}, {{variableSymbol}}, {{link}}; reminders also {{outstanding}}, {{interest}}, {{daysOverdue}}, {{newDueDate}}.
MCP tool: put-sales-email-template
Path parameters
typestringrequiredlanguagestringrequiredRequest body
subjectstringrequiredmax 300 charsbodystringrequiredmax 10000 charsResponse · 200
typestringrequiredlanguagestringrequiredsubjectstringrequiredbodystringrequiredcustomizedbooleanrequiredGo back to the default template
/v1/sales/email-templates/{type}/{language}Go back to the default template
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: reset-sales-email-template
Path parameters
typestringrequiredlanguagestringrequiredResponse · 200
typestringrequiredlanguagestringrequiredsubjectstringrequiredbodystringrequiredcustomizedbooleanrequiredImport an ISDOC file as a received invoice draft and match or create the supplier contact
/v1/sales/import-isdocImport an ISDOC file as a received invoice draft and match or create the supplier contact
MCP tool: import-received-invoice-isdoc
Request body
fileBase64stringxmlstringconfirmDuplicatebooleanResponse · 201
idstringrequirednumbernull | stringrequiredsupplierDocumentNumbernull | stringrequiredvariableSymbolnull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredstatusstringrequiredoverduebooleanrequiredfileIdnull | stringrequiredcustomFieldsobjectvatModestringexchangeRateintegertemplateIdnull | stringcenterIdstring | nullactivityIdstring | nullprojectIdnull | stringseriesIdnull | stringconstantSymbolstring | nullreceivedOnnull | stringdatetaxPointDatestringdatepaymentMethodstringtheirAccountNumbernull | stringtheirBankCodenull | stringtheirIbannull | stringnotePublicstring | nullnoteInternalnull | stringnetHalerintegervatHalerintegerstornoOfIdnull | stringduplicateOfIdnull | stringcontactIconull | stringcontactDicnull | stringcontactVatPayerTypenull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringshipToNamestring | nullshipToStreetstring | nullshipToCitystring | nullshipToPostalCodestring | nullshipToCountrystring | nullcontactEmailnull | stringlinesobject[]object"received_invoice_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequiredlineKindstringrequiredsourceIdnull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdnull | stringrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdnull | stringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerperUnitHalerintegerrequiredcoefficientMilliintegerrequiredtypedbooleanvatLinesobject[]object"received_invoice_vat_line"requiredidstringrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredsettlementsobject[]object"received_invoice_settlement"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredsupplierAdvancesobject[]idstringrequirednumbernull | stringrequiredsupplierDocumentNumbernull | stringrequiredpostingobjectregimestringrequiredeventstringrequiredjournalLinesobject[]accountnull | stringrequiredsidestringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredbalancedbooleancashJournalobject[]accountnull | stringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredreceivablesBookany[]payablesBookobject[]documentIdnull | stringrequiredamountHalerinteger | nullrequiredstatusstringrequiredassetany[]retentionsany[]duplicateobjectexistingIdstringrequiredbankMovementobjectidstringrequiredbankAccountIdstringrequiredcashDocumentobjectidstringrequirednumbernull | stringrequiredwarningsany[]requiredimportedobjectuuidstringrequireddocumentTypeinteger | nullrequiredwarningsstring[]requiredImport a supplier's zálohová faktura in ISDOC as a draft advance (a tax document for a payment, DocumentType 5, goes to its advance instead) and match or create the supplier contact. Nothing posts
/v1/sales/import-isdoc-advanceImport a supplier's zálohová faktura in ISDOC as a draft advance (a tax document for a payment, DocumentType 5, goes to its advance instead) and match or create the supplier contact. Nothing posts
MCP tool: import-supplier-advance-isdoc
Request body
fileBase64stringxmlstringconfirmDuplicatebooleanResponse · 201
idstringrequirednumbernull | stringrequiredsupplierDocumentNumbernull | stringrequiredvariableSymbolnull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredstatusstringrequiredoverduebooleanrequiredcustomFieldsobjectstavba_zalohystringvatModestringexchangeRateintegertemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullseriesIdnull | stringconstantSymbolstring | nullpaymentMethodstringtheirAccountNumbernull | stringtheirBankCodenull | stringtheirIbanstring | nullnotePublicstring | nullnoteInternalnull | stringnetHalerintegervatHalerintegertaxedHalerintegeradvanceAccountstringselfAssessablebooleanreceivedInvoiceIdnull | stringcontactIconull | stringcontactDicnull | stringcontactVatPayerTypenull | stringbillToStreetstring | nullbillToCitystring | nullbillToPostalCodestring | nullbillToCountrynull | stringshipToNamestring | nullshipToStreetstring | nullshipToCitystring | nullshipToPostalCodestring | nullshipToCountrystring | nullcontactEmailnull | stringlinesobject[]object"supplier_advance_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumberstring | nullrequiredlineKindstringrequiredsourceIdstring | nullrequireditemIdstring | nullrequiredwarehouseIdstring | nullrequiredlotsany[]requiredorderLineIdstring | nullrequiredvatLinesobject[]object"supplier_advance_vat_line"requiredidstringrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredpaymentsobject[]object"supplier_advance_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredexchangeRatenumberrequiredtaxDocumentsobject[]object"supplier_advance_tax_document"requiredidstringrequiredsupplierAdvanceIdstringrequirednumbernull | stringrequiredsupplierDocumentNumbernull | stringrequiredcontactNamenull | stringrequiredcontactDicnull | stringrequiredstatusstringrequiredissueDatestringrequireddatetaxPointDatestringrequireddatereceivedOnnull | stringrequireddatecurrencystringrequiredexchangeRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredreasonnull | stringrequiredcorrectsNumbernull | stringrequiredselfAssessedbooleanrequiredpaymentIdnull | stringrequiredreceivedInvoiceIdnull | stringrequiredstornoOfIdnull | stringrequiredlinesobject[]requiredobject"supplier_advance_tax_document_line"requiredidstringrequireddescriptionstringrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredtaxRecordsKindstringbankMovementobjectidstringrequiredbankAccountIdstringrequiredrefundobjectamountHalerinteger | nullrequiredpaymentIdnull | stringrequiredcorrectionIdnull | stringrequiredcorrectionNumbernull | stringrequiredstornoCorrectionobjectreasonnull | stringrequireddatestringrequireddateperiodstringrequiredadditionalReturnbooleanrequiredfollowUpStatementbooleanrequiredCreate an invoice for the late-payment interest on an overdue invoice, optionally with the 1 200 Kč recovery cost
/v1/sales/invoices/{id}/penalty-invoiceCreate an invoice for the late-payment interest on an overdue invoice, optionally with the 1 200 Kč recovery cost
MCP tool: create-penalty-invoice
Path parameters
idstringrequiredRequest body
toDatestringYYYY-MM-DDratePercentnumbermin 0max 100includeRecoveryCostbooleanissuebooleanissueDatestringYYYY-MM-DDdueDatestringYYYY-MM-DDResponse · 201
idstringrequirednumbernull | stringrequiredvariableSymbolnull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredstatusstringrequiredoverduebooleanrequiredfileIdnull | stringrequiredcustomFieldsobjectzakazka_zakaznikastringpocetintegerkampanstringvatModestringexchangeRatenumbertemplateIdnull | stringcenterIdnull | stringactivityIdnull | stringprojectIdnull | stringseriesIdnull | stringconstantSymbolnull | stringtaxPointDatestringdatepaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringourAccountNumbernull | stringourBankCodenull | stringourIbannull | stringsellerNamenull | stringsellerIconull | stringsellerDicnull | stringreminderOnDuebooleanreminderWeekAfterbooleanreminder14DaysAfterbooleanreminderMonthAfterbooleannetHalerintegervatHalerintegerroundingHalerintegerrecurringIdnull | stringstornoOfIdnull | stringcontactIconull | stringcontactDicnull | stringcontactVatPayerTypenull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringshipToNamestring | nullshipToStreetnull | stringshipToCitynull | stringshipToPostalCodenull | stringshipToCountrynull | stringcontactEmailnull | stringlinesobject[]object"invoice_line"requiredidstringrequireddescriptionstringrequiredquantitynumberrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRatenumberrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequiredlineKindstringrequiredsourceIdnull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredlotsobject[]requireditemIdnull | stringlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdnull | stringrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdnull | stringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerperUnitHalerintegerrequiredcoefficientMilliintegerrequiredtypedbooleanvatLinesobject[]object"invoice_vat_line"requiredidstringrequiredvatRatenumberrequirednetHalerintegerrequiredvatHalerintegerrequiredpaymentsobject[]object"invoice_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullpostingobjectregimestringrequiredeventstringrequiredjournalLinesobject[]accountnull | stringrequiredsidestringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredbalancedbooleancashJournalobject[]accountnull | stringrequiredamountHalerinteger | nullrequireddocumentIdnull | stringrequiredreceivablesBookobject[]documentIdnull | stringrequiredamountHalerinteger | nullrequiredstatusstringrequiredpayablesBookany[]assetany[]retentionsobject[]idstringrequiredamountHalerinteger | nullrequireddueDatenull | stringrequireddatenotestring | nullrequiredlongTermbooleanrequiredcarrierIdnull | stringcreditWarningobjectlevelstringrequiredexposureHalerintegerrequiredafterHalerintegerrequiredwarnHalerinteger | nullrequiredblockHalerintegerrequiredavailableHalerintegerrequiredoriginalanybankMovementobjectidstringrequiredbankAccountIdstringrequiredcashDocumentobjectidstringrequirednumbernull | stringrequiredwarningsany[]requiredCreate a payment reminder for an overdue invoice, with a PDF, and optionally e-mail it
/v1/sales/invoices/{id}/remindersCreate a payment reminder for an overdue invoice, with a PDF, and optionally e-mail it
MCP tool: create-invoice-reminder
Path parameters
idstringrequiredRequest body
levelintegermin 1max 3issueDatestringYYYY-MM-DDnewDueDatestringYYYY-MM-DDratePercentnumbermin 0max 100sendbooleantostringemailResponse · 201
idstringrequiredinvoiceIdstringrequiredinvoiceNumberstringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredlevelintegerrequirednumbernull | stringrequiredissueDatestringrequireddatenewDueDatenull | stringrequireddatedaysOverdueintegerrequiredoutstandingHalerintegerrequiredinterestHalerintegerrequiredratePercentnull | numberrequiredsubjectstringrequiredbodystringrequiredsentAtnull | stringrequireddate-timefileIdnull | stringrequiredCalculate Czech statutory late-payment interest (ČNB repo rate on the first day of the half-year + 8 points)
/v1/sales/late-interestCalculate Czech statutory late-payment interest (ČNB repo rate on the first day of the half-year + 8 points). Pass ratePercent for a contractual rate, or when the half-year is not in the verified repo table.
MCP tool: calculate-late-interest
Query parameters
amountHalerintegerrequiredmin 0max 9007199254740991dueDatestringrequiredYYYY-MM-DDtoDatestringYYYY-MM-DDratePercentnumbermin 0max 100Response · 200
knownbooleanrequireddelayStartstringrequireddateratePercentnull | numberrequiredstatutorynull | objectrequiredrepoRatenumberrequireddecidingDatestringrequireddateratePercentnull | numberrequireddaysintegerrequiredinterestHalerintegerrequiredperiodsobject[]requiredfromstringrequireddatetostringrequireddatedaysintegerrequiredprincipalHalerintegerrequiredinterestHalerintegerrequiredoutstandingHalerintegerrecoveryCostHalerintegerrequiredList unpaid invoices past their due date, with late interest and the next reminder level
/v1/sales/overdueList unpaid invoices past their due date, with late interest and the next reminder level
MCP tool: list-overdue-invoices
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsasOfstringYYYY-MM-DDResponse · 200
dataobject[]requiredobject"overdue_invoice"requiredidstringrequirednumbernull | stringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredcontactEmailnull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatecurrencynull | stringrequiredtotalHalerinteger | nullrequiredpaidHalerintegerrequiredoutstandingHalerintegerrequireddaysOverdueintegerrequiredinterestHalerintegerrequiredratePercentnull | numberrequiredrateKnownbooleanrequiredlastReminderLevelintegerrequirednextReminderLevelintegerrequiredtotalintegerhasMorebooleanrequiredA return taken without a connection: the sale named by its id or by the till's own id for it, its lines by their place on the receipt
/v1/sales/pos-returnsA return taken without a connection: the sale named by its id or by the till's own id for it, its lines by their place on the receipt. The till sends this when the connection is back, after the sale it returns. Sending it again answers the first return.
MCP tool: create-offline-pos-return
Request body
originalIdstringoriginalClientSaleIdstringmin 8 charsmax 64 charspaymentMethod"cash" | "card"reasonstring | nullclientSaleIdstringrequiredmin 8 charsmax 64 charsofflineobjectrequiredsoldAtstringrequireddate-timenumberstringrequiredmax 40 charslistPricesobject[]itemIdstringrequiredpriceHalerintegerrequiredmin -9007199254740991max 9007199254740991quantitynumberrequiredbackToVoucherbooleanlinesobject[]requiredpositionintegerrequiredmin 0max 9007199254740991quantitynumberrequiredserialNumbersstring[]Response · 201
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredRecord a paid till sale: issues a sales receipt at once, posts to the cash desk or card clearing (261)
/v1/sales/pos-salesRecord a paid till sale: issues a sales receipt at once, posts to the cash desk or card clearing (261). Prices include VAT. Cash in CZK rounds to whole crowns. Pass receivedHaler to get the change back.
MCP tool: create-pos-sale
Request body
clientSaleIdstringmin 8 charsmax 64 charsofflineobjectsoldAtstringrequireddate-timenumberstringrequiredmax 40 charslistPricesobject[]itemIdstringrequiredpriceHalerintegerrequiredmin -9007199254740991max 9007199254740991quantitynumberrequiredregisterIdstringpaymentMethod"cash" | "card"requiredcashRegisterIdstringeetPrepaidLoadHalerintegermin 0max 9007199254740991eetPrepaidUseHalerintegermin 0max 9007199254740991eetVoucherIdstringeetOwnSalebooleaneetMandateIdstringterminalPaymentobjectprotocolstringrequiredmax 20 charsterminalIdstring | nullreceiptNumberstring | nulltraceNumberstring | nullauthorisationstring | nullcardNamestring | nullapprovedAtstring | nullvatMode"eu_registration" | "eu_sme" | "group_internal" | "margin_used_goods" | "margin_art" | "margin_collectibles" | "margin_travel" | "domestic" | "reverse_charge" | "eu_goods" | "eu_services" | "third_country_goods" | "third_country_services" | "oss" | "eu_triangular" | "eu_new_vehicle" | "exempt" | "none"billToCountrystring2 charscurrencystring3 charsexchangeRatenumbertaxPointDatestringYYYY-MM-DDreceivedHalerintegermin 0max 9007199254740991contactIdstringissueDatestringYYYY-MM-DDseriesIdstringroundingMode"auto" | "crown" | "none"linesobject[]requiredpurchaseHalerintegermin 0max 9007199254740991exemptPercentnumbermin 0max 100purchaseLineIdstring | nulldescriptionstringmax 240 charsquantitynumberrequiredunitstringmax 16 charsunitPriceHalerintegermin -9007199254740991max 9007199254740991vatRatenumbermin 0max 30itemIdstring | nullwarehouseIdstring | nullaccountNumberstring | nulllotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]Response · 201
idstringrequiredkindstringrequirednumbernull | stringrequiredstatusstringrequiredcontactIdnull | stringrequiredcontactNamenull | stringrequiredissueDatestringrequireddatedueDatenull | stringrequireddatevalidUntilnull | stringrequireddatecurrencystringrequiredtotalHalerintegerrequiredpaidHalerintegerrequiredoverduebooleanrequiredreservationStatusstringrequiredexternalNumbernull | stringrequiredfileIdnull | stringrequiredcustomFieldsobjectkanalstringseriesIdnull | stringvariableSymbolnull | stringconstantSymbolnull | stringcontactIconull | stringcontactDicnull | stringcontactEmailnull | stringbillToStreetnull | stringbillToCitynull | stringbillToPostalCodenull | stringbillToCountrynull | stringtaxPointDatenull | stringdateexchangeRateintegervatModestringtemplateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullpaymentMethodstringlanguagestringnotePublicnull | stringnoteInternalnull | stringreasonnull | stringsourceKindnull | stringsourceIdnull | stringoriginalKindnull | stringoriginalIdnull | stringoriginalNumbernull | stringconsumedByIdstring | nullstornoOfIdnull | stringnetHalerintegervatHalerintegerroundingHalerintegerreceivedHalerinteger | nullregisterIdnull | stringclosureIdstring | nullchangeHalerinteger | nulllinesobject[]object"sales_document_line"requiredidstringrequireddescriptionstringrequiredquantityintegerrequiredunitstringrequiredunitPriceHalerintegerrequiredvatRateintegerrequirednetHalerintegerrequiredvatHalerintegerrequiredtotalHalerintegerrequiredaccountNumbernull | stringrequireditemIdnull | stringrequiredwarehouseIdnull | stringrequiredfulfilledQuantitynumberrequiredinvoicedQuantityintegerrequiredreservedQuantityintegerrequiredreturnedQuantityintegerrequiredoriginalLineIdnull | stringrequiredlotsobject[]requiredlotIdstring | nullrequiredcodenull | stringrequiredquantityintegerrequiredexpiryDatestring | nullrequiredorderLineIdstring | nullrequiredrecyclingnull | objecttextstringrequiredunitstringrequiredfeeIdstringrequiredrateHalerintegerrequiredtotalHalerintegerrequiredweightMilliintegerrequiredperUnitHalerintegerrequiredcoefficientMilliintegerrequiredpaymentsobject[]object"sales_document_payment"requiredidstringrequiredamountHalerintegerrequiredpaidOnstringrequireddatemethodstringrequirednotenull | stringrequiredlinksobject[]object"document_link"requiredidstringrequiredfromKindstringrequiredfromIdstringrequiredtoKindstringrequiredtoIdstringrequiredkindstringrequiredamountHalerinteger | nullcarrierIdnull | stringbankMovementobjectidstringrequiredbankAccountIdstringrequiredList recurring invoice schedules
/v1/sales/recurringList recurring invoice schedules
MCP tool: list-recurring-invoices
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDResponse · 200
dataobject[]requiredobject"sales_recurring"requiredidstringrequirednamenull | stringrequiredcontactIdnull | stringrequiredstatusstringrequiredfrequencystringrequiredintervalCountintegerrequiredstartDatestringrequireddatenextIssueDatenull | stringrequireddateendDatenull | stringrequireddatedueDaysintegerrequiredautoIssuebooleanrequiredautoSendbooleanrequiredcurrencynull | stringrequiredpaymentMethodstringrequiredlanguagenull | stringrequiredvatModestringrequiredtemplateIdstring | nullrequiredcenterIdstring | nullrequiredactivityIdstring | nullrequiredprojectIdstring | nullrequirednotePublicstring | nullrequiredlinesobject[]requiredunitnull | stringvatRateintegerrequiredquantityintegerrequireddescriptionnull | stringrequiredunitPriceHalerinteger | nullrequiredlastIssuedOnnull | stringrequireddatelastErrornull | stringrequiredrunsobject[]object"sales_recurring_run"requiredidstringrequiredrunDatestringrequireddatestatusstringrequiredinvoiceIdnull | stringrequirederrornull | stringrequiredtotalintegerhasMorebooleanrequiredCreate a schedule that issues an invoice automatically, optionally e-mailing it
/v1/sales/recurringCreate a schedule that issues an invoice automatically, optionally e-mailing it
MCP tool: create-recurring-invoice
Request body
namestringrequiredmax 200 charscontactIdstringrequiredfrequency"monthly" | "quarterly" | "half_yearly" | "yearly"requiredintervalCountintegermin 1max 24startDatestringrequiredYYYY-MM-DDendDatestring | nulldueDaysintegermin 0max 365autoIssuebooleanautoSendbooleancurrencystring3 charspaymentMethod"transfer" | "cash" | "card" | "cod" | "proforma"language"cs" | "en" | "sk" | "de" | "fr" | "pl"vatMode"eu_registration" | "eu_sme" | "group_internal" | "margin_used_goods" | "margin_art" | "margin_collectibles" | "margin_travel" | "domestic" | "reverse_charge" | "eu_goods" | "eu_services" | "third_country_goods" | "third_country_services" | "oss" | "eu_triangular" | "eu_new_vehicle" | "exempt" | "none"templateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullnotePublicstring | nulllinesobject[]requiredpurchaseHalerintegermin 0max 9007199254740991exemptPercentnumbermin 0max 100purchaseLineIdstring | nulldescriptionstringmax 240 charsquantitynumberrequiredunitstringmax 16 charsunitPriceHalerintegermin -9007199254740991max 9007199254740991vatRatenumbermin 0max 30itemIdstring | nullwarehouseIdstring | nullaccountNumberstring | nulllotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]recyclingFeeIdstring | nullrecyclingPerUnitHalerintegermin 0max 9007199254740991recyclingTextstringmax 120 charsrecyclingUnit"ks" | "kg"recyclingCoefficientnumbermin 0max 1000000Response · 201
idstringrequirednamenull | stringrequiredcontactIdnull | stringrequiredstatusstringrequiredfrequencystringrequiredintervalCountintegerrequiredstartDatestringrequireddatenextIssueDatenull | stringrequireddateendDatenull | stringrequireddatedueDaysintegerrequiredautoIssuebooleanrequiredautoSendbooleanrequiredcurrencynull | stringrequiredpaymentMethodstringrequiredlanguagenull | stringrequiredvatModestringrequiredtemplateIdstring | nullrequiredcenterIdstring | nullrequiredactivityIdstring | nullrequiredprojectIdstring | nullrequirednotePublicstring | nullrequiredlinesobject[]requiredunitnull | stringvatRateintegerrequiredquantityintegerrequireddescriptionnull | stringrequiredunitPriceHalerinteger | nullrequiredlastIssuedOnnull | stringrequireddatelastErrornull | stringrequiredrunsobject[]object"sales_recurring_run"requiredidstringrequiredrunDatestringrequireddatestatusstringrequiredinvoiceIdnull | stringrequirederrornull | stringrequiredGet a recurring invoice schedule with its run history
/v1/sales/recurring/{id}Get a recurring invoice schedule with its run history
MCP tool: get-recurring-invoice
Path parameters
idstringrequiredResponse · 200
idstringrequirednamenull | stringrequiredcontactIdnull | stringrequiredstatusstringrequiredfrequencystringrequiredintervalCountintegerrequiredstartDatestringrequireddatenextIssueDatenull | stringrequireddateendDatenull | stringrequireddatedueDaysintegerrequiredautoIssuebooleanrequiredautoSendbooleanrequiredcurrencynull | stringrequiredpaymentMethodstringrequiredlanguagenull | stringrequiredvatModestringrequiredtemplateIdstring | nullrequiredcenterIdstring | nullrequiredactivityIdstring | nullrequiredprojectIdstring | nullrequirednotePublicstring | nullrequiredlinesobject[]requiredunitnull | stringvatRateintegerrequiredquantityintegerrequireddescriptionnull | stringrequiredunitPriceHalerinteger | nullrequiredlastIssuedOnnull | stringrequireddatelastErrornull | stringrequiredrunsobject[]object"sales_recurring_run"requiredidstringrequiredrunDatestringrequireddatestatusstringrequiredinvoiceIdnull | stringrequirederrornull | stringrequiredChange, pause, or resume a recurring invoice schedule
/v1/sales/recurring/{id}Change, pause, or resume a recurring invoice schedule
MCP tool: update-recurring-invoice
Path parameters
idstringrequiredRequest body
namestringmax 200 charscontactIdstringfrequency"monthly" | "quarterly" | "half_yearly" | "yearly"intervalCountintegermin 1max 24startDatestringYYYY-MM-DDendDatestring | nulldueDaysintegermin 0max 365autoIssuebooleanautoSendbooleancurrencystring3 charspaymentMethod"transfer" | "cash" | "card" | "cod" | "proforma"language"cs" | "en" | "sk" | "de" | "fr" | "pl"vatMode"eu_registration" | "eu_sme" | "group_internal" | "margin_used_goods" | "margin_art" | "margin_collectibles" | "margin_travel" | "domestic" | "reverse_charge" | "eu_goods" | "eu_services" | "third_country_goods" | "third_country_services" | "oss" | "eu_triangular" | "eu_new_vehicle" | "exempt" | "none"templateIdstring | nullcenterIdstring | nullactivityIdstring | nullprojectIdstring | nullnotePublicstring | nulllinesobject[]purchaseHalerintegermin 0max 9007199254740991exemptPercentnumbermin 0max 100purchaseLineIdstring | nulldescriptionstringmax 240 charsquantitynumberrequiredunitstringmax 16 charsunitPriceHalerintegermin -9007199254740991max 9007199254740991vatRatenumbermin 0max 30itemIdstring | nullwarehouseIdstring | nullaccountNumberstring | nulllotsobject[]itemIdstringlotIdstringcodestringmax 64 charsquantitynumberexpiryDatestring | nullserialNumbersstring[]recyclingFeeIdstring | nullrecyclingPerUnitHalerintegermin 0max 9007199254740991recyclingTextstringmax 120 charsrecyclingUnit"ks" | "kg"recyclingCoefficientnumbermin 0max 1000000status"active" | "paused"Response · 200
idstringrequirednamenull | stringrequiredcontactIdnull | stringrequiredstatusstringrequiredfrequencystringrequiredintervalCountintegerrequiredstartDatestringrequireddatenextIssueDatenull | stringrequireddateendDatenull | stringrequireddatedueDaysintegerrequiredautoIssuebooleanrequiredautoSendbooleanrequiredcurrencynull | stringrequiredpaymentMethodstringrequiredlanguagenull | stringrequiredvatModestringrequiredtemplateIdstring | nullrequiredcenterIdstring | nullrequiredactivityIdstring | nullrequiredprojectIdstring | nullrequirednotePublicstring | nullrequiredlinesobject[]requiredunitnull | stringvatRateintegerrequiredquantityintegerrequireddescriptionnull | stringrequiredunitPriceHalerinteger | nullrequiredlastIssuedOnnull | stringrequireddatelastErrornull | stringrequiredrunsobject[]object"sales_recurring_run"requiredidstringrequiredrunDatestringrequireddatestatusstringrequiredinvoiceIdnull | stringrequirederrornull | stringrequiredEnd a recurring invoice schedule. Invoices already issued stay.
/v1/sales/recurring/{id}End a recurring invoice schedule. Invoices already issued stay.
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: delete-recurring-invoice
Path parameters
idstringrequiredResponse · 200
idstringrequireddeletedbooleanrequiredIssue every recurring invoice due by today in this workspace now; safe to repeat
/v1/sales/recurring/run-dueIssue every recurring invoice due by today in this workspace now; safe to repeat
MCP tool: run-due-recurring-invoices
Request body
asOfstringYYYY-MM-DDResponse · 200
schedulesintegerrequiredissuedintegerrequiredfailedintegerrequirederrorsobject[]requiredrecurringIdnull | stringrequirederrornull | stringrequiredList payment reminders
/v1/sales/remindersList payment reminders
MCP tool: list-invoice-reminders
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDResponse · 200
dataobject[]requiredobject"sales_reminder"requiredidstringrequiredinvoiceIdstringrequiredinvoiceNumberstringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredlevelintegerrequirednumbernull | stringrequiredissueDatestringrequireddatenewDueDatenull | stringrequireddatedaysOverdueintegerrequiredoutstandingHalerintegerrequiredinterestHalerintegerrequiredratePercentnull | numberrequiredsubjectstringrequiredbodystringrequiredsentAtnull | stringrequireddate-timefileIdnull | stringrequiredtotalintegerhasMorebooleanrequiredDownload the PDF of a payment reminder
/v1/sales/reminders/{id}/pdfDownload the PDF of a payment reminder
MCP tool: download-invoice-reminder-pdf
Path parameters
idstringrequiredResponse · 200
Returns a application/pdf file.
E-mail a payment reminder to the customer
/v1/sales/reminders/{id}/sendE-mail a payment reminder to the customer
MCP tool: send-invoice-reminder
Path parameters
idstringrequiredResponse · 200
idstringrequiredinvoiceIdstringrequiredinvoiceNumberstringrequiredcontactNamenull | stringrequiredcurrencynull | stringrequiredlevelintegerrequirednumbernull | stringrequiredissueDatestringrequireddatenewDueDatenull | stringrequireddatedaysOverdueintegerrequiredoutstandingHalerintegerrequiredinterestHalerintegerrequiredratePercentnull | numberrequiredsubjectstringrequiredbodystringrequiredsentAtnull | stringrequireddate-timefileIdnull | stringrequiredSend the reminders due by today under each contact's reminder settings, in this workspace; safe to repeat. Sends nothing when e-mail is not configured
/v1/sales/reminders/run-dueSend the reminders due by today under each contact's reminder settings, in this workspace; safe to repeat. Sends nothing when e-mail is not configured
MCP tool: run-due-reminders
Request body
asOfstringYYYY-MM-DDResponse · 200
emailConfiguredbooleanrequiredcheckedintegerrequiredsentintegerrequiredskippedintegerrequirednoEmailintegerrequiredfailedintegerrequirederrorsobject[]requiredinvoiceIdnull | stringrequiredstagestringrequirederrornull | stringrequiredGet seller details and invoicing defaults printed on documents
/v1/sales/settingsGet seller details and invoicing defaults printed on documents
MCP tool: get-sales-settings
Response · 200
idnull | stringrequiredvatPayerbooleanrequirednamenull | stringrequirediconull | stringrequireddicnull | stringrequiredstreetnull | stringrequiredcitynull | stringrequiredpostalCodenull | stringrequiredcountrystringrequiredphonenull | stringrequiredemailnull | stringrequiredwebstring | nullrequiredregistrationstring | nullrequiredaccountNumbernull | stringrequiredbankCodenull | stringrequiredibannull | stringrequiredhasLogobooleanrequireddefaultDueDaysintegerrequiredreplyTonull | stringrequireddocumentFooterstring | nullrequiredautoAdvanceTaxDocumentbooleanrequiredmissingstring[]requiredautoConsumeOrdersbooleanUpdate seller address, bank account, VAT payer status, and invoicing defaults
/v1/sales/settingsUpdate seller address, bank account, VAT payer status, and invoicing defaults
MCP tool: update-sales-settings
Request body
autoConsumeOrdersbooleanvatPayerbooleandicstring | nullstreetstring | nullcitystring | nullpostalCodestring | nullcountrystring2 charsphonestring | nullemailstring | nullwebstring | nullregistrationstring | nullaccountNumberstring | nullbankCodestring | nullibanstring | nulldefaultDueDaysintegermin 0max 365replyTostring | nulldocumentFooterstring | nullautoAdvanceTaxDocumentbooleanResponse · 200
idnull | stringrequiredvatPayerbooleanrequirednamenull | stringrequirediconull | stringrequireddicnull | stringrequiredstreetnull | stringrequiredcitynull | stringrequiredpostalCodenull | stringrequiredcountrystringrequiredphonenull | stringrequiredemailnull | stringrequiredwebstring | nullrequiredregistrationstring | nullrequiredaccountNumbernull | stringrequiredbankCodenull | stringrequiredibannull | stringrequiredhasLogobooleanrequireddefaultDueDaysintegerrequiredreplyTonull | stringrequireddocumentFooterstring | nullrequiredautoAdvanceTaxDocumentbooleanrequiredmissingstring[]requiredautoConsumeOrdersbooleanUpload the logo printed on documents (PNG or JPEG, up to 1 MB)
/v1/sales/settings/logoUpload the logo printed on documents (PNG or JPEG, up to 1 MB)
MCP tool: upload-sales-logo
Request body
fileBase64stringrequiredcontentType"image/png" | "image/jpeg"requiredResponse · 200
idnull | stringrequiredvatPayerbooleanrequirednamenull | stringrequirediconull | stringrequireddicnull | stringrequiredstreetnull | stringrequiredcitynull | stringrequiredpostalCodenull | stringrequiredcountrystringrequiredphonenull | stringrequiredemailnull | stringrequiredwebstring | nullrequiredregistrationstring | nullrequiredaccountNumbernull | stringrequiredbankCodenull | stringrequiredibannull | stringrequiredhasLogobooleanrequireddefaultDueDaysintegerrequiredreplyTonull | stringrequireddocumentFooterstring | nullrequiredautoAdvanceTaxDocumentbooleanrequiredmissingstring[]requiredautoConsumeOrdersbooleanList mutual set-offs (vzájemné zápočty)
/v1/set-offsList mutual set-offs (vzájemné zápočty)
MCP tool: list-set-offs
Query parameters
limitintegermin 1max 500offsetintegermin 0max 9007199254740991searchstringmax 200 charsfromstringYYYY-MM-DDtostringYYYY-MM-DDcontactIdstringstatus"posted" | "storno"Response · 200
dataobject[]requiredobject"set_off"requiredidstringrequirednumberstringrequiredcontactIdstringrequiredcontactNamestringrequiredsetOffOnstringrequireddatebasisstringrequiredcurrencystringrequiredexchangeRatenull | numberrequiredamountHalerintegerrequirednotestring | nullrequiredstatusstringrequiredcreatedAtstringrequireddate-timeitemsobject[]requiredobject"set_off_item"requiredidstringrequiredsidestringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatedocumentTotalHalerintegerrequiredamountHalerintegerrequiredremainingHalerintegerrequiredwarningsobject[]receivedInvoiceIdnull | stringrequirednumberstringrequiredcontactNamestringrequiredstatusnull | stringrequiredwarningsobject[]requiredcodenull | stringrequiredlevelstringrequiredreasonnull | stringrequiredliabilitystringtotalintegerhasMorebooleanrequiredSet off receivables and payables of one contact. Each document shows as settled in that amount; 395 ends on zero
/v1/set-offsSet off receivables and payables of one contact. Each document shows as settled in that amount; 395 ends on zero. Amounts may be left out: the smaller side goes in whole and the other covers it, oldest due date first. VAT does not change. A declaration needs our claim to be due (§ 1982 OZ); an agreement does not. The answer lists warnings about an unreliable VAT payer among the supplier's invoices and advances (§ 109 ZDPH), as a payment order does, without the account check; they never block.
MCP tool: create-set-off
Request body
contactIdstringrequiredseriesIdstringsetOffOnstringrequiredYYYY-MM-DDbasis"agreement" | "declaration"exchangeRatenumbernotestring | nullitemsobject[]requiredkind"invoice" | "debit_note" | "other_receivable" | "received_invoice" | "credit_note" | "other_payable" | "proforma" | "supplier_advance"requireddocumentIdstringrequiredamountHalerintegermax 9007199254740991Response · 201
idstringrequirednumberstringrequiredcontactIdstringrequiredcontactNamestringrequiredsetOffOnstringrequireddatebasisstringrequiredcurrencystringrequiredexchangeRatenull | numberrequiredamountHalerintegerrequirednotestring | nullrequiredstatusstringrequiredcreatedAtstringrequireddate-timeitemsobject[]requiredobject"set_off_item"requiredidstringrequiredsidestringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatedocumentTotalHalerintegerrequiredamountHalerintegerrequiredremainingHalerintegerrequiredwarningsobject[]receivedInvoiceIdnull | stringrequirednumberstringrequiredcontactNamestringrequiredstatusnull | stringrequiredwarningsobject[]requiredcodenull | stringrequiredlevelstringrequiredreasonnull | stringrequiredliabilitystringGet a set-off with its documents
/v1/set-offs/{id}Get a set-off with its documents
MCP tool: get-set-off
Path parameters
idstringrequiredResponse · 200
idstringrequirednumberstringrequiredcontactIdstringrequiredcontactNamestringrequiredsetOffOnstringrequireddatebasisstringrequiredcurrencystringrequiredexchangeRatenull | numberrequiredamountHalerintegerrequirednotestring | nullrequiredstatusstringrequiredcreatedAtstringrequireddate-timeitemsobject[]requiredobject"set_off_item"requiredidstringrequiredsidestringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatedocumentTotalHalerintegerrequiredamountHalerintegerrequiredremainingHalerintegerrequiredwarningsobject[]receivedInvoiceIdnull | stringrequirednumberstringrequiredcontactNamestringrequiredstatusnull | stringrequiredwarningsobject[]requiredcodenull | stringrequiredlevelstringrequiredreasonnull | stringrequiredliabilitystringDownload the printed set-off agreement or declaration, ready to sign
/v1/set-offs/{id}/pdfDownload the printed set-off agreement or declaration, ready to sign
MCP tool: download-set-off-pdf
Path parameters
idstringrequiredResponse · 200
Returns a application/pdf file.
Cancel a set-off: its payments come off the documents and what they posted is reversed
/v1/set-offs/{id}/stornoCancel a set-off: its payments come off the documents and what they posted is reversed
IrreversibleThis operation cannot be undone. MCP clients ask for confirmation first.
MCP tool: storno-set-off
Path parameters
idstringrequiredResponse · 200
idstringrequirednumberstringrequiredcontactIdstringrequiredcontactNamestringrequiredsetOffOnstringrequireddatebasisstringrequiredcurrencystringrequiredexchangeRatenull | numberrequiredamountHalerintegerrequirednotestring | nullrequiredstatusstringrequiredcreatedAtstringrequireddate-timeitemsobject[]requiredobject"set_off_item"requiredidstringrequiredsidestringrequiredkindstringrequireddocumentIdstringrequireddocumentNumbernull | stringrequiredissueDatenull | stringrequireddatedueDatenull | stringrequireddatedocumentTotalHalerintegerrequiredamountHalerintegerrequiredremainingHalerintegerrequiredwarningsobject[]receivedInvoiceIdnull | stringrequirednumberstringrequiredcontactNamestringrequiredstatusnull | stringrequiredwarningsobject[]requiredcodenull | stringrequiredlevelstringrequiredreasonnull | stringrequiredliabilitystring