{"openapi":"3.1.0","info":{"title":"SimFa API","version":"1.1.0","summary":"Faktúry, kontakty a objednávky z e-shopu pre slovenské firmy.","description":"Verejné API SimFa: faktúry, zálohové faktúry, dobropisy, kontakty a objednávky z e-shopu. Platia tie isté pravidlá ako v appke: práva, kontroly dokladov, limity odosielania aj záznam v Aktivite.\n\n## Prihlásenie\nKaždá požiadavka nesie hlavičku `Authorization: Bearer simfa_live_…` (ostrá firma, Premium) alebo `simfa_test_…` (skúšobná firma). Kľúč sa zakladá v SimFa v Nastaveniach, v záložke Integrácie, a celý sa ukáže raz. Koná menom človeka, ktorý ho založil, s jeho rolou a len v oblastiach, ktoré dostal.\n\n## Oblasti\n| Oblasť | Čo dovolí |\n|---|---|\n| citanie | Čítať doklady a kontakty: Firma, faktúry, ponuky, dobropisy, kontakty, cenník a súbory dokladov (PDF, e-faktúra). |\n| koncepty | Pripravovať koncepty: Založiť a upraviť koncept faktúry či dobropisu. Nič sa tým nevystaví ani neodošle. |\n| vystavovanie | Vystavovať doklady: Koncept vystaví a pridelí mu číslo. Vystavená faktúra sa nedá zmazať, opraviť sa dá dobropisom. |\n| odosielanie | Posielať doklady: Pošle faktúru cez Peppol alebo e-mailom. O každom odoslaní príde upozornenie. |\n| platby | Zapisovať platby: Zapíše úhradu k faktúre. |\n| kontakty | Spravovať kontakty: Založiť a upraviť odberateľa. |\n| prijate | Prijaté faktúry: Nahrať prijatý doklad na vyťaženie a prečítať prijaté faktúry. |\n| banka | Banka: Čítať pohyby na bankových účtoch firmy. |\n| webhooky | Webhooky: Spravovať adresy, na ktoré SimFa posiela udalosti. |\n\n## Sumy a dátumy\nSumy sú desatinné reťazce s dvoma miestami v mene dokladu (`\"65.25\"`), na vstupe aj číslo s najviac dvoma desatinnými miestami. Dátumy sú RRRR-MM-DD, časy ISO 8601 v UTC.\n\n## Limity\nNa kľúč 120 požiadaviek za minútu, na firmu 600 spolu za všetky kľúče, PDF a odoslanie 20. Odpoveď nesie hlavičky `RateLimit-Policy` a `RateLimit`, pri prekročení príde 429 s `Retry-After`.\n\n## Idempotencia\nPOST operácie, ktoré to majú v popise, prijímajú hlavičku `Idempotency-Key` (napríklad UUID). Opakovaná požiadavka s tým istým kľúčom a telom do 24 hodín vráti prvú odpoveď s hlavičkou `Idempotent-Replayed: true`, súbežná dostane 409 a iné telo 422.\n\n## Stránkovanie\nZoznamy vracajú `data`, `has_more` a `next_cursor`. Ďalšiu stranu dá parameter `cursor`, `updated_since` vráti len záznamy zmenené od daného času a `order=asc` ich dá od najstaršej zmeny, aby sa pri dobiehaní nič nepreskočilo.\n\n## Chyby\nChyby majú tvar `application/problem+json` (RFC 9457): `code` pre program a `detail`, vetu po slovensky, ktorú môže integrácia ukázať človeku. Chyby vstupu sú všetky naraz v `errors`.\n\n| Kód | Stav | Význam |\n|---|---|---|\n| unauthorized | 401 | Chýba platný API kľúč |\n| missing_scope | 403 | Kľúč nemá potrebnú oblasť |\n| forbidden | 403 | Prístup zamietnutý |\n| plan_required | 403 | Ostrý kľúč potrebuje Premium |\n| test_key_live_company | 403 | Testovací kľúč patrí len skúšobnej firme |\n| not_found | 404 | Záznam neexistuje |\n| invalid_request | 400 | Neplatná požiadavka |\n| conflict | 409 | Stav záznamu to nedovoľuje |\n| duplicate_order | 409 | Objednávka už má doklad |\n| idempotency_in_progress | 409 | Rovnaká požiadavka sa ešte spracúva |\n| idempotency_mismatch | 422 | Kľúč idempotencie už patrí inej požiadavke |\n| order_stopped | 422 | Z objednávky doklad nevznikne |\n| not_sent | 422 | Doklad neodišiel žiadnou cestou |\n| rate_limited | 429 | Priveľa požiadaviek |\n| server_error | 500 | Chyba na strane SimFa |\n\n## Webhooky\nUdalosti (napríklad `invoice.paid`) posiela SimFa na adresy firmy podľa otvoreného štandardu Standard Webhooks: hlavičky `webhook-id` (id udalosti, pri opakovaní to isté), `webhook-timestamp` a `webhook-signature` (`v1,` a HMAC-SHA256 v base64 z reťazca `id.timestamp.telo`, kľúčom sú bajty tajomstva za `whsec_` z base64). Overíš ich hotovou knižnicou štandardu v JS, Pythone, PHP aj Go.\n\nPrijímač odpovie kódom 2xx do 15 sekúnd, presmerovanie nenasledujeme. Neúspešnú správu skúsime znova po 1 min, 5 min, 30 min, 2 h, 6 h, 12 h, 24 h a 24 h, spolu takmer 3 dni. Adresu, ktorá za ten čas neprijme nič alebo odpovie 410, vypneme a majiteľ firmy dostane e-mail. Doručenie je aspoň raz a poradie nie je zaručené: rovnaké `webhook-id` spracuj len raz.\n\nPo rotácii platí predošlé tajomstvo ešte 24 hodín a správy nesú oba podpisy. Firma má najviac 10 adries. Udalosti sú 30 dní aj v `GET /v1/events`.\n\n## Verzie\nZmena, ktorá by rozbila integráciu, príde v novej verzii (`/v2`). Stará verzia potom platí ešte aspoň 12 mesiacov a jej odpovede nesú hlavičku `Sunset`. Nové polia v odpovedi a nové operácie pribúdajú bez novej verzie, integrácia má neznáme polia ignorovať.","contact":{"name":"SimFa","email":"ahoj@simfa.sk","url":"https://simfa.sk/vyvojari"}},"servers":[{"url":"https://api.simfa.sk","description":"Ostrá aj skúšobná firma, podľa kľúča."}],"security":[{"apiKey":[]}],"tags":[{"name":"Firma"},{"name":"Kontakty"},{"name":"Faktúry a dobropisy"},{"name":"Objednávky z e-shopu"},{"name":"Udalosti a webhooky"}],"externalDocs":{"url":"https://simfa.sk/vyvojari","description":"Dokumentácia a návody"},"paths":{"/v1/company":{"get":{"operationId":"company.get","summary":"Firma kľúča","description":"Údaje firmy, ku ktorej kľúč patrí: názov, IČO, DIČ, IČ DPH, adresa a platiteľstvo DPH.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Firma"],"security":[{"apiKey":["citanie"]}],"responses":{"200":{"description":"Firma kľúča.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"},"example":{"id":"cmf0firma00000000000000001","object":"company","name":"Stolárstvo Javor s.r.o.","ico":"59123451","dic":"2029123451","ic_dph":"SK2029123451","vat_payer":true,"street":"Hlavná 12","city":"Žilina","zip":"010 01","country":"SK","iban":"SK3112000000198742637541","email":"faktury@javor.example","peppol_id":"9950:SK2029123451","default_due_days":14,"invoice_language":"SK","plan":"premium","sandbox":false}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/contacts":{"get":{"operationId":"contacts.list","summary":"Zoznam kontaktov","description":"Odberatelia firmy, aj vyhľadanie podľa IČO, mena alebo `external_id`.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Kontakty"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Order"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/UpdatedSince"},{"$ref":"#/components/parameters/Source"},{"$ref":"#/components/parameters/ExternalId"},{"$ref":"#/components/parameters/ContactQuery"},{"$ref":"#/components/parameters/Ico"}],"responses":{"200":{"description":"Strana kontaktov.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactList"},"example":{"object":"list","data":[{"id":"cmf0kontakt000000000000001","object":"contact","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"email":"jana.kovacova@example.com","phone":"+421 900 123 456","person":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","iban":null,"peppol_id":null,"note":null,"external_id":"77","source":"woocommerce","created_at":"2026-10-16T08:12:30.000Z","updated_at":"2026-10-16T08:12:30.000Z"}],"has_more":true,"next_cursor":"eyJwbyI6ImNtZjBkb2tsYWQwMDAwMDAwMDAwMDAwMDAwMSIsInNtZXIiOiJkZXNjIn0"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"operationId":"contacts.create","summary":"Založiť kontakt","description":"Nový odberateľ. S `external_id` a `source` sa ten istý kontakt z e-shopu nezaloží dvakrát.\n\nOblasti kľúča: Spravovať kontakty (kontakty).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Kontakty"],"security":[{"apiKey":["kontakty"]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactInput"},"example":{"name":"Stavby Horizont s.r.o.","ico":"59456787","email":"uctaren@horizont.example","city":"Trnava","country":"SK","external_id":"310","source":"crm"}}}},"responses":{"200":{"description":"Kontakt s tým istým IČO alebo číslom z integrácie už bol, vráti sa on.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"},"example":{"id":"cmf0kontakt000000000000001","object":"contact","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"email":"jana.kovacova@example.com","phone":"+421 900 123 456","person":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","iban":null,"peppol_id":null,"note":null,"external_id":"77","source":"woocommerce","created_at":"2026-10-16T08:12:30.000Z","updated_at":"2026-10-16T08:12:30.000Z"}}}},"201":{"description":"Nový kontakt.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"},"example":{"id":"cmf0kontakt000000000000001","object":"contact","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"email":"jana.kovacova@example.com","phone":"+421 900 123 456","person":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","iban":null,"peppol_id":null,"note":null,"external_id":"77","source":"woocommerce","created_at":"2026-10-16T08:12:30.000Z","updated_at":"2026-10-16T08:12:30.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/contacts/{id}":{"get":{"operationId":"contacts.get","summary":"Kontakt","description":"Jeden odberateľ s adresou a údajmi na doklad.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Kontakty"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Kontakt.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"},"example":{"id":"cmf0kontakt000000000000001","object":"contact","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"email":"jana.kovacova@example.com","phone":"+421 900 123 456","person":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","iban":null,"peppol_id":null,"note":null,"external_id":"77","source":"woocommerce","created_at":"2026-10-16T08:12:30.000Z","updated_at":"2026-10-16T08:12:30.000Z"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"operationId":"contacts.update","summary":"Upraviť kontakt","description":"Zmení len polia, ktoré požiadavka nesie.\n\nOblasti kľúča: Spravovať kontakty (kontakty).","tags":["Kontakty"],"security":[{"apiKey":["kontakty"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContactUpdate"},"example":{"email":"fakturacia@horizont.example"}}}},"responses":{"200":{"description":"Upravený kontakt.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Contact"},"example":{"id":"cmf0kontakt000000000000001","object":"contact","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"email":"jana.kovacova@example.com","phone":"+421 900 123 456","person":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","iban":null,"peppol_id":null,"note":null,"external_id":"77","source":"woocommerce","created_at":"2026-10-16T08:12:30.000Z","updated_at":"2026-10-16T08:12:30.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices":{"get":{"operationId":"invoices.list","summary":"Zoznam dokladov","description":"Faktúry, zálohové faktúry a dobropisy od najnovšej zmeny; `updated_since` vráti len zmenené.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Order"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/UpdatedSince"},{"$ref":"#/components/parameters/Source"},{"$ref":"#/components/parameters/ExternalId"},{"$ref":"#/components/parameters/InvoiceType"},{"$ref":"#/components/parameters/InvoiceStatus"},{"$ref":"#/components/parameters/InvoiceNumber"}],"responses":{"200":{"description":"Strana dokladov bez riadkov; riadky dá detail.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceList"},"example":{"object":"list","data":[{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"}}],"has_more":true,"next_cursor":"eyJwbyI6ImNtZjBkb2tsYWQwMDAwMDAwMDAwMDAwMDAwMSIsInNtZXIiOiJkZXNjIn0"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"operationId":"invoices.create","summary":"Založiť koncept","description":"Koncept faktúry alebo zálohovej faktúry. Ceny môžu byť s DPH (`prices_include_vat`), súčet potom sedí na cent so zaplatenou sumou.\n\nOblasti kľúča: Pripravovať koncepty (koncepty).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["koncepty"]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceInput"},"example":{"customer":{"name":"Stavby Horizont s.r.o.","ico":"59456787","email":"uctaren@horizont.example","street":"Priemyselná 8","city":"Trnava","zip":"917 01","country":"SK"},"due_days":14,"lines":[{"name":"Výroba schodiska na mieru","quantity":1,"unit_price":"1850.00","vat_rate":23},{"name":"Montáž","quantity":6,"unit":"hod","unit_price":"35.00","vat_rate":23,"discount":{"type":"percent","value":"10"}}],"note":"Ďakujeme za objednávku."}}}},"responses":{"201":{"description":"Nový koncept.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}":{"get":{"operationId":"invoices.get","summary":"Doklad","description":"Doklad s položkami, súčtami po sadzbách DPH, úhradami a odkazmi na súbory.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Doklad s riadkami.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"},"example":{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"lines":[{"kind":"item","name":"Dubová doska 120 x 40 cm","quantity":1,"unit":"ks","unit_price":"41.46","unit_price_with_vat":"51.00","vat_rate":23,"discount":null,"net_amount":"41.46","vat_amount":"9.54","gross_amount":"51.00","reverse_charge":false,"exemption_reason":null,"price_item_id":null},{"kind":"item","name":"Kniha Stolárske spoje","quantity":1,"unit":"ks","unit_price":"13.57","unit_price_with_vat":"14.25","vat_rate":5,"discount":null,"net_amount":"13.57","vat_amount":"0.68","gross_amount":"14.25","reverse_charge":false,"exemption_reason":null,"price_item_id":null}],"vat_breakdown":[{"rate":23,"net":"41.46","vat":"9.54"},{"rate":5,"net":"13.57","vat":"0.68"}],"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"operationId":"invoices.update","summary":"Upraviť koncept","description":"Zmení koncept; vystavený doklad sa opravuje dobropisom.\n\nOblasti kľúča: Pripravovať koncepty (koncepty).","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["koncepty"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceUpdate"},"example":{"due_days":30}}}},"responses":{"200":{"description":"Upravený koncept.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/issue":{"post":{"operationId":"invoices.issue","summary":"Vystaviť","description":"Vystaví koncept a pridelí mu číslo z radu firmy.\n\nOblasti kľúča: Vystavovať doklady (vystavovanie).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["vystavovanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"},{"$ref":"#/components/parameters/IdempotencyKey"}],"responses":{"200":{"description":"Vystavený doklad s číslom.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/send":{"post":{"operationId":"invoices.send","summary":"Poslať","description":"Pošle vystavený doklad cez Peppol, keď ho odberateľ prijíma, inak e-mailom. Platia tie isté stropy ako v appke.\n\nOblasti kľúča: Posielať doklady (odosielanie).\n\nPrijíma hlavičku Idempotency-Key.\n\nŤažká operácia: najviac 20 za minútu na kľúč.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["odosielanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"},{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendInput"},"example":{"channels":["email"]}}}},"responses":{"200":{"description":"Doklad odišiel aspoň jednou cestou; výsledok každej je v delivery.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"},"example":{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"lines":[{"kind":"item","name":"Dubová doska 120 x 40 cm","quantity":1,"unit":"ks","unit_price":"41.46","unit_price_with_vat":"51.00","vat_rate":23,"discount":null,"net_amount":"41.46","vat_amount":"9.54","gross_amount":"51.00","reverse_charge":false,"exemption_reason":null,"price_item_id":null},{"kind":"item","name":"Kniha Stolárske spoje","quantity":1,"unit":"ks","unit_price":"13.57","unit_price_with_vat":"14.25","vat_rate":5,"discount":null,"net_amount":"13.57","vat_amount":"0.68","gross_amount":"14.25","reverse_charge":false,"exemption_reason":null,"price_item_id":null}],"vat_breakdown":[{"rate":23,"net":"41.46","vat":"9.54"},{"rate":5,"net":"13.57","vat":"0.68"}],"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"},"delivery":{"results":[{"channel":"email","status":"sent","reason":null,"copy":false,"will_retry":false,"peppol_status":null}]}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"description":"Doklad neodišiel žiadnou cestou (not_sent, dôvod v detail a results), alebo iné telo s tým istým kľúčom.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"example":{"type":"https://simfa.sk/vyvojari/chyby#not_sent","title":"Doklad neodišiel žiadnou cestou","status":422,"detail":"Klient nedal súhlas so zasielaním e-mailom, vyžiadaj si ho v kontakte.","code":"not_sent","results":[{"channel":"email","status":"not_sent","reason":"Klient nedal súhlas so zasielaním e-mailom, vyžiadaj si ho v kontakte.","copy":false,"will_retry":false,"peppol_status":null}],"request_id":"req_7Hq2kL9xV1"}}}},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/payments":{"post":{"operationId":"invoices.payments.create","summary":"Zapísať úhradu","description":"Úhrada k vystavenej faktúre; po úhrade celej sumy je faktúra uhradená.\n\nOblasti kľúča: Zapisovať platby (platby).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["platby"]}],"parameters":[{"$ref":"#/components/parameters/Id"},{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentInput"},"example":{"amount":"65.25","paid_on":"2026-10-16","method":"bank_transfer"}}}},"responses":{"201":{"description":"Doklad po úhrade.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/credit_note":{"post":{"operationId":"invoices.credit_note","summary":"Dobropis","description":"Koncept dobropisu na celú faktúru; úpravou konceptu sa zmenší na vrátené položky, zľavy sa prepočítajú.\n\nOblasti kľúča: Pripravovať koncepty (koncepty).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["koncepty"]}],"parameters":[{"$ref":"#/components/parameters/Id"},{"$ref":"#/components/parameters/IdempotencyKey"}],"responses":{"201":{"description":"Koncept dobropisu.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Invoice"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/pdf":{"get":{"operationId":"invoices.pdf","summary":"PDF","description":"PDF dokladu, ako ho dostane klient.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).\n\nŤažká operácia: najviac 20 za minútu na kľúč.","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"PDF dokladu.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/invoices/{id}/ubl":{"get":{"operationId":"invoices.ubl","summary":"E-faktúra (UBL)","description":"E-faktúra vo formáte UBL 2.1 podľa EN 16931 a Peppol BIS 3.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Faktúry a dobropisy"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"E-faktúra UBL 2.1.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/xml":{"schema":{"type":"string","format":"binary"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/orders":{"post":{"operationId":"orders.create","summary":"Objednávka z e-shopu","description":"Z objednávky spraví doklad podľa platby: kartou uhradenú faktúru, pri prevode zálohovú, pri dobierke faktúru pri odoslaní. Zopakovaná objednávka doklad nezdvojí.\n\nOblasti kľúča: Pripravovať koncepty (koncepty), Vystavovať doklady (vystavovanie), Zapisovať platby (platby).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Objednávky z e-shopu"],"security":[{"apiKey":["koncepty","vystavovanie","platby"]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderInput"},"example":{"external_id":"1042","source":"woocommerce","currency":"EUR","payment_method":"card","paid":true,"paid_on":"2026-10-16","customer":{"name":"Jana Kováčová","email":"jana.kovacova@example.com","street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK","external_id":"77"},"lines":[{"external_id":"501","name":"Dubová doska 120 x 40 cm","quantity":1,"unit_price":"51.00","vat_rate":23},{"external_id":"502","name":"Kniha Stolárske spoje","quantity":1,"unit_price":"14.25","vat_rate":5}],"total":"65.25"}}}},"responses":{"201":{"description":"Doklad z objednávky.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderResult"},"example":{"object":"order_result","status":"paid","document_type":"invoice","issue_on":"now","warnings":[],"invoice":{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"lines":[{"kind":"item","name":"Dubová doska 120 x 40 cm","quantity":1,"unit":"ks","unit_price":"41.46","unit_price_with_vat":"51.00","vat_rate":23,"discount":null,"net_amount":"41.46","vat_amount":"9.54","gross_amount":"51.00","reverse_charge":false,"exemption_reason":null,"price_item_id":null},{"kind":"item","name":"Kniha Stolárske spoje","quantity":1,"unit":"ks","unit_price":"13.57","unit_price_with_vat":"14.25","vat_rate":5,"discount":null,"net_amount":"13.57","vat_amount":"0.68","gross_amount":"14.25","reverse_charge":false,"exemption_reason":null,"price_item_id":null}],"vat_breakdown":[{"rate":23,"net":"41.46","vat":"9.54"},{"rate":5,"net":"13.57","vat":"0.68"}],"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"}}}}}},"202":{"description":"Objednávka čaká na platbu.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderWaiting"},"example":{"object":"order_result","status":"waiting_for_payment","message":"Objednávka ešte nie je zaplatená. Faktúra vznikne, keď e-shop potvrdí platbu."}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Objednávka už má doklad (duplicate_order) alebo sa spracúva.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"example":{"type":"https://simfa.sk/vyvojari/chyby#duplicate_order","title":"Objednávka už má doklad","status":409,"detail":"Objednávka 1042 už má doklad 2026-0411, druhý nevznikne.","code":"duplicate_order","invoice_id":"cmf0doklad0000000000000001","request_id":"req_7Hq2kL9xV1"}}}},"422":{"description":"Z objednávky doklad nevznikne (order_stopped), alebo iné telo s tým istým kľúčom.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"example":{"type":"https://simfa.sk/vyvojari/chyby#order_stopped","title":"Z objednávky doklad nevznikne","status":422,"detail":"Objednávka má DPH krajiny CZ (OSS). SimFa OSS zatiaľ nevie, faktúru k nej vystav v e-shope.","code":"order_stopped","reason":"OSS","request_id":"req_7Hq2kL9xV1"}}}},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/events":{"get":{"operationId":"events.list","summary":"Zoznam udalostí","description":"Udalosti firmy za posledných 30 dní, tie isté, aké chodia na webhooky. Zmeškané dobehneš s order=asc od posledného kurzora. Udalosti prijatých dokladov vidí len kľúč s oblasťou prijate.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Order"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/EventType"},{"$ref":"#/components/parameters/CreatedSince"}],"responses":{"200":{"description":"Strana udalostí; poradie je poradie zverejnenia.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventList"},"example":{"object":"list","data":[{"id":"evt_mgu7k2x1aQ4tR9sLm2Xb7Kp0Z","object":"event","type":"invoice.paid","timestamp":"2026-10-16T08:12:32.000Z","company_id":"cmf0firma00000000000000001","data":{"object":{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"}},"url":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001","details":{"payment":{"id":"cmf0uhrada0000000000000001","amount":"65.25","amount_in_currency":null,"date":"2026-10-16","method":"card","source":"manual"}}}}],"has_more":true,"next_cursor":"eyJwbyI6ImNtZjBkb2tsYWQwMDAwMDAwMDAwMDAwMDAwMSIsInNtZXIiOiJkZXNjIn0"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/events/{id}":{"get":{"operationId":"events.get","summary":"Udalosť","description":"Jedna udalosť podľa id (evt_…), napríklad na overenie prijatého webhooku.\n\nOblasti kľúča: Čítať doklady a kontakty (citanie).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["citanie"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Udalosť.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"},"example":{"id":"evt_mgu7k2x1aQ4tR9sLm2Xb7Kp0Z","object":"event","type":"invoice.paid","timestamp":"2026-10-16T08:12:32.000Z","company_id":"cmf0firma00000000000000001","data":{"object":{"id":"cmf0doklad0000000000000001","object":"invoice","type":"invoice","number":"2026-0411","status":"paid","payment_status":"paid","issue_date":"2026-10-16","due_date":"2026-10-30","delivery_date":"2026-10-16","currency":"EUR","exchange_rate":null,"exchange_rate_date":null,"prices_include_vat":true,"vat_payer":true,"tax_regime":"standard","customer":{"contact_id":"cmf0kontakt000000000000001","name":"Jana Kováčová","ico":null,"dic":null,"ic_dph":null,"street":"Mierová 5","city":"Bratislava","zip":"821 05","country":"SK"},"document_discount":null,"totals":{"net":"55.03","vat":"10.22","gross":"65.25","paid":"65.25","due":"0.00"},"totals_eur":null,"variable_symbol":"20260411","payment_method":"card","iban":"SK3112000000198742637541","language":"SK","note":"Objednávka 1042.","buyer_reference":null,"related_invoice_id":null,"external_id":"1042","source":"woocommerce","sent_at":null,"created_at":"2026-10-16T08:12:31.000Z","updated_at":"2026-10-16T08:12:32.000Z","links":{"pdf":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/pdf","ubl":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001/ubl"}},"url":"https://api.simfa.sk/v1/invoices/cmf0doklad0000000000000001","details":{"payment":{"id":"cmf0uhrada0000000000000001","amount":"65.25","amount_in_currency":null,"date":"2026-10-16","method":"card","source":"manual"}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/webhook_endpoints":{"get":{"operationId":"webhook_endpoints.list","summary":"Adresy webhookov","description":"Adresy firmy, na ktoré SimFa posiela udalosti, so stavom a odoberanými udalosťami.\n\nOblasti kľúča: Webhooky (webhooky).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"responses":{"200":{"description":"Adresy firmy, najviac desať.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointList"},"example":{"object":"list","data":[{"id":"cmf0webhook000000000000001","object":"webhook_endpoint","url":"https://hooks.priklad.example/simfa","description":"E-shop","events":["invoice.paid","invoice.overdue"],"status":"enabled","disabled_reason":null,"secret_preview":"whsec_Q4tR••••","previous_secret_valid_until":null,"last_success_at":"2026-10-16T08:12:33.000Z","pending_deliveries":0,"created_at":"2026-10-16T08:00:00.000Z"}],"has_more":false,"next_cursor":null}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"operationId":"webhook_endpoints.create","summary":"Pridať adresu","description":"Nová adresa s udalosťami, ktoré má dostávať; odpoveď raz ukáže tajomstvo na overenie podpisu. Kľúč smie odoberať len udalosti svojich oblastí. Takto sa prihlasujú spúšťače Make a Zapier (REST hook).\n\nOblasti kľúča: Webhooky (webhooky).\n\nPrijíma hlavičku Idempotency-Key.","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointInput"},"example":{"url":"https://hooks.priklad.example/simfa","events":["invoice.paid","invoice.overdue"],"description":"E-shop"}}}},"responses":{"201":{"description":"Nová adresa; tajomstvo sa ukáže len teraz.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointCreated"},"example":{"id":"cmf0webhook000000000000001","object":"webhook_endpoint","url":"https://hooks.priklad.example/simfa","description":"E-shop","events":["invoice.paid","invoice.overdue"],"status":"enabled","disabled_reason":null,"secret_preview":"whsec_Q4tR••••","previous_secret_valid_until":null,"last_success_at":null,"pending_deliveries":0,"created_at":"2026-10-16T08:00:00.000Z","secret":"whsec_TOTO+JE+LEN+PRIKLAD+SKUTOCNE+SA+UKAZE+RAZ0000"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/IdempotencyMismatch"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/webhook_endpoints/{id}":{"get":{"operationId":"webhook_endpoints.get","summary":"Adresa webhooku","description":"Jedna adresa so stavom, dôvodom vypnutia a počtom čakajúcich udalostí.\n\nOblasti kľúča: Webhooky (webhooky).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Adresa webhooku.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpoint"},"example":{"id":"cmf0webhook000000000000001","object":"webhook_endpoint","url":"https://hooks.priklad.example/simfa","description":"E-shop","events":["invoice.paid","invoice.overdue"],"status":"enabled","disabled_reason":null,"secret_preview":"whsec_Q4tR••••","previous_secret_valid_until":null,"last_success_at":"2026-10-16T08:12:33.000Z","pending_deliveries":0,"created_at":"2026-10-16T08:00:00.000Z"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"operationId":"webhook_endpoints.update","summary":"Upraviť adresu","description":"Zmení adresu, udalosti alebo popis, alebo adresu zapne či vypne. Znova zapnutá adresa začína odznova.\n\nOblasti kľúča: Webhooky (webhooky).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointUpdate"},"example":{"enabled":true}}}},"responses":{"200":{"description":"Upravená adresa.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpoint"},"example":{"id":"cmf0webhook000000000000001","object":"webhook_endpoint","url":"https://hooks.priklad.example/simfa","description":"E-shop","events":["invoice.paid","invoice.overdue"],"status":"enabled","disabled_reason":null,"secret_preview":"whsec_Q4tR••••","previous_secret_valid_until":null,"last_success_at":"2026-10-16T08:12:33.000Z","pending_deliveries":0,"created_at":"2026-10-16T08:00:00.000Z"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"operationId":"webhook_endpoints.delete","summary":"Zmazať adresu","description":"Adresa prestane dostávať udalosti hneď. Takto sa odhlasujú spúšťače Make a Zapier.\n\nOblasti kľúča: Webhooky (webhooky).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Zmazaná adresa.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointDeleted"},"example":{"id":"cmf0webhook000000000000001","object":"webhook_endpoint","deleted":true}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/webhook_endpoints/{id}/rotate_secret":{"post":{"operationId":"webhook_endpoints.rotate_secret","summary":"Nové tajomstvo","description":"Nové tajomstvo platí hneď, predošlé ešte 24 hodín: správy dovtedy nesú podpis oboma, prijímač stihne prejsť bez jedinej odmietnutej správy.\n\nOblasti kľúča: Webhooky (webhooky).","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"Nové tajomstvo; predošlé platí ešte 24 hodín.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookEndpointSecret"},"example":{"id":"cmf0webhook000000000000001","object":"webhook_endpoint_secret","secret":"whsec_TOTO+JE+LEN+PRIKLAD+SKUTOCNE+SA+UKAZE+RAZ0000","previous_secret_valid_until":"2026-10-17T08:00:00.000Z"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/v1/webhook_endpoints/{id}/test":{"post":{"operationId":"webhook_endpoints.test","summary":"Skúšobná udalosť","description":"Pošle na adresu skúšobnú udalosť zvoleného typu s test: true, podpísanú ako ostrá, a vráti odpoveď prijímača.\n\nOblasti kľúča: Webhooky (webhooky).\n\nŤažká operácia: najviac 20 za minútu na kľúč.","tags":["Udalosti a webhooky"],"security":[{"apiKey":["webhooky"]}],"parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookTestInput"},"example":{"type":"invoice.paid"}}}},"responses":{"200":{"description":"Odpoveď prijímača na skúšobnú udalosť.","headers":{"RateLimit-Policy":{"$ref":"#/components/headers/RateLimit-Policy"},"RateLimit":{"$ref":"#/components/headers/RateLimit"},"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookTestResult"},"example":{"object":"webhook_test","delivered":true,"status_code":200,"error":null,"duration_ms":182,"response":null}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}}},"webhooks":{"invoice.issued":{"post":{"operationId":"udalost_invoice_issued","summary":"Doklad vystavený","description":"Faktúra, zálohová faktúra alebo dobropis dostali číslo. Druh dokladu je v `data.object.type`.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"invoice.sent":{"post":{"operationId":"udalost_invoice_sent","summary":"Doklad odoslaný","description":"Doklad odišiel klientovi e-mailom, cez Peppol alebo SMS, aj ako upomienka. Cestu nesie `data.details.channel`, upomienku `data.details.reminder`.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"invoice.partially_paid":{"post":{"operationId":"udalost_invoice_partially_paid","summary":"Čiastočná úhrada","description":"K dokladu pribudla úhrada a ešte niečo ostáva zaplatiť. Úhradu nesie `data.details.payment`.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"invoice.paid":{"post":{"operationId":"udalost_invoice_paid","summary":"Doklad uhradený","description":"Doklad je celý uhradený, ručne, z banky aj cez API. Poslednú úhradu nesie `data.details.payment`.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"invoice.overdue":{"post":{"operationId":"udalost_invoice_overdue","summary":"Doklad po splatnosti","description":"Ráno po dni splatnosti, keď doklad ešte nie je celý uhradený. Raz pre každý dátum splatnosti.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"contact.created":{"post":{"operationId":"udalost_contact_created","summary":"Nový kontakt","description":"Odberateľ pribudol v appke, cez API alebo z e-shopu.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"contact.updated":{"post":{"operationId":"udalost_contact_updated","summary":"Kontakt upravený","description":"Zmenili sa údaje odberateľa.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"received_invoice.created":{"post":{"operationId":"udalost_received_invoice_created","summary":"Prijatý doklad","description":"Prišiel doklad od dodávateľa e-mailom, cez Peppol alebo nahratím. Duplicitu nesie `data.object.duplicate`.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}},"package.ready":{"post":{"operationId":"udalost_package_ready","summary":"Mesačný balík pre účtovníctvo","description":"Balík dokladov za mesiac je hotový. Nesie adresu odberu bez tokenu, nie súbor: token má program, ktorý balíky odoberá.\n\nHlavičky webhook-id, webhook-timestamp a webhook-signature podľa Standard Webhooks.","tags":["Udalosti a webhooky"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Event"}}}},"responses":{"200":{"description":"Prijaté; stačí ľubovoľný kód 2xx."}}}}},"components":{"securitySchemes":{"apiKey":{"type":"http","scheme":"bearer","bearerFormat":"simfa_live_… alebo simfa_test_…","description":"API kľúč z Nastavení, záložka Integrácie."}},"schemas":{"Amount":{"type":"string","pattern":"^-?\\d+\\.\\d{2}$","description":"Suma v mene dokladu ako desatinný reťazec s dvoma miestami.","examples":["65.25"]},"AmountInput":{"description":"Suma: reťazec alebo číslo s bodkou a najviac dvoma desatinnými miestami. Tri miesta či čiarka sú chyba, nie zaokrúhlenie.","anyOf":[{"type":"string","pattern":"^-?\\d{1,12}(\\.\\d{1,2})?$"},{"type":"number"}],"examples":["65.25"]},"Discount":{"type":"object","description":"Zľava na položku alebo na celý doklad.","properties":{"type":{"type":"string","description":"Percentom alebo sumou.","enum":["percent","amount"]},"value":{"type":"string","description":"Percento (napríklad \"10.00\") alebo suma (\"2.60\").","pattern":"^\\d+\\.\\d{2}$"}},"required":["type","value"],"additionalProperties":false},"DiscountInput":{"type":"object","description":"Zľava: { \"type\": \"percent\", \"value\": \"10\" } alebo { \"type\": \"amount\", \"value\": \"2.60\" }.","properties":{"type":{"type":"string","description":"Percentom alebo sumou.","enum":["percent","amount"]},"value":{"$ref":"#/components/schemas/AmountInput","description":"Percento od 0.01 do 100, alebo kladná suma."}},"required":["type","value"]},"Company":{"type":"object","description":"Firma, ku ktorej kľúč patrí.","properties":{"id":{"type":"string","description":"Id firmy."},"object":{"const":"company"},"name":{"type":"string","description":"Obchodné meno."},"ico":{"type":["string","null"],"description":"IČO."},"dic":{"type":["string","null"],"description":"DIČ."},"ic_dph":{"type":["string","null"],"description":"IČ DPH."},"vat_payer":{"type":"boolean","description":"Platiteľ DPH."},"street":{"type":["string","null"],"description":"Ulica a číslo."},"city":{"type":["string","null"],"description":"Obec."},"zip":{"type":["string","null"],"description":"PSČ."},"country":{"type":"string","description":"Krajina, ISO 3166-1 alpha-2."},"iban":{"type":["string","null"],"description":"Účet firmy na doklady."},"email":{"type":["string","null"],"description":"Kontaktný e-mail na dokladoch."},"peppol_id":{"type":["string","null"],"description":"Schránka v sieti Peppol, napríklad 9950:SK2029123459."},"default_due_days":{"type":["integer","null"],"description":"Predvolená splatnosť v dňoch."},"invoice_language":{"type":["string","null"],"description":"Predvolený jazyk dokladov."},"plan":{"type":"string","description":"Plán firmy.","enum":["free","premium"]},"sandbox":{"type":"boolean","description":"Skúšobná firma pre testovacie kľúče."}},"required":["id","object","name","ico","dic","ic_dph","vat_payer","street","city","zip","country","iban","email","peppol_id","default_due_days","invoice_language","plan","sandbox"],"additionalProperties":false},"Contact":{"type":"object","description":"Odberateľ firmy.","properties":{"id":{"type":"string","description":"Id kontaktu."},"object":{"const":"contact"},"name":{"type":"string","description":"Meno alebo obchodné meno."},"ico":{"type":["string","null"],"description":"IČO."},"dic":{"type":["string","null"],"description":"DIČ."},"ic_dph":{"type":["string","null"],"description":"IČ DPH."},"email":{"type":["string","null"],"description":"E-mail na doklady."},"phone":{"type":["string","null"],"description":"Telefón."},"person":{"type":["string","null"],"description":"Kontaktná osoba."},"street":{"type":["string","null"],"description":"Ulica a číslo."},"city":{"type":["string","null"],"description":"Obec."},"zip":{"type":["string","null"],"description":"PSČ."},"country":{"type":"string","description":"Krajina, ISO 3166-1 alpha-2."},"iban":{"type":["string","null"],"description":"Účet odberateľa."},"peppol_id":{"type":["string","null"],"description":"Schránka v sieti Peppol."},"note":{"type":["string","null"],"description":"Poznámka."},"external_id":{"type":["string","null"],"description":"Číslo v systéme integrácie."},"source":{"type":["string","null"],"description":"Zdroj integrácie."},"created_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"updated_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."}},"required":["id","object","name","ico","dic","ic_dph","email","phone","person","street","city","zip","country","iban","peppol_id","note","external_id","source","created_at","updated_at"],"additionalProperties":false},"ContactInput":{"type":"object","description":"Nový kontakt. S external_id a source sa ten istý kontakt nezaloží dvakrát: vráti sa existujúci (200).","properties":{"name":{"type":"string","description":"Meno alebo obchodné meno.","minLength":1,"maxLength":200},"ico":{"type":"string","description":"IČO.","maxLength":20},"dic":{"type":"string","description":"DIČ.","maxLength":20},"ic_dph":{"type":"string","description":"IČ DPH.","maxLength":20},"email":{"type":"string","description":"E-mail na doklady.","maxLength":254},"phone":{"type":"string","description":"Telefón.","maxLength":40},"person":{"type":"string","description":"Kontaktná osoba.","maxLength":200},"street":{"type":"string","description":"Ulica a číslo.","maxLength":200},"city":{"type":"string","description":"Obec.","maxLength":120},"zip":{"type":"string","description":"PSČ.","maxLength":20},"country":{"type":"string","description":"Krajina, ISO 3166-1 alpha-2.","minLength":2,"maxLength":2},"iban":{"type":"string","description":"Účet odberateľa.","maxLength":34},"peppol_id":{"type":"string","description":"Schránka v sieti Peppol.","maxLength":60},"note":{"type":"string","description":"Poznámka.","maxLength":2000},"external_id":{"description":"Číslo záznamu v systéme integrácie (objednávka, zákazník), najviac 100 znakov.","anyOf":[{"type":"string","minLength":1,"maxLength":100},{"type":"integer","minimum":0}]},"source":{"type":"string","description":"Zdroj integrácie, napríklad woocommerce: malé písmená, číslice, podčiarkovník a spojovník.","pattern":"^[a-z0-9_-]{1,40}$"}},"required":["name"]},"ContactUpdate":{"type":"object","description":"Úprava kontaktu: zmenia sa len polia v požiadavke. Číslo z integrácie sa nemení.","properties":{"name":{"type":"string","description":"Meno alebo obchodné meno.","minLength":1,"maxLength":200},"ico":{"type":"string","description":"IČO.","maxLength":20},"dic":{"type":"string","description":"DIČ.","maxLength":20},"ic_dph":{"type":"string","description":"IČ DPH.","maxLength":20},"email":{"type":"string","description":"E-mail na doklady.","maxLength":254},"phone":{"type":"string","description":"Telefón.","maxLength":40},"person":{"type":"string","description":"Kontaktná osoba.","maxLength":200},"street":{"type":"string","description":"Ulica a číslo.","maxLength":200},"city":{"type":"string","description":"Obec.","maxLength":120},"zip":{"type":"string","description":"PSČ.","maxLength":20},"country":{"type":"string","description":"Krajina, ISO 3166-1 alpha-2.","minLength":2,"maxLength":2},"iban":{"type":"string","description":"Účet odberateľa.","maxLength":34},"peppol_id":{"type":"string","description":"Schránka v sieti Peppol.","maxLength":60},"note":{"type":"string","description":"Poznámka.","maxLength":2000}},"required":[]},"ContactList":{"type":"object","description":"Strana kontaktov od najnovšej zmeny.","properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Contact"}},"has_more":{"type":"boolean","description":"Je ďalšia strana."},"next_cursor":{"type":["string","null"],"description":"Kurzor na ďalšiu stranu pre parameter cursor."}},"required":["object","data","has_more","next_cursor"],"additionalProperties":false},"InvoiceLine":{"type":"object","description":"Riadok dokladu.","properties":{"kind":{"type":"string","description":"Druh riadku: položka, zľava na doklad, odpočet zálohy alebo oprava DPH z rozdielu.","enum":["item","document_discount","advance_deduction","correction"]},"name":{"type":"string","description":"Názov položky."},"quantity":{"type":"number","description":"Množstvo."},"unit":{"type":["string","null"],"description":"Jednotka."},"unit_price":{"$ref":"#/components/schemas/Amount","description":"Cena za jednotku bez DPH."},"unit_price_with_vat":{"anyOf":[{"$ref":"#/components/schemas/Amount","description":"Cena za jednotku s DPH, keď doklad počíta z cien s DPH."},{"type":"null"}]},"vat_rate":{"type":"number","description":"Sadzba DPH v percentách."},"discount":{"anyOf":[{"$ref":"#/components/schemas/Discount"},{"type":"null"}]},"net_amount":{"$ref":"#/components/schemas/Amount","description":"Základ riadku."},"vat_amount":{"$ref":"#/components/schemas/Amount","description":"DPH riadku."},"gross_amount":{"$ref":"#/components/schemas/Amount","description":"Riadok s DPH."},"reverse_charge":{"type":"boolean","description":"Prenesenie daňovej povinnosti."},"exemption_reason":{"type":["string","null"],"description":"Dôvod oslobodenia od DPH."},"price_item_id":{"type":["string","null"],"description":"Položka cenníka SimFa."}},"required":["kind","name","quantity","unit","unit_price","unit_price_with_vat","vat_rate","discount","net_amount","vat_amount","gross_amount","reverse_charge","exemption_reason","price_item_id"],"additionalProperties":false},"InvoiceLineInput":{"type":"object","description":"Položka nového alebo upraveného dokladu.","properties":{"name":{"type":"string","description":"Názov položky.","minLength":1,"maxLength":200},"quantity":{"description":"Množstvo, kladné číslo najviac 1000000.","anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":1000000},{"type":"string"}]},"unit":{"type":"string","description":"Jednotka, predvolene ks.","maxLength":40},"unit_price":{"$ref":"#/components/schemas/AmountInput","description":"Cena za jednotku bez DPH, pri prices_include_vat s DPH."},"vat_rate":{"type":"integer","enum":[23,19,5,0],"description":"Sadzba DPH, predvolene 23."},"discount":{"anyOf":[{"$ref":"#/components/schemas/DiscountInput"},{"type":"null"}]},"exemption_reason":{"type":"string","description":"Dôvod oslobodenia od DPH.","maxLength":200},"reverse_charge":{"type":"boolean","description":"Prenesenie daňovej povinnosti na riadku."},"price_item_id":{"type":"string","description":"Položka cenníka SimFa."}},"required":["name","quantity","unit_price"]},"VatBreakdown":{"type":"object","description":"Súčet základu a DPH pri jednej sadzbe.","properties":{"rate":{"type":"number","description":"Sadzba DPH v percentách."},"net":{"$ref":"#/components/schemas/Amount"},"vat":{"$ref":"#/components/schemas/Amount"}},"required":["rate","net","vat"],"additionalProperties":false},"Totals":{"type":"object","description":"Súčty v mene dokladu: základ, DPH, spolu, uhradené a zostáva.","properties":{"net":{"$ref":"#/components/schemas/Amount"},"vat":{"$ref":"#/components/schemas/Amount"},"gross":{"$ref":"#/components/schemas/Amount"},"paid":{"$ref":"#/components/schemas/Amount"},"due":{"$ref":"#/components/schemas/Amount"}},"required":["net","vat","gross","paid","due"],"additionalProperties":false},"TotalsEur":{"type":"object","description":"Súčty v eurách pri doklade v cudzej mene.","properties":{"net":{"$ref":"#/components/schemas/Amount"},"vat":{"$ref":"#/components/schemas/Amount"},"gross":{"$ref":"#/components/schemas/Amount"}},"required":["net","vat","gross"],"additionalProperties":false},"Customer":{"type":"object","description":"Odberateľ tak, ako je na doklade.","properties":{"contact_id":{"type":["string","null"],"description":"Id kontaktu."},"name":{"type":"string","description":"Meno odberateľa na doklade."},"ico":{"type":["string","null"],"description":"IČO."},"dic":{"type":["string","null"],"description":"DIČ."},"ic_dph":{"type":["string","null"],"description":"IČ DPH."},"street":{"type":["string","null"],"description":"Ulica a číslo."},"city":{"type":["string","null"],"description":"Obec."},"zip":{"type":["string","null"],"description":"PSČ."},"country":{"type":["string","null"],"description":"Krajina, ISO 3166-1 alpha-2."}},"required":["contact_id","name","ico","dic","ic_dph","street","city","zip","country"],"additionalProperties":false},"DeliveryResult":{"type":"object","description":"Výsledok odoslania jednou cestou.","properties":{"channel":{"type":"string","description":"Cesta.","enum":["peppol","email"]},"status":{"type":"string","description":"Odišiel, odišiel už skôr, alebo neodišiel.","enum":["sent","already_sent","not_sent"]},"reason":{"type":["string","null"],"description":"Prečo neodišiel, veta pre človeka."},"copy":{"type":"boolean","description":"E-mail išiel ako kópia, originál cez Peppol."},"will_retry":{"type":"boolean","description":"Neodišiel, ale SimFa to skúsi znova sama."},"peppol_status":{"type":["string","null"],"description":"Stav v sieti Peppol od poskytovateľa."}},"required":["channel","status","reason","copy","will_retry","peppol_status"],"additionalProperties":false},"Delivery":{"type":"object","description":"Odoslanie dokladu po cestách, len v odpovedi na invoices.send.","properties":{"results":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryResult"}}},"required":["results"],"additionalProperties":false},"Invoice":{"type":"object","description":"Faktúra, zálohová faktúra alebo dobropis.","properties":{"id":{"type":"string","description":"Id dokladu."},"object":{"const":"invoice"},"type":{"type":"string","description":"Typ dokladu.","enum":["invoice","proforma","credit_note","quote","delivery_note"]},"number":{"type":["string","null"],"description":"Číslo dokladu, koncept ho ešte nemá."},"status":{"type":"string","description":"Stav dokladu.","enum":["draft","issued","delivered","overdue","paid","rejected","accepted","expired","invoiced"]},"payment_status":{"type":"string","description":"Úhrada.","enum":["unpaid","partially_paid","paid"]},"issue_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"due_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"delivery_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"currency":{"type":"string","description":"Mena dokladu.","enum":["EUR","CZK","USD","GBP","PLN","HUF","CHF"]},"exchange_rate":{"type":["string","null"],"description":"Kurz pri cudzej mene (jednotiek meny za 1 euro).","pattern":"^\\d+(\\.\\d+)?$"},"exchange_rate_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"prices_include_vat":{"type":"boolean","description":"Doklad počíta z cien s DPH."},"vat_payer":{"type":"boolean","description":"Doklad vystavil platiteľ DPH."},"tax_regime":{"type":"string","description":"Režim DPH.","enum":["standard","reverse_charge_domestic","reverse_charge_eu_services","exempt_eu_goods","exempt_export","services_outside_eu"]},"customer":{"$ref":"#/components/schemas/Customer"},"document_discount":{"anyOf":[{"$ref":"#/components/schemas/Discount"},{"type":"null"}]},"totals":{"$ref":"#/components/schemas/Totals"},"totals_eur":{"anyOf":[{"$ref":"#/components/schemas/TotalsEur"},{"type":"null"}]},"lines":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceLine"},"description":"Riadky dokladu, len v detaile."},"vat_breakdown":{"type":"array","items":{"$ref":"#/components/schemas/VatBreakdown"},"description":"Rozpis DPH po sadzbách, len v detaile."},"variable_symbol":{"type":["string","null"],"description":"Variabilný symbol."},"payment_method":{"type":["string","null"],"description":"Spôsob úhrady.","enum":["bank_transfer","cash","card",null]},"iban":{"type":["string","null"],"description":"Účet na úhradu."},"language":{"type":["string","null"],"description":"Jazyk dokladu."},"note":{"type":["string","null"],"description":"Poznámka na doklade."},"buyer_reference":{"type":["string","null"],"description":"Referencia odberateľa (BT-10)."},"related_invoice_id":{"type":["string","null"],"description":"Doklad, ku ktorému tento patrí (dobropis k faktúre)."},"external_id":{"type":["string","null"],"description":"Číslo v systéme integrácie."},"source":{"type":["string","null"],"description":"Zdroj integrácie."},"sent_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"created_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"updated_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"links":{"type":"object","description":"Adresy súborov dokladu v API.","properties":{"pdf":{"type":"string","description":"PDF dokladu."},"ubl":{"type":"string","description":"E-faktúra UBL."}},"required":["pdf","ubl"],"additionalProperties":false},"delivery":{"$ref":"#/components/schemas/Delivery"}},"required":["id","object","type","number","status","payment_status","issue_date","due_date","delivery_date","currency","exchange_rate","exchange_rate_date","prices_include_vat","vat_payer","tax_regime","customer","document_discount","totals","totals_eur","variable_symbol","payment_method","iban","language","note","buyer_reference","related_invoice_id","external_id","source","sent_at","created_at","updated_at","links"],"additionalProperties":false},"InvoiceList":{"type":"object","description":"Strana dokladov od najnovšej zmeny, bez riadkov.","properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Invoice"}},"has_more":{"type":"boolean","description":"Je ďalšia strana."},"next_cursor":{"type":["string","null"],"description":"Kurzor na ďalšiu stranu pre parameter cursor."}},"required":["object","data","has_more","next_cursor"],"additionalProperties":false},"InvoiceInput":{"type":"object","description":"Koncept dokladu. Odberateľ je contact_id alebo customer, nie oboje.","properties":{"type":{"type":"string","description":"Typ dokladu, predvolene invoice.","enum":["invoice","proforma"]},"contact_id":{"type":"string","description":"Existujúci kontakt; inak customer."},"customer":{"$ref":"#/components/schemas/ContactInput","description":"Odberateľ: nájde sa alebo založí."},"due_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"due_days":{"type":"integer","minimum":0,"maximum":365,"description":"Splatnosť v dňoch."},"delivery_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"currency":{"type":"string","description":"Mena, predvolene EUR.","enum":["EUR","CZK","USD","GBP","PLN","HUF","CHF"]},"exchange_rate":{"description":"Kurz pri cudzej mene; bez neho SimFa vezme lístok NBS.","anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"string"}]},"exchange_rate_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"prices_include_vat":{"type":"boolean","description":"Ceny položiek sú s DPH; súčet potom sedí na cent so zaplatenou sumou."},"lines":{"type":"array","minItems":1,"maxItems":500,"items":{"$ref":"#/components/schemas/InvoiceLineInput"}},"document_discount":{"anyOf":[{"$ref":"#/components/schemas/DiscountInput"},{"type":"null"}]},"note":{"type":"string","description":"Poznámka na doklade.","maxLength":2000},"buyer_reference":{"type":"string","description":"Referencia odberateľa (BT-10).","maxLength":100},"payment_method":{"type":"string","description":"Spôsob úhrady.","enum":["bank_transfer","cash","card"]},"language":{"type":"string","description":"Jazyk dokladu.","enum":["SK","EN","DE"]},"tax_regime":{"type":"string","description":"Režim DPH, predvolene standard.","enum":["standard","reverse_charge_domestic","reverse_charge_eu_services","exempt_eu_goods","exempt_export","services_outside_eu"]},"external_id":{"description":"Číslo záznamu v systéme integrácie (objednávka, zákazník), najviac 100 znakov.","anyOf":[{"type":"string","minLength":1,"maxLength":100},{"type":"integer","minimum":0}]},"source":{"type":"string","description":"Zdroj integrácie, napríklad woocommerce: malé písmená, číslice, podčiarkovník a spojovník.","pattern":"^[a-z0-9_-]{1,40}$"}},"required":["lines"]},"InvoiceUpdate":{"type":"object","description":"Úprava konceptu: zmenia sa len polia v požiadavke, lines nahradí všetky položky.","properties":{"contact_id":{"type":"string","description":"Iný kontakt."},"due_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"due_days":{"type":"integer","minimum":0,"maximum":365,"description":"Splatnosť v dňoch."},"delivery_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"currency":{"type":"string","description":"Mena.","enum":["EUR","CZK","USD","GBP","PLN","HUF","CHF"]},"exchange_rate":{"description":"Kurz pri cudzej mene.","anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"string"}]},"exchange_rate_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"prices_include_vat":{"type":"boolean","description":"Mení sa len spolu s položkami (lines)."},"lines":{"type":"array","minItems":1,"maxItems":500,"items":{"$ref":"#/components/schemas/InvoiceLineInput"}},"document_discount":{"anyOf":[{"$ref":"#/components/schemas/DiscountInput"},{"type":"null"}]},"note":{"type":"string","description":"Poznámka na doklade.","maxLength":2000},"buyer_reference":{"type":"string","description":"Referencia odberateľa (BT-10).","maxLength":100},"payment_method":{"type":"string","description":"Spôsob úhrady.","enum":["bank_transfer","cash","card"]},"language":{"type":"string","description":"Jazyk dokladu.","enum":["SK","EN","DE"]},"tax_regime":{"type":"string","description":"Režim DPH.","enum":["standard","reverse_charge_domestic","reverse_charge_eu_services","exempt_eu_goods","exempt_export","services_outside_eu"]}},"required":[]},"PaymentInput":{"type":"object","description":"Úhrada k vystavenému dokladu.","properties":{"amount":{"$ref":"#/components/schemas/AmountInput","description":"Uhradená suma v mene dokladu."},"paid_on":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Deň úhrady, predvolene dnes."},"method":{"type":"string","description":"Spôsob úhrady.","enum":["bank_transfer","cash","card"]}},"required":["amount"]},"SendInput":{"type":"object","description":"Odoslanie vystaveného dokladu.","properties":{"channels":{"type":"array","minItems":1,"items":{"type":"string","description":"Cesta.","enum":["peppol","email"]},"description":"Bez nej Peppol, keď ho odberateľ prijíma, inak e-mail."},"message":{"type":"string","description":"Text e-mailu odberateľovi."}},"required":[]},"OrderLineInput":{"type":"object","description":"Položka objednávky s cenou s DPH.","properties":{"external_id":{"description":"Číslo záznamu v systéme integrácie (objednávka, zákazník), najviac 100 znakov.","anyOf":[{"type":"string","minLength":1,"maxLength":100},{"type":"integer","minimum":0}]},"name":{"type":"string","description":"Názov položky.","minLength":1,"maxLength":200},"quantity":{"type":"number","exclusiveMinimum":0,"description":"Množstvo, predvolene 1."},"unit":{"type":"string","description":"Jednotka."},"unit_price":{"$ref":"#/components/schemas/AmountInput","description":"Cena za jednotku s DPH."},"vat_rate":{"type":"number","description":"Sadzba DPH v percentách, ako ju účtoval e-shop."},"discount_amount":{"anyOf":[{"$ref":"#/components/schemas/AmountInput","description":"Zľava s DPH za celú položku."},{"type":"null"}]}},"required":["name","unit_price","vat_rate"]},"OrderFeeInput":{"type":"object","description":"Doprava alebo poplatok za platbu.","properties":{"name":{"type":"string","description":"Názov, predvolene Doprava alebo Poplatok za platbu."},"unit_price":{"$ref":"#/components/schemas/AmountInput","description":"Cena s DPH."},"vat_rate":{"type":"number","description":"Sadzba DPH v percentách."}},"required":["unit_price","vat_rate"]},"OrderInput":{"type":"object","description":"Objednávka z e-shopu s cenami s DPH.","properties":{"external_id":{"description":"Číslo záznamu v systéme integrácie (objednávka, zákazník), najviac 100 znakov.","anyOf":[{"type":"string","minLength":1,"maxLength":100},{"type":"integer","minimum":0}]},"source":{"type":"string","description":"Zdroj integrácie, napríklad woocommerce: malé písmená, číslice, podčiarkovník a spojovník.","pattern":"^[a-z0-9_-]{1,40}$"},"currency":{"type":"string","description":"Mena objednávky, predvolene EUR.","enum":["EUR","CZK","USD","GBP","PLN","HUF","CHF"]},"payment_method":{"type":"string","description":"Spôsob platby.","enum":["card","paypal","online","bank_transfer","cash_on_delivery","cash"]},"paid":{"type":"boolean","description":"Objednávka je zaplatená."},"paid_on":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Deň platby, predvolene dnes."},"kind":{"type":"string","description":"Tovar alebo služba, predvolene goods.","enum":["goods","services"]},"customer":{"$ref":"#/components/schemas/ContactInput","description":"Zákazník: nájde sa alebo založí."},"vat_country":{"type":["string","null"],"description":"Krajina, ktorej DPH e-shop účtoval (OSS)."},"lines":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/OrderLineInput"}},"shipping":{"anyOf":[{"$ref":"#/components/schemas/OrderFeeInput"},{"type":"null"}]},"payment_fee":{"anyOf":[{"$ref":"#/components/schemas/OrderFeeInput"},{"type":"null"}]},"discount_amount":{"anyOf":[{"$ref":"#/components/schemas/AmountInput","description":"Zľava s DPH na celú objednávku."},{"type":"null"}]},"total":{"anyOf":[{"$ref":"#/components/schemas/AmountInput","description":"Súčet objednávky s DPH; keď nesedí s dokladom, objednávka sa zastaví."},{"type":"null"}]}},"required":["external_id","source","payment_method","customer","lines"]},"OrderResult":{"type":"object","description":"Doklad z objednávky.","properties":{"object":{"const":"order_result"},"status":{"type":"string","description":"Čo vzniklo: uhradená faktúra, vystavený doklad alebo koncept.","enum":["paid","issued","draft"]},"document_type":{"type":"string","description":"Faktúra alebo zálohová faktúra.","enum":["invoice","proforma"]},"issue_on":{"type":"string","description":"Vystavenie hneď, alebo pri odoslaní (dobierka).","enum":["now","shipment"]},"warnings":{"type":"array","items":{"type":"string"},"description":"Upozornenia k dokladu."},"invoice":{"$ref":"#/components/schemas/Invoice"}},"required":["object","status","document_type","issue_on","warnings","invoice"],"additionalProperties":false},"OrderWaiting":{"type":"object","description":"Objednávka čaká na platbu, doklad zatiaľ nevznikol.","properties":{"object":{"const":"order_result"},"status":{"const":"waiting_for_payment"},"message":{"type":"string","description":"Veta pre človeka."}},"required":["object","status","message"],"additionalProperties":false},"ReceivedInvoice":{"type":"object","description":"Doklad od dodávateľa (Prijaté).","properties":{"id":{"type":"string","description":"Id prijatého dokladu."},"object":{"const":"received_invoice"},"number":{"type":["string","null"],"description":"Číslo dokladu dodávateľa."},"status":{"type":"string","description":"Stav v SimFa.","enum":["new","to_pay","paid","rejected"]},"supplier":{"type":"object","description":"Dodávateľ.","properties":{"name":{"type":"string","description":"Meno dodávateľa."},"ico":{"type":["string","null"],"description":"IČO."},"ic_dph":{"type":["string","null"],"description":"IČ DPH."}},"required":["name","ico","ic_dph"],"additionalProperties":false},"issue_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"delivery_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"due_date":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Dátum RRRR-MM-DD."},"currency":{"type":"string","description":"Mena dokladu."},"totals":{"type":"object","description":"Súčty v mene dokladu.","properties":{"net":{"$ref":"#/components/schemas/Amount"},"vat":{"$ref":"#/components/schemas/Amount"},"gross":{"$ref":"#/components/schemas/Amount"}},"required":["net","vat","gross"],"additionalProperties":false},"totals_eur":{"anyOf":[{"$ref":"#/components/schemas/TotalsEur"},{"type":"null"}]},"variable_symbol":{"type":["string","null"],"description":"Variabilný symbol na úhradu."},"iban":{"type":["string","null"],"description":"Účet dodávateľa."},"source":{"type":"string","description":"Ako doklad prišiel.","enum":["peppol","email","upload","scan"]},"extraction":{"type":"string","description":"Prečítanie: structured (e-faktúra), read (prečítaný), needs_review (na kontrolu), manual, processing.","enum":["structured","processing","read","needs_review","manual"]},"duplicate":{"type":"boolean","description":"Zrejme ten istý doklad, aký už je v SimFa."},"created_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"updated_at":{"type":["string","null"],"format":"date-time","description":"Čas podľa ISO 8601 v UTC."}},"required":["id","object","number","status","supplier","issue_date","delivery_date","due_date","currency","totals","totals_eur","variable_symbol","iban","source","extraction","duplicate","created_at","updated_at"],"additionalProperties":false},"PaymentRecord":{"type":"object","description":"Úhrada pri udalostiach invoice.paid a invoice.partially_paid.","properties":{"id":{"type":"string","description":"Id úhrady."},"amount":{"$ref":"#/components/schemas/Amount","description":"Suma v eurách, ako prišla na účet."},"amount_in_currency":{"anyOf":[{"$ref":"#/components/schemas/Amount","description":"Suma v mene dokladu pri cudzej mene."},{"type":"null"}]},"date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Deň úhrady."},"method":{"type":"string","description":"Čím sa platilo.","enum":["bank_transfer","cash","card","offset"]},"source":{"type":"string","description":"Odkiaľ úhrada prišla.","enum":["manual","bank","payment_link","qr","import"]}},"required":["id","amount","amount_in_currency","date","method","source"],"additionalProperties":false},"Package":{"type":"object","description":"Mesačný balík dokladov pre účtovníctvo.","properties":{"object":{"const":"package"},"month":{"type":"string","description":"Mesiac balíka RRRR-MM.","pattern":"^\\d{4}-\\d{2}$"},"format":{"type":"string","description":"Formát pre program účtovníctva, napríklad pohoda alebo zip."},"feed_prefix":{"type":"string","description":"Začiatok tokenu odberu, ktorým si program balík vyzdvihne."},"feed_url":{"type":"string","description":"Adresa odberu; namiesto <token> vlož token odberu."}},"required":["object","month","format","feed_prefix","feed_url"],"additionalProperties":false},"EventDetails":{"type":"object","description":"Čo sa stalo navyše; polia podľa typu udalosti.","properties":{"channel":{"type":"string","description":"Cesta odoslania (invoice.sent).","enum":["email","peppol","sms"]},"reminder":{"type":"boolean","description":"Upomienka, nie prvé odoslanie (invoice.sent)."},"demand":{"type":"boolean","description":"Výzva na úhradu s úrokom (invoice.sent)."},"payment":{"$ref":"#/components/schemas/PaymentRecord"},"settled_by":{"type":"string","description":"Faktúra uhradená už zálohou (invoice.paid).","enum":["advance"]},"due_date":{"type":"string","format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Deň splatnosti (invoice.overdue)."},"days_overdue":{"type":"integer","description":"Dní po splatnosti (invoice.overdue)."}},"additionalProperties":false},"Event":{"type":"object","description":"Udalosť: telo webhooku aj položka GET /v1/events.","properties":{"id":{"type":"string","description":"Id udalosti, to isté ako hlavička webhook-id.","pattern":"^evt_[0-9a-z]{9}[0-9A-Za-z]{16}$"},"object":{"const":"event"},"type":{"type":"string","description":"Typ udalosti.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]},"timestamp":{"type":"string","format":"date-time","description":"Kedy udalosť nastala; pri opakovaní sa nemení."},"company_id":{"type":"string","description":"Firma udalosti."},"data":{"type":"object","description":"Objekt udalosti a podrobnosti.","properties":{"object":{"description":"Objekt v tvare API v1 v čase udalosti; doklad bez riadkov.","anyOf":[{"$ref":"#/components/schemas/Invoice"},{"$ref":"#/components/schemas/Contact"},{"$ref":"#/components/schemas/ReceivedInvoice"},{"$ref":"#/components/schemas/Package"}]},"url":{"type":["string","null"],"description":"Adresa objektu v API v1, keď ho API má."},"details":{"$ref":"#/components/schemas/EventDetails"}},"required":["object","url"],"additionalProperties":false},"test":{"const":true,"description":"Len pri skúšobnej udalosti z tlačidla alebo z API."}},"required":["id","object","type","timestamp","company_id","data"],"additionalProperties":false},"EventList":{"type":"object","description":"Strana udalostí.","properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Event"}},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"],"description":"Kurzor ďalšej strany."}},"required":["object","data","has_more","next_cursor"],"additionalProperties":false},"WebhookEndpoint":{"type":"object","description":"Adresa, na ktorú SimFa posiela udalosti.","properties":{"id":{"type":"string","description":"Id adresy."},"object":{"const":"webhook_endpoint"},"url":{"type":"string","description":"Adresa prijímača."},"description":{"type":["string","null"],"description":"Popis pre ľudí."},"events":{"type":"array","items":{"type":"string","description":"Typ udalosti.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]},"description":"Udalosti, ktoré adresa dostáva."},"status":{"type":"string","description":"Zapnutá alebo vypnutá.","enum":["enabled","disabled"]},"disabled_reason":{"type":["string","null"],"description":"Prečo je vypnutá: človekom (paused), SimFa po 3 dňoch bez úspechu (no_success), po 410 (gone).","enum":["paused","no_success","gone",null]},"secret_preview":{"type":"string","description":"Začiatok tajomstva, aby sa dalo spoznať."},"previous_secret_valid_until":{"type":["string","null"],"format":"date-time","description":"Po rotácii: do kedy platí aj predošlé tajomstvo."},"last_success_at":{"type":["string","null"],"format":"date-time","description":"Posledná prijatá udalosť."},"pending_deliveries":{"type":"integer","description":"Udalosti, ktoré na adresu ešte čakajú."},"created_at":{"type":"string","format":"date-time","description":"Čas podľa ISO 8601 v UTC."}},"required":["id","object","url","description","events","status","disabled_reason","secret_preview","previous_secret_valid_until","last_success_at","pending_deliveries","created_at"],"additionalProperties":false},"WebhookEndpointCreated":{"type":"object","description":"Nová adresa aj s tajomstvom.","properties":{"id":{"type":"string","description":"Id adresy."},"object":{"const":"webhook_endpoint"},"url":{"type":"string","description":"Adresa prijímača."},"description":{"type":["string","null"],"description":"Popis pre ľudí."},"events":{"type":"array","items":{"type":"string","description":"Typ udalosti.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]},"description":"Udalosti, ktoré adresa dostáva."},"status":{"type":"string","description":"Zapnutá alebo vypnutá.","enum":["enabled","disabled"]},"disabled_reason":{"type":["string","null"],"description":"Prečo je vypnutá: človekom (paused), SimFa po 3 dňoch bez úspechu (no_success), po 410 (gone).","enum":["paused","no_success","gone",null]},"secret_preview":{"type":"string","description":"Začiatok tajomstva, aby sa dalo spoznať."},"previous_secret_valid_until":{"type":["string","null"],"format":"date-time","description":"Po rotácii: do kedy platí aj predošlé tajomstvo."},"last_success_at":{"type":["string","null"],"format":"date-time","description":"Posledná prijatá udalosť."},"pending_deliveries":{"type":"integer","description":"Udalosti, ktoré na adresu ešte čakajú."},"created_at":{"type":"string","format":"date-time","description":"Čas podľa ISO 8601 v UTC."},"secret":{"type":"string","description":"Tajomstvo na overenie podpisu (whsec_…); ukáže sa len teraz."}},"required":["id","object","url","description","events","status","disabled_reason","secret_preview","previous_secret_valid_until","last_success_at","pending_deliveries","created_at","secret"],"additionalProperties":false},"WebhookEndpointSecret":{"type":"object","description":"Nové tajomstvo adresy.","properties":{"id":{"type":"string","description":"Id adresy."},"object":{"const":"webhook_endpoint_secret"},"secret":{"type":"string","description":"Nové tajomstvo (whsec_…); ukáže sa len teraz."},"previous_secret_valid_until":{"type":"string","format":"date-time","description":"Do kedy platí aj predošlé."}},"required":["id","object","secret","previous_secret_valid_until"],"additionalProperties":false},"WebhookEndpointList":{"type":"object","description":"Adresy webhookov firmy.","properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEndpoint"}},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"],"description":"Vždy null, adries je najviac desať."}},"required":["object","data","has_more","next_cursor"],"additionalProperties":false},"WebhookEndpointInput":{"type":"object","description":"Nová adresa webhooku.","properties":{"url":{"type":"string","description":"Adresa prijímača, https. Presmerovanie nenasledujeme.","format":"uri","maxLength":2000},"events":{"type":"array","minItems":1,"items":{"type":"string","description":"Typ udalosti.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]},"description":"Udalosti, ktoré má adresa dostávať."},"description":{"type":["string","null"],"description":"Popis pre ľudí, napríklad Zapier.","maxLength":80}},"required":["url","events"]},"WebhookEndpointUpdate":{"type":"object","description":"Zmena adresy; posielajú sa len menené polia.","properties":{"url":{"type":"string","description":"Nová adresa prijímača.","format":"uri","maxLength":2000},"events":{"type":"array","minItems":1,"items":{"type":"string","description":"Typ udalosti.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]}},"description":{"type":["string","null"],"description":"Popis.","maxLength":80},"enabled":{"type":"boolean","description":"Zapnúť alebo vypnúť adresu."}},"required":[]},"WebhookEndpointDeleted":{"type":"object","description":"Adresa je zmazaná a udalosti na ňu už nechodia.","properties":{"id":{"type":"string","description":"Id zmazanej adresy."},"object":{"const":"webhook_endpoint"},"deleted":{"const":true}},"required":["id","object","deleted"],"additionalProperties":false},"WebhookTestInput":{"type":"object","description":"Skúšobná udalosť.","properties":{"type":{"type":"string","description":"Typ skúšobnej udalosti, predvolene invoice.issued.","enum":["invoice.issued","invoice.sent","invoice.partially_paid","invoice.paid","invoice.overdue","contact.created","contact.updated","received_invoice.created","package.ready"]}},"required":[]},"WebhookTestResult":{"type":"object","description":"Výsledok skúšobnej udalosti.","properties":{"object":{"const":"webhook_test"},"delivered":{"type":"boolean","description":"Prijímač odpovedal 2xx."},"status_code":{"type":["integer","null"],"description":"Stav HTTP odpovede prijímača."},"error":{"type":["string","null"],"description":"Prečo sa nepodarilo."},"duration_ms":{"type":"integer","description":"Trvanie v milisekundách."},"response":{"type":["string","null"],"description":"Začiatok odpovede prijímača."}},"required":["object","delivered","status_code","error","duration_ms","response"],"additionalProperties":false},"Problem":{"type":"object","description":"Chyba podľa RFC 9457. detail je veta po slovensky, ktorú môže integrácia ukázať človeku.","properties":{"type":{"type":"string","description":"Adresa popisu chyby."},"title":{"type":"string","description":"Názov chyby."},"status":{"type":"integer","description":"Stav HTTP."},"detail":{"type":"string","description":"Veta pre človeka."},"code":{"type":"string","description":"Kód chyby.","enum":["unauthorized","missing_scope","forbidden","plan_required","test_key_live_company","not_found","invalid_request","conflict","duplicate_order","idempotency_in_progress","idempotency_mismatch","order_stopped","not_sent","rate_limited","server_error"]},"request_id":{"type":"string","description":"Id požiadavky pre podporu."},"errors":{"type":"array","description":"Chyby vstupu po poliach, všetky naraz.","items":{"type":"object","properties":{"field":{"type":"string","description":"Pole."},"message":{"type":"string","description":"Veta."}},"required":["field","message"],"additionalProperties":false}},"required_scopes":{"type":"array","items":{"type":"string","description":"Oblasť.","enum":["citanie","koncepty","vystavovanie","odosielanie","platby","kontakty","prijate","banka","webhooky"]}},"missing_scopes":{"type":"array","items":{"type":"string","description":"Oblasť.","enum":["citanie","koncepty","vystavovanie","odosielanie","platby","kontakty","prijate","banka","webhooky"]}},"invoice_id":{"type":["string","null"],"description":"Doklad, ktorý objednávka už má (duplicate_order)."},"reason":{"type":"string","description":"Prečo sa objednávka zastavila (order_stopped)."},"results":{"type":"array","items":{"$ref":"#/components/schemas/DeliveryResult"},"description":"Výsledky odoslania po cestách (not_sent)."},"simfa_code":{"type":"string","description":"Kód chyby appky SimFa."}},"required":["type","title","status","detail","code"],"additionalProperties":false}},"parameters":{"Id":{"name":"id","in":"path","required":true,"description":"Id záznamu.","schema":{"type":"string"}},"Limit":{"name":"limit","in":"query","description":"Záznamov na stranu, predvolene 25.","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},"Order":{"name":"order","in":"query","description":"desc od najnovšej zmeny, asc od najstaršej (na dobiehanie zmien).","schema":{"type":"string","enum":["desc","asc"],"default":"desc"}},"Cursor":{"name":"cursor","in":"query","description":"next_cursor z predchádzajúcej strany.","schema":{"type":"string"}},"UpdatedSince":{"name":"updated_since","in":"query","description":"Len záznamy zmenené od tohto času (ISO 8601).","schema":{"type":"string","format":"date-time"}},"Source":{"name":"source","in":"query","description":"Zdroj integrácie.","schema":{"type":"string"}},"ExternalId":{"name":"external_id","in":"query","description":"Číslo v systéme integrácie.","schema":{"type":"string"}},"ContactQuery":{"name":"query","in":"query","description":"Hľadanie v mene, IČO a e-maile.","schema":{"type":"string"}},"Ico":{"name":"ico","in":"query","description":"Presné IČO.","schema":{"type":"string"}},"InvoiceType":{"name":"type","in":"query","description":"Typy oddelené čiarkou, predvolene invoice,proforma,credit_note.","schema":{"type":"string","pattern":"^(invoice|proforma|credit_note)(,(invoice|proforma|credit_note))*$"}},"InvoiceStatus":{"name":"status","in":"query","description":"Stav dokladu.","schema":{"type":"string","enum":["draft","issued","delivered","overdue","paid","rejected","accepted","expired","invoiced"]}},"InvoiceNumber":{"name":"number","in":"query","description":"Presné číslo dokladu.","schema":{"type":"string"}},"EventType":{"name":"type","in":"query","description":"Typy udalostí oddelené čiarkou, napríklad invoice.paid,invoice.overdue.","schema":{"type":"string"}},"CreatedSince":{"name":"created_since","in":"query","description":"Len udalosti od tohto času (ISO 8601).","schema":{"type":"string","format":"date-time"}},"IdempotencyKey":{"name":"Idempotency-Key","in":"header","description":"Kľúč idempotencie, napríklad UUID. Opakovaná požiadavka s tým istým telom do 24 hodín vráti prvú odpoveď.","schema":{"type":"string","pattern":"^[\\x21-\\x7e]{1,255}$"}}},"headers":{"RateLimit-Policy":{"description":"Limity požiadaviek (IETF RateLimit), napríklad \"kluc\";q=120;w=60.","schema":{"type":"string"}},"RateLimit":{"description":"Zostatok najtesnejšieho limitu a sekundy do obnovenia, napríklad \"kluc\";r=119;t=60.","schema":{"type":"string"}},"X-Request-Id":{"description":"Id požiadavky; podpora podľa neho nájde záznam.","schema":{"type":"string"}},"Retry-After":{"description":"O koľko sekúnd skúsiť znova.","schema":{"type":"integer"}},"Idempotent-Replayed":{"description":"true, keď odpoveď je uložená odpoveď prvej požiadavky s tým istým kľúčom.","schema":{"type":"string","enum":["true"]}}},"responses":{"BadRequest":{"description":"Neplatná požiadavka; chyby vstupu sú v errors.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"invalid_request":{"value":{"type":"https://simfa.sk/vyvojari/chyby#invalid_request","title":"Neplatná požiadavka","status":400,"detail":"Požiadavka má 2 chyby v poliach, sú v errors.","code":"invalid_request","errors":[{"field":"lines[0].unit_price","message":"Cena za jednotku je suma s najviac dvoma desatinnými miestami, napríklad \"9.99\"."},{"field":"customer","message":"Doklad potrebuje odberateľa: contact_id alebo customer s menom."}],"request_id":"req_7Hq2kL9xV1"}}}}}},"Unauthorized":{"description":"Chýba platný API kľúč.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"},"WWW-Authenticate":{"description":"Bearer realm=\"SimFa API\".","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"unauthorized":{"value":{"type":"https://simfa.sk/vyvojari/chyby#unauthorized","title":"Chýba platný API kľúč","status":401,"detail":"API kľúč nemá platný tvar. Skopíruj ho celý, začína sa simfa_live_ alebo simfa_test_.","code":"unauthorized","request_id":"req_7Hq2kL9xV1"}}}}}},"Forbidden":{"description":"Kľúč na to nemá oblasť, plán alebo právo.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"missing_scope":{"value":{"type":"https://simfa.sk/vyvojari/chyby#missing_scope","title":"Kľúč nemá potrebnú oblasť","status":403,"detail":"Kľúču chýba oblasť Vystavovať doklady. Oblasti kľúča sa menia v Nastaveniach, Integrácie.","code":"missing_scope","required_scopes":["koncepty","vystavovanie"],"missing_scopes":["vystavovanie"],"request_id":"req_7Hq2kL9xV1"}},"plan_required":{"value":{"type":"https://simfa.sk/vyvojari/chyby#plan_required","title":"Ostrý kľúč potrebuje Premium","status":403,"detail":"Ostrý API kľúč je súčasťou Premium.","code":"plan_required","request_id":"req_7Hq2kL9xV1"}}}}}},"NotFound":{"description":"Záznam neexistuje alebo nepatrí firme kľúča.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"not_found":{"value":{"type":"https://simfa.sk/vyvojari/chyby#not_found","title":"Záznam neexistuje","status":404,"detail":"Doklad sme nenašli.","code":"not_found","request_id":"req_7Hq2kL9xV1"}}}}}},"Conflict":{"description":"Stav záznamu to nedovoľuje, alebo sa rovnaká požiadavka spracúva.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"conflict":{"value":{"type":"https://simfa.sk/vyvojari/chyby#conflict","title":"Stav záznamu to nedovoľuje","status":409,"detail":"Vystavený doklad sa nedá upraviť, oprav ho dobropisom.","code":"conflict","request_id":"req_7Hq2kL9xV1"}},"idempotency_in_progress":{"value":{"type":"https://simfa.sk/vyvojari/chyby#idempotency_in_progress","title":"Rovnaká požiadavka sa ešte spracúva","status":409,"detail":"Požiadavka sa ešte spracúva.","code":"idempotency_in_progress","request_id":"req_7Hq2kL9xV1"}}}}}},"IdempotencyMismatch":{"description":"Kľúč idempotencie patrí inej požiadavke.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"idempotency_mismatch":{"value":{"type":"https://simfa.sk/vyvojari/chyby#idempotency_mismatch","title":"Kľúč idempotencie už patrí inej požiadavke","status":422,"detail":"Idempotency-Key už patrí požiadavke s iným telom. Pošli nový kľúč.","code":"idempotency_mismatch","request_id":"req_7Hq2kL9xV1"}}}}}},"RateLimited":{"description":"Priveľa požiadaviek za minútu.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"},"Retry-After":{"$ref":"#/components/headers/Retry-After"},"RateLimit":{"$ref":"#/components/headers/RateLimit"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"rate_limited":{"value":{"type":"https://simfa.sk/vyvojari/chyby#rate_limited","title":"Priveľa požiadaviek","status":429,"detail":"Kľúč poslal viac ako 120 požiadaviek za minútu. Skús to o 12 s.","code":"rate_limited","request_id":"req_7Hq2kL9xV1"}}}}}},"ServerError":{"description":"Chyba na strane SimFa; požiadavku zopakuj.","headers":{"X-Request-Id":{"$ref":"#/components/headers/X-Request-Id"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"},"examples":{"server_error":{"value":{"type":"https://simfa.sk/vyvojari/chyby#server_error","title":"Chyba na strane SimFa","status":500,"detail":"SimFa požiadavku nespracovala. Skús to znova o chvíľu.","code":"server_error","request_id":"req_7Hq2kL9xV1"}}}}}}}}}