{"openapi":"3.1.0","info":{"title":"Klarbon API","version":"1.0.0","summary":"Open, check and convert European e-invoices and bank statements.","description":"The same tools as klarbon.app, server to server. Authenticate with an API key from your account page in the Authorization header: Bearer kb_live_...\n\nPaid calls spend your API balance first: API packs bought on your account page, and 25 free API calls on the first key, once per email address and excluding disposable addresses. When the API balance is empty they spend the same credits as the site, plan credits before bought ones. When the combined balance cannot cover the call it answers 402 no_credits, or 503 checkoutUnavailable when buying is switched off.\n\nOpen is free (fair use 1000 a day per account). Check follows your plan's daily checks. Convert and make cost 1 call per file; bank statements 1 call per started 500 transactions. One call and one credit pay for the same work. A call that fails, or writes a file that does not validate, costs nothing.\n\nReading plain PDF invoices and PDF bank statements is not available yet. A plain PDF invoice submitted to /convert returns 422 unsupported; a PDF statement submitted to /bank/convert returns 503 extract_failed. Hybrid PDFs with embedded invoice XML are supported.\n\nFiles are at most 20 MB and 50 PDF pages. They are processed for the request, without a document archive. Messages follow Accept-Language in the supported interface languages, or the account language when the header is absent.\n\nRate limits: 60 requests a minute per key (bursts of 10) and 120 per account, announced in the RateLimit and RateLimit-Policy headers; a per-minute rate-limit refusal carries Retry-After.","termsOfService":"https://klarbon.app/terms","contact":{"name":"Klarbon","url":"https://klarbon.app/developers/"}},"servers":[{"url":"https://klarbon.app/api/v1"}],"security":[{"apiKey":[]}],"tags":[{"name":"Formats"},{"name":"E-invoices"},{"name":"Bank statements"},{"name":"Account"}],"paths":{"/formats":{"get":{"operationId":"listFormats","tags":["Formats"],"summary":"Every format and what each tool can do with it","security":[{},{"apiKey":[]}],"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"formats":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"names":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"extensions":{"type":"array","items":{"type":"string"}},"mimeTypes":{"type":"array","items":{"type":"string"}},"tools":{"type":"object","properties":{"open":{"type":"string","enum":["live","beta"]},"check":{"type":"string","enum":["live","beta"]},"convertFrom":{"type":"string","enum":["live","beta"]},"convertTo":{"type":"string","enum":["live","beta"]},"make":{"type":"string","enum":["live","beta"]}},"additionalProperties":false}},"required":["id","names","extensions","mimeTypes","tools"],"additionalProperties":false}}},"required":["ok","formats"],"additionalProperties":false}}}},"429":{"$ref":"#/components/responses/Error"}}}},"/open":{"post":{"operationId":"openInvoice","tags":["E-invoices"],"summary":"Read an e-invoice into the Klarbon invoice model, optionally as HTML","description":"Free, within the fair use limit.","parameters":[{"name":"html","in":"query","required":false,"description":"Also return the invoice as complete, print-ready HTML.","schema":{"type":"string","enum":["0","1","true","false"]}},{"name":"locale","in":"query","required":false,"description":"The language of the HTML's labels; defaults to the request's language.","schema":{"type":"string","enum":["en","de","fr","nl","it","es","pl","pt","ro"]}}],"requestBody":{"required":true,"description":"The file, at most 20 MB: as multipart/form-data with a file field, or as the raw body with its Content-Type (parameters then go in the query).","content":{"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream"},"html":{"description":"Also return the invoice as complete, print-ready HTML.","type":"string","enum":["0","1","true","false"]},"locale":{"description":"The language of the HTML's labels; defaults to the request's language.","type":"string","enum":["en","de","fr","nl","it","es","pl","pt","ro"]}}}},"application/xml":{"schema":{"type":"string"},"example":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ubl:Invoice xmlns:ubl=\"urn:oasis:names:specification:ubl:schema:xsd:Invoice-2\"\n             xmlns:cac=\"urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2\"\n             xmlns:cbc=\"urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2\">\n    <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>\n    <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>\n    <cbc:ID>123456XX</cbc:ID>\n    <cbc:IssueDate>2016-04-04</cbc:IssueDate>\n    <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>\n    <cbc:Note>#ADU#Es gelten unsere Allgem. Geschäftsbedingungen, die Sie unter […] finden.</cbc:Note>\n    <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>\n    <cbc:BuyerReference>04011000-12345-03</cbc:BuyerReference>\n    <cac:AccountingSupplierParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">seller@email.de</cbc:EndpointID>\n            <cac:PartyName>\n                <cbc:Name>[Seller trading name]</cbc:Name>\n            </cac:PartyName>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Seller address line 1]</cbc:StreetName>\n                <cbc:CityName>[Seller city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyTaxScheme>\n                <cbc:CompanyID>DE 123456789</cbc:CompanyID>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:PartyTaxScheme>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Seller name]</cbc:RegistrationName>\n                <cbc:CompanyID>[HRA-Eintrag]</cbc:CompanyID>\n                <cbc:CompanyLegalForm>123/456/7890, HRA-Eintrag in […]</cbc:CompanyLegalForm>\n            </cac:PartyLegalEntity>\n            <cac:Contact>\n                <cbc:Name>nicht vorhanden</cbc:Name>\n                <cbc:Telephone>+49 1234-5678</cbc:Telephone>\n                <cbc:ElectronicMail>seller@email.de</cbc:ElectronicMail>\n            </cac:Contact>\n        </cac:Party>\n    </cac:AccountingSupplierParty>\n    <cac:AccountingCustomerParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">buyer@info.de</cbc:EndpointID>\n            <cac:PartyIdentification>\n                <cbc:ID>[Buyer identifier]</cbc:ID>\n            </cac:PartyIdentification>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Buyer address line 1]</cbc:StreetName>\n                <cbc:CityName>[Buyer city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Buyer name]</cbc:RegistrationName>\n            </cac:PartyLegalEntity>\n        </cac:Party>\n    </cac:AccountingCustomerParty>\n    <cac:PaymentMeans>\n        <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>\n        <cac:PayeeFinancialAccount>\n            <!-- dies ist eine nicht existerende aber valide IBAN als test dummy -->\n            <cbc:ID>DE79000000001234567890</cbc:ID>\n        </cac:PayeeFinancialAccount>\n    </cac:PaymentMeans>\n    <cac:PaymentTerms>\n        <cbc:Note>Zahlbar sofort ohne Abzug.</cbc:Note>\n    </cac:PaymentTerms>\n    <cac:TaxTotal>\n        <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n        <cac:TaxSubtotal>\n            <cbc:TaxableAmount currencyID=\"EUR\">314.86</cbc:TaxableAmount>\n            <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n            <cac:TaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:TaxCategory>\n        </cac:TaxSubtotal>\n    </cac:TaxTotal>\n    <cac:LegalMonetaryTotal>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">314.86</cbc:LineExtensionAmount>\n        <cbc:TaxExclusiveAmount currencyID=\"EUR\">314.86</cbc:TaxExclusiveAmount>\n        <cbc:TaxInclusiveAmount currencyID=\"EUR\">336.9</cbc:TaxInclusiveAmount>\n        <cbc:PayableAmount currencyID=\"EUR\">336.9</cbc:PayableAmount>\n    </cac:LegalMonetaryTotal>\n    <cac:InvoiceLine>\n        <cbc:ID>Zeitschrift [...]</cbc:ID>\n        <cbc:Note>Die letzte Lieferung im Rahmen des abgerechneten Abonnements erfolgt in 12/2016 Lieferung erfolgt / erfolgte direkt vom Verlag</cbc:Note>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">288.79</cbc:LineExtensionAmount>\n        <cac:InvoicePeriod>\n            <cbc:StartDate>2016-01-01</cbc:StartDate>\n            <cbc:EndDate>2016-12-31</cbc:EndDate>\n        </cac:InvoicePeriod>\n        <cac:OrderLineReference>\n            <cbc:LineID>6171175.1</cbc:LineID>\n        </cac:OrderLineReference>\n        <cac:Item>\n            <cbc:Description>Zeitschrift Inland</cbc:Description>\n            <cbc:Name>Zeitschrift [...]</cbc:Name>\n            <cac:SellersItemIdentification>\n                <cbc:ID>246</cbc:ID>\n            </cac:SellersItemIdentification>\n            <cac:CommodityClassification>\n                <cbc:ItemClassificationCode listID=\"IB\">0721-880X</cbc:ItemClassificationCode>\n            </cac:CommodityClassification>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">288.79</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n    <cac:InvoiceLine>\n        <cbc:ID>Porto + Versandkosten</cbc:ID>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">26.07</cbc:LineExtensionAmount>\n        <cac:Item>\n            <cbc:Name>Porto + Versandkosten</cbc:Name>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">26.07</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n</ubl:Invoice>\n"},"application/octet-stream":{"schema":{"type":"string","contentMediaType":"application/octet-stream"}}}},"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"format":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"invoice":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"warnings":{"type":"array","items":{"type":"string"}},"losses":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["read","dropped","changed","assumed","missing"]},"path":{"type":"string"}},"required":["kind","path"],"additionalProperties":false}},"wrappers":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["p7m","xades","peppol-sbdh","pdf"]}},"required":["kind"],"additionalProperties":{}}},"html":{"type":"string"}},"required":["ok","format","invoice","warnings","losses","wrappers"],"additionalProperties":false},"example":{"ok":true,"format":"xrechnung","invoice":{"kind":"invoice","typeCode":"380","number":"123456XX","issueDate":"2016-04-04","currency":"EUR","buyerReference":"04011000-12345-03","paymentTerms":"Zahlbar sofort ohne Abzug.","processId":"urn:fdc:peppol.eu:2017:poacc:billing:01:1.0","specificationId":"urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0","notes":[{"text":"Es gelten unsere Allgem. Geschäftsbedingungen, die Sie unter […] finden.","subjectCode":"ADU"}],"precedingInvoices":[],"seller":{"name":"[Seller name]","tradingName":"[Seller trading name]","identifiers":[],"legalRegistration":{"value":"[HRA-Eintrag]"},"vatId":"DE 123456789","legalInformation":"123/456/7890, HRA-Eintrag in […]","electronicAddress":{"value":"seller@email.de","scheme":"EM"},"address":{"line1":"[Seller address line 1]","city":"[Seller city]","postCode":"12345","country":"DE"},"contact":{"name":"nicht vorhanden","telephone":"+49 1234-5678","email":"seller@email.de"}},"buyer":{"name":"[Buyer name]","identifiers":[{"value":"[Buyer identifier]"}],"electronicAddress":{"value":"buyer@info.de","scheme":"EM"},"address":{"line1":"[Buyer address line 1]","city":"[Buyer city]","postCode":"12345","country":"DE"}},"payment":{"meansCode":"58","creditTransfers":[{"iban":"DE79000000001234567890"}]},"allowances":[],"charges":[],"totals":{"lineTotal":"314.86","taxExclusive":"314.86","tax":"22.04","taxInclusive":"336.9","payable":"336.9"},"vatBreakdown":[{"category":"S","rate":"7","taxableAmount":"314.86","taxAmount":"22.04"}],"attachments":[],"lines":[{"id":"Zeitschrift [...]","note":"Die letzte Lieferung im Rahmen des abgerechneten Abonnements erfolgt in 12/2016 Lieferung erfolgt / erfolgte direkt vom Verlag","quantity":"1","unit":"XPP","netAmount":"288.79","orderLineReference":"6171175.1","period":{"start":"2016-01-01","end":"2016-12-31"},"allowances":[],"charges":[],"price":{"amount":"288.79"},"vat":{"category":"S","rate":"7"},"item":{"name":"Zeitschrift [...]","description":"Zeitschrift Inland","sellerId":"246","classifications":[{"value":"0721-880X","scheme":"IB"}],"attributes":[]}},{"id":"Porto + Versandkosten","quantity":"1","unit":"XPP","netAmount":"26.07","allowances":[],"charges":[],"price":{"amount":"26.07"},"vat":{"category":"S","rate":"7"},"item":{"name":"Porto + Versandkosten","classifications":[],"attributes":[]}}],"nationalTerms":[],"source":{"format":"xrechnung","syntax":"ubl","customizationId":"urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0"}},"warnings":[],"losses":[],"wrappers":[]}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"415":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"}}}},"/check":{"post":{"operationId":"checkInvoice","tags":["E-invoices"],"summary":"Validate an e-invoice, with each finding explained","description":"Counts towards the account's daily checks, shared with the site.","parameters":[{"name":"ruleset","in":"query","required":false,"description":"A rule set id, or auto to pick it from the file. Leave it out when you send country.","schema":{"default":"auto","type":"string","enum":["auto","en16931-ubl","en16931-cii","en16931-ubl-creditnote","xrechnung-3.0-ubl","xrechnung-3.0-cii","peppol-bis3-invoice","peppol-bis3-creditnote","facturx-1.07-minimum","facturx-1.07-basicwl","facturx-1.07-basic","facturx-1.07-en16931","facturx-1.07-extended","zugferd-2.3-minimum","zugferd-2.3-basicwl","zugferd-2.3-basic","zugferd-2.3-en16931","zugferd-2.3-extended","facturx-1.09-minimum","facturx-1.09-basicwl","facturx-1.09-basic","facturx-1.09-en16931","facturx-1.09-extended","zugferd-2.5-minimum","zugferd-2.5-basicwl","zugferd-2.5-basic","zugferd-2.5-en16931","zugferd-2.5-extended","nlcius","nlcius-cii","fr-ctc","fr-ctc-cii"]}},{"name":"country","in":"query","required":false,"description":"Also apply this country's national rules on top of EN 16931 (FR: the French CTC rules for the file's syntax). Only when you send it; Klarbon never infers a country from the file.","schema":{"type":"string","enum":["FR"]}}],"requestBody":{"required":true,"description":"The file, at most 20 MB: as multipart/form-data with a file field, or as the raw body with its Content-Type (parameters then go in the query).","content":{"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream"},"ruleset":{"default":"auto","description":"A rule set id, or auto to pick it from the file. Leave it out when you send country.","type":"string","enum":["auto","en16931-ubl","en16931-cii","en16931-ubl-creditnote","xrechnung-3.0-ubl","xrechnung-3.0-cii","peppol-bis3-invoice","peppol-bis3-creditnote","facturx-1.07-minimum","facturx-1.07-basicwl","facturx-1.07-basic","facturx-1.07-en16931","facturx-1.07-extended","zugferd-2.3-minimum","zugferd-2.3-basicwl","zugferd-2.3-basic","zugferd-2.3-en16931","zugferd-2.3-extended","facturx-1.09-minimum","facturx-1.09-basicwl","facturx-1.09-basic","facturx-1.09-en16931","facturx-1.09-extended","zugferd-2.5-minimum","zugferd-2.5-basicwl","zugferd-2.5-basic","zugferd-2.5-en16931","zugferd-2.5-extended","nlcius","nlcius-cii","fr-ctc","fr-ctc-cii"]},"country":{"description":"Also apply this country's national rules on top of EN 16931 (FR: the French CTC rules for the file's syntax). Only when you send it; Klarbon never infers a country from the file.","type":"string","enum":["FR"]}}}},"application/xml":{"schema":{"type":"string"},"example":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ubl:Invoice xmlns:ubl=\"urn:oasis:names:specification:ubl:schema:xsd:Invoice-2\"\n             xmlns:cac=\"urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2\"\n             xmlns:cbc=\"urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2\">\n    <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>\n    <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>\n    <cbc:ID>123456XX</cbc:ID>\n    <cbc:IssueDate>2016-04-04</cbc:IssueDate>\n    <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>\n    <cbc:Note>#ADU#Es gelten unsere Allgem. Geschäftsbedingungen, die Sie unter […] finden.</cbc:Note>\n    <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>\n    <cbc:BuyerReference>04011000-12345-03</cbc:BuyerReference>\n    <cac:AccountingSupplierParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">seller@email.de</cbc:EndpointID>\n            <cac:PartyName>\n                <cbc:Name>[Seller trading name]</cbc:Name>\n            </cac:PartyName>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Seller address line 1]</cbc:StreetName>\n                <cbc:CityName>[Seller city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyTaxScheme>\n                <cbc:CompanyID>DE 123456789</cbc:CompanyID>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:PartyTaxScheme>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Seller name]</cbc:RegistrationName>\n                <cbc:CompanyID>[HRA-Eintrag]</cbc:CompanyID>\n                <cbc:CompanyLegalForm>123/456/7890, HRA-Eintrag in […]</cbc:CompanyLegalForm>\n            </cac:PartyLegalEntity>\n            <cac:Contact>\n                <cbc:Name>nicht vorhanden</cbc:Name>\n                <cbc:Telephone>+49 1234-5678</cbc:Telephone>\n                <cbc:ElectronicMail>seller@email.de</cbc:ElectronicMail>\n            </cac:Contact>\n        </cac:Party>\n    </cac:AccountingSupplierParty>\n    <cac:AccountingCustomerParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">buyer@info.de</cbc:EndpointID>\n            <cac:PartyIdentification>\n                <cbc:ID>[Buyer identifier]</cbc:ID>\n            </cac:PartyIdentification>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Buyer address line 1]</cbc:StreetName>\n                <cbc:CityName>[Buyer city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Buyer name]</cbc:RegistrationName>\n            </cac:PartyLegalEntity>\n        </cac:Party>\n    </cac:AccountingCustomerParty>\n    <cac:PaymentMeans>\n        <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>\n        <cac:PayeeFinancialAccount>\n            <!-- dies ist eine nicht existerende aber valide IBAN als test dummy -->\n            <cbc:ID>DE79000000001234567890</cbc:ID>\n        </cac:PayeeFinancialAccount>\n    </cac:PaymentMeans>\n    <cac:PaymentTerms>\n        <cbc:Note>Zahlbar sofort ohne Abzug.</cbc:Note>\n    </cac:PaymentTerms>\n    <cac:TaxTotal>\n        <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n        <cac:TaxSubtotal>\n            <cbc:TaxableAmount currencyID=\"EUR\">314.86</cbc:TaxableAmount>\n            <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n            <cac:TaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:TaxCategory>\n        </cac:TaxSubtotal>\n    </cac:TaxTotal>\n    <cac:LegalMonetaryTotal>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">314.86</cbc:LineExtensionAmount>\n        <cbc:TaxExclusiveAmount currencyID=\"EUR\">314.86</cbc:TaxExclusiveAmount>\n        <cbc:TaxInclusiveAmount currencyID=\"EUR\">336.9</cbc:TaxInclusiveAmount>\n        <cbc:PayableAmount currencyID=\"EUR\">336.9</cbc:PayableAmount>\n    </cac:LegalMonetaryTotal>\n    <cac:InvoiceLine>\n        <cbc:ID>Zeitschrift [...]</cbc:ID>\n        <cbc:Note>Die letzte Lieferung im Rahmen des abgerechneten Abonnements erfolgt in 12/2016 Lieferung erfolgt / erfolgte direkt vom Verlag</cbc:Note>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">288.79</cbc:LineExtensionAmount>\n        <cac:InvoicePeriod>\n            <cbc:StartDate>2016-01-01</cbc:StartDate>\n            <cbc:EndDate>2016-12-31</cbc:EndDate>\n        </cac:InvoicePeriod>\n        <cac:OrderLineReference>\n            <cbc:LineID>6171175.1</cbc:LineID>\n        </cac:OrderLineReference>\n        <cac:Item>\n            <cbc:Description>Zeitschrift Inland</cbc:Description>\n            <cbc:Name>Zeitschrift [...]</cbc:Name>\n            <cac:SellersItemIdentification>\n                <cbc:ID>246</cbc:ID>\n            </cac:SellersItemIdentification>\n            <cac:CommodityClassification>\n                <cbc:ItemClassificationCode listID=\"IB\">0721-880X</cbc:ItemClassificationCode>\n            </cac:CommodityClassification>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">288.79</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n    <cac:InvoiceLine>\n        <cbc:ID>Porto + Versandkosten</cbc:ID>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">26.07</cbc:LineExtensionAmount>\n        <cac:Item>\n            <cbc:Name>Porto + Versandkosten</cbc:Name>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">26.07</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n</ubl:Invoice>\n"},"application/octet-stream":{"schema":{"type":"string","contentMediaType":"application/octet-stream"}}}},"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"format":{"anyOf":[{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},{"type":"null"}]},"report":{"type":"object","properties":{"detected":{"type":"object","properties":{"syntax":{"type":"string","enum":["ubl","cii","ksef-fa","facturae"]},"customizationId":{"type":["string","null"]},"profile":{"type":["string","null"]},"container":{"type":"string","enum":["xml","pdf"]}},"required":["syntax","customizationId","profile","container"],"additionalProperties":false},"ruleset":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"type":"string"},"coverage":{"type":"string","enum":["rules","schema"]}},"required":["id","name","version"],"additionalProperties":false},"valid":{"type":"boolean"},"pdf":{"type":"object","properties":{"pdfa":{"type":"object","properties":{"conforms":{"type":"boolean"},"part":{"type":["number","null"]},"conformance":{"type":["string","null"]},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"message":{"type":"string"}},"required":["ruleId","message"],"additionalProperties":false}}},"required":["conforms","part","conformance","findings"],"additionalProperties":false},"xmlFilename":{"type":["string","null"]},"profile":{"type":["string","null"]}},"required":["pdfa","xmlFilename","profile"],"additionalProperties":false},"engineVersion":{"type":"string"},"durationMs":{"type":"number"},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"severity":{"type":"string","enum":["fatal","error","warning","info"]},"message":{"type":"string"},"location":{"type":"string"},"test":{"type":"string"},"line":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"column":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string"},"what":{"type":"string"},"fix":{"type":"string"},"link":{"type":["string","null"]},"officialUrl":{"type":["string","null"]}},"required":["ruleId","severity","message","location","title","what","fix","link","officialUrl"],"additionalProperties":false}}},"required":["detected","ruleset","valid","findings"],"additionalProperties":false},"invoice":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}]},"usage":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["used","limit"],"additionalProperties":false}},"required":["ok","format","report","invoice","usage"],"additionalProperties":false}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"415":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/convert":{"post":{"operationId":"convertInvoice","tags":["E-invoices"],"summary":"Convert an e-invoice to another format","description":"1 call, charged only when the written file validates. Plain PDF invoices without embedded XML return 422 unsupported; reading them is not available yet.","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"target","in":"query","required":true,"description":"A format id with the convertTo tool, from /formats.","schema":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"}},{"name":"profile","in":"query","required":false,"description":"The profile, for formats that have several.","schema":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"}},{"name":"labelLocale","in":"query","required":false,"description":"The language of a rendered PDF's labels; defaults to the request's language.","schema":{"type":"string","enum":["en","de","fr","nl","it","es","pl","pt","ro"]}}],"requestBody":{"required":true,"description":"The file, at most 20 MB: as multipart/form-data with a file field, or as the raw body with its Content-Type (parameters then go in the query).","content":{"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream"},"target":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$","description":"A format id with the convertTo tool, from /formats."},"profile":{"description":"The profile, for formats that have several.","type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"labelLocale":{"description":"The language of a rendered PDF's labels; defaults to the request's language.","type":"string","enum":["en","de","fr","nl","it","es","pl","pt","ro"]}}}},"application/xml":{"schema":{"type":"string"},"example":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ubl:Invoice xmlns:ubl=\"urn:oasis:names:specification:ubl:schema:xsd:Invoice-2\"\n             xmlns:cac=\"urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2\"\n             xmlns:cbc=\"urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2\">\n    <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>\n    <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>\n    <cbc:ID>123456XX</cbc:ID>\n    <cbc:IssueDate>2016-04-04</cbc:IssueDate>\n    <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>\n    <cbc:Note>#ADU#Es gelten unsere Allgem. Geschäftsbedingungen, die Sie unter […] finden.</cbc:Note>\n    <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>\n    <cbc:BuyerReference>04011000-12345-03</cbc:BuyerReference>\n    <cac:AccountingSupplierParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">seller@email.de</cbc:EndpointID>\n            <cac:PartyName>\n                <cbc:Name>[Seller trading name]</cbc:Name>\n            </cac:PartyName>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Seller address line 1]</cbc:StreetName>\n                <cbc:CityName>[Seller city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyTaxScheme>\n                <cbc:CompanyID>DE 123456789</cbc:CompanyID>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:PartyTaxScheme>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Seller name]</cbc:RegistrationName>\n                <cbc:CompanyID>[HRA-Eintrag]</cbc:CompanyID>\n                <cbc:CompanyLegalForm>123/456/7890, HRA-Eintrag in […]</cbc:CompanyLegalForm>\n            </cac:PartyLegalEntity>\n            <cac:Contact>\n                <cbc:Name>nicht vorhanden</cbc:Name>\n                <cbc:Telephone>+49 1234-5678</cbc:Telephone>\n                <cbc:ElectronicMail>seller@email.de</cbc:ElectronicMail>\n            </cac:Contact>\n        </cac:Party>\n    </cac:AccountingSupplierParty>\n    <cac:AccountingCustomerParty>\n        <cac:Party>\n            <cbc:EndpointID schemeID=\"EM\">buyer@info.de</cbc:EndpointID>\n            <cac:PartyIdentification>\n                <cbc:ID>[Buyer identifier]</cbc:ID>\n            </cac:PartyIdentification>\n            <cac:PostalAddress>\n                <cbc:StreetName>[Buyer address line 1]</cbc:StreetName>\n                <cbc:CityName>[Buyer city]</cbc:CityName>\n                <cbc:PostalZone>12345</cbc:PostalZone>\n                <cac:Country>\n                    <cbc:IdentificationCode>DE</cbc:IdentificationCode>\n                </cac:Country>\n            </cac:PostalAddress>\n            <cac:PartyLegalEntity>\n                <cbc:RegistrationName>[Buyer name]</cbc:RegistrationName>\n            </cac:PartyLegalEntity>\n        </cac:Party>\n    </cac:AccountingCustomerParty>\n    <cac:PaymentMeans>\n        <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>\n        <cac:PayeeFinancialAccount>\n            <!-- dies ist eine nicht existerende aber valide IBAN als test dummy -->\n            <cbc:ID>DE79000000001234567890</cbc:ID>\n        </cac:PayeeFinancialAccount>\n    </cac:PaymentMeans>\n    <cac:PaymentTerms>\n        <cbc:Note>Zahlbar sofort ohne Abzug.</cbc:Note>\n    </cac:PaymentTerms>\n    <cac:TaxTotal>\n        <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n        <cac:TaxSubtotal>\n            <cbc:TaxableAmount currencyID=\"EUR\">314.86</cbc:TaxableAmount>\n            <cbc:TaxAmount currencyID=\"EUR\">22.04</cbc:TaxAmount>\n            <cac:TaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:TaxCategory>\n        </cac:TaxSubtotal>\n    </cac:TaxTotal>\n    <cac:LegalMonetaryTotal>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">314.86</cbc:LineExtensionAmount>\n        <cbc:TaxExclusiveAmount currencyID=\"EUR\">314.86</cbc:TaxExclusiveAmount>\n        <cbc:TaxInclusiveAmount currencyID=\"EUR\">336.9</cbc:TaxInclusiveAmount>\n        <cbc:PayableAmount currencyID=\"EUR\">336.9</cbc:PayableAmount>\n    </cac:LegalMonetaryTotal>\n    <cac:InvoiceLine>\n        <cbc:ID>Zeitschrift [...]</cbc:ID>\n        <cbc:Note>Die letzte Lieferung im Rahmen des abgerechneten Abonnements erfolgt in 12/2016 Lieferung erfolgt / erfolgte direkt vom Verlag</cbc:Note>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">288.79</cbc:LineExtensionAmount>\n        <cac:InvoicePeriod>\n            <cbc:StartDate>2016-01-01</cbc:StartDate>\n            <cbc:EndDate>2016-12-31</cbc:EndDate>\n        </cac:InvoicePeriod>\n        <cac:OrderLineReference>\n            <cbc:LineID>6171175.1</cbc:LineID>\n        </cac:OrderLineReference>\n        <cac:Item>\n            <cbc:Description>Zeitschrift Inland</cbc:Description>\n            <cbc:Name>Zeitschrift [...]</cbc:Name>\n            <cac:SellersItemIdentification>\n                <cbc:ID>246</cbc:ID>\n            </cac:SellersItemIdentification>\n            <cac:CommodityClassification>\n                <cbc:ItemClassificationCode listID=\"IB\">0721-880X</cbc:ItemClassificationCode>\n            </cac:CommodityClassification>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">288.79</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n    <cac:InvoiceLine>\n        <cbc:ID>Porto + Versandkosten</cbc:ID>\n        <cbc:InvoicedQuantity unitCode=\"XPP\">1</cbc:InvoicedQuantity>\n        <cbc:LineExtensionAmount currencyID=\"EUR\">26.07</cbc:LineExtensionAmount>\n        <cac:Item>\n            <cbc:Name>Porto + Versandkosten</cbc:Name>\n            <cac:ClassifiedTaxCategory>\n                <cbc:ID>S</cbc:ID>\n                <cbc:Percent>7</cbc:Percent>\n                <cac:TaxScheme>\n                    <cbc:ID>VAT</cbc:ID>\n                </cac:TaxScheme>\n            </cac:ClassifiedTaxCategory>\n        </cac:Item>\n        <cac:Price>\n            <cbc:PriceAmount currencyID=\"EUR\">26.07</cbc:PriceAmount>\n        </cac:Price>\n    </cac:InvoiceLine>\n</ubl:Invoice>\n"},"application/octet-stream":{"schema":{"type":"string","contentMediaType":"application/octet-stream"}}}},"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"file":{"type":"object","properties":{"content":{"type":"string","pattern":"^[A-Za-z0-9+/]*={0,2}$"},"filename":{"type":"string"},"mime":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["content","filename","mime","bytes"],"additionalProperties":false},"report":{"type":"object","properties":{"detected":{"type":"object","properties":{"syntax":{"type":"string","enum":["ubl","cii","ksef-fa","facturae"]},"customizationId":{"type":["string","null"]},"profile":{"type":["string","null"]},"container":{"type":"string","enum":["xml","pdf"]}},"required":["syntax","customizationId","profile","container"],"additionalProperties":false},"ruleset":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"type":"string"},"coverage":{"type":"string","enum":["rules","schema"]}},"required":["id","name","version"],"additionalProperties":false},"valid":{"type":"boolean"},"pdf":{"type":"object","properties":{"pdfa":{"type":"object","properties":{"conforms":{"type":"boolean"},"part":{"type":["number","null"]},"conformance":{"type":["string","null"]},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"message":{"type":"string"}},"required":["ruleId","message"],"additionalProperties":false}}},"required":["conforms","part","conformance","findings"],"additionalProperties":false},"xmlFilename":{"type":["string","null"]},"profile":{"type":["string","null"]}},"required":["pdfa","xmlFilename","profile"],"additionalProperties":false},"engineVersion":{"type":"string"},"durationMs":{"type":"number"},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"severity":{"type":"string","enum":["fatal","error","warning","info"]},"message":{"type":"string"},"location":{"type":"string"},"test":{"type":"string"},"line":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"column":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string"},"what":{"type":"string"},"fix":{"type":"string"},"link":{"type":["string","null"]},"officialUrl":{"type":["string","null"]}},"required":["ruleId","severity","message","location","title","what","fix","link","officialUrl"],"additionalProperties":false}}},"required":["detected","ruleset","valid","findings"],"additionalProperties":false},"losses":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["read","dropped","changed","assumed","missing"]},"path":{"type":"string"}},"required":["kind","path"],"additionalProperties":false}},"credits":{"type":"object","properties":{"spent":{"type":"integer","minimum":0,"maximum":9007199254740991},"balance":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"apiCalls":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bought":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["spent","balance","apiCalls","plan","bought"],"additionalProperties":false}},"required":["ok","file","report","losses","credits"],"additionalProperties":false}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"415":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/make":{"post":{"operationId":"makeInvoice","tags":["E-invoices"],"summary":"Write an invoice from JSON in any format Klarbon makes","description":"1 call, charged only when the written file validates.","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"invoice":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"target":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"profile":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"labelLocale":{"type":"string","enum":["en","de","fr","nl","it","es","pl","pt","ro"]}},"required":["invoice","target"]},"example":{"invoice":{"kind":"invoice","typeCode":"380","number":"123456XX","issueDate":"2016-04-04","currency":"EUR","buyerReference":"04011000-12345-03","paymentTerms":"Zahlbar sofort ohne Abzug.","processId":"urn:fdc:peppol.eu:2017:poacc:billing:01:1.0","specificationId":"urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0","notes":[{"text":"Es gelten unsere Allgem. Geschäftsbedingungen, die Sie unter […] finden.","subjectCode":"ADU"}],"precedingInvoices":[],"seller":{"name":"[Seller name]","tradingName":"[Seller trading name]","identifiers":[],"legalRegistration":{"value":"[HRA-Eintrag]"},"vatId":"DE 123456789","legalInformation":"123/456/7890, HRA-Eintrag in […]","electronicAddress":{"value":"seller@email.de","scheme":"EM"},"address":{"line1":"[Seller address line 1]","city":"[Seller city]","postCode":"12345","country":"DE"},"contact":{"name":"nicht vorhanden","telephone":"+49 1234-5678","email":"seller@email.de"}},"buyer":{"name":"[Buyer name]","identifiers":[{"value":"[Buyer identifier]"}],"electronicAddress":{"value":"buyer@info.de","scheme":"EM"},"address":{"line1":"[Buyer address line 1]","city":"[Buyer city]","postCode":"12345","country":"DE"}},"payment":{"meansCode":"58","creditTransfers":[{"iban":"DE79000000001234567890"}]},"allowances":[],"charges":[],"totals":{"lineTotal":"314.86","taxExclusive":"314.86","tax":"22.04","taxInclusive":"336.9","payable":"336.9"},"vatBreakdown":[{"category":"S","rate":"7","taxableAmount":"314.86","taxAmount":"22.04"}],"attachments":[],"lines":[{"id":"Zeitschrift [...]","note":"Die letzte Lieferung im Rahmen des abgerechneten Abonnements erfolgt in 12/2016 Lieferung erfolgt / erfolgte direkt vom Verlag","quantity":"1","unit":"XPP","netAmount":"288.79","orderLineReference":"6171175.1","period":{"start":"2016-01-01","end":"2016-12-31"},"allowances":[],"charges":[],"price":{"amount":"288.79"},"vat":{"category":"S","rate":"7"},"item":{"name":"Zeitschrift [...]","description":"Zeitschrift Inland","sellerId":"246","classifications":[{"value":"0721-880X","scheme":"IB"}],"attributes":[]}},{"id":"Porto + Versandkosten","quantity":"1","unit":"XPP","netAmount":"26.07","allowances":[],"charges":[],"price":{"amount":"26.07"},"vat":{"category":"S","rate":"7"},"item":{"name":"Porto + Versandkosten","classifications":[],"attributes":[]}}],"nationalTerms":[],"source":{"format":"xrechnung","syntax":"ubl","customizationId":"urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0"}},"target":"xrechnung"}}}},"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"file":{"type":"object","properties":{"content":{"type":"string","pattern":"^[A-Za-z0-9+/]*={0,2}$"},"filename":{"type":"string"},"mime":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["content","filename","mime","bytes"],"additionalProperties":false},"report":{"type":"object","properties":{"detected":{"type":"object","properties":{"syntax":{"type":"string","enum":["ubl","cii","ksef-fa","facturae"]},"customizationId":{"type":["string","null"]},"profile":{"type":["string","null"]},"container":{"type":"string","enum":["xml","pdf"]}},"required":["syntax","customizationId","profile","container"],"additionalProperties":false},"ruleset":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"type":"string"},"coverage":{"type":"string","enum":["rules","schema"]}},"required":["id","name","version"],"additionalProperties":false},"valid":{"type":"boolean"},"pdf":{"type":"object","properties":{"pdfa":{"type":"object","properties":{"conforms":{"type":"boolean"},"part":{"type":["number","null"]},"conformance":{"type":["string","null"]},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"message":{"type":"string"}},"required":["ruleId","message"],"additionalProperties":false}}},"required":["conforms","part","conformance","findings"],"additionalProperties":false},"xmlFilename":{"type":["string","null"]},"profile":{"type":["string","null"]}},"required":["pdfa","xmlFilename","profile"],"additionalProperties":false},"engineVersion":{"type":"string"},"durationMs":{"type":"number"},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"severity":{"type":"string","enum":["fatal","error","warning","info"]},"message":{"type":"string"},"location":{"type":"string"},"test":{"type":"string"},"line":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"column":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string"},"what":{"type":"string"},"fix":{"type":"string"},"link":{"type":["string","null"]},"officialUrl":{"type":["string","null"]}},"required":["ruleId","severity","message","location","title","what","fix","link","officialUrl"],"additionalProperties":false}}},"required":["detected","ruleset","valid","findings"],"additionalProperties":false},"losses":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["read","dropped","changed","assumed","missing"]},"path":{"type":"string"}},"required":["kind","path"],"additionalProperties":false}},"credits":{"type":"object","properties":{"spent":{"type":"integer","minimum":0,"maximum":9007199254740991},"balance":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"apiCalls":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bought":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["spent","balance","apiCalls","plan","bought"],"additionalProperties":false}},"required":["ok","file","report","losses","credits"],"additionalProperties":false}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/bank/convert":{"post":{"operationId":"convertBankStatement","tags":["Bank statements"],"summary":"Convert a bank statement, answering what the file leaves open","description":"When the file leaves something open (date order, opening balance, an account to choose), the answer is status need: send the same file again with the answer and resume. Nothing is charged for a need. A converted statement costs 1 call per started 500 transactions. Reading PDF statements is not available yet; PDF input returns 503 extract_failed. Structured bank files such as CAMT.053 and MT940 can be converted.","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"},{"name":"target","in":"query","required":true,"description":"A bank format id with the convertTo tool, from /formats.","schema":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"}},{"name":"statementNumber","in":"query","required":false,"description":"The statement number MT940 and CODA carry; digits only.","schema":{"type":"string","pattern":"^\\d{1,5}$"}},{"name":"openingBalance","in":"query","required":false,"description":"The opening balance the file does not print, as a decimal string.","schema":{"type":"string","pattern":"^-?(?:0|[1-9]\\d{0,17})(?:\\.\\d{1,8})?$"}},{"name":"dateOrder","in":"query","required":false,"description":"How the file writes its dates.","schema":{"type":"string","enum":["dmy","mdy","ymd"]}},{"name":"century","in":"query","required":false,"description":"The century of two-digit years.","schema":{"type":"string","enum":["1900","2000"]}},{"name":"currency","in":"query","required":false,"description":"ISO 4217, for a file that states no currency.","schema":{"type":"string","pattern":"^[A-Z]{3}$"}},{"name":"decimalSeparator","in":"query","required":false,"description":"The decimal separator of the file's amounts.","schema":{"type":"string","enum":[".",","]}},{"name":"account","in":"query","required":false,"description":"For a file with several accounts: the chosen account's position in the need's preview.accounts.","schema":{"type":"string","pattern":"^\\d{1,5}$"}},{"name":"resume","in":"query","required":false,"description":"From the last need answer, with the same file: the file is not read a second time.","schema":{"type":"string","maxLength":16777216}}],"requestBody":{"required":true,"description":"The file, at most 20 MB: as multipart/form-data with a file field, or as the raw body with its Content-Type (parameters then go in the query).","content":{"multipart/form-data":{"schema":{"type":"object","required":["file"],"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream"},"target":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$","description":"A bank format id with the convertTo tool, from /formats."},"statementNumber":{"description":"The statement number MT940 and CODA carry; digits only.","type":"string","pattern":"^\\d{1,5}$"},"openingBalance":{"description":"The opening balance the file does not print, as a decimal string.","type":"string","pattern":"^-?(?:0|[1-9]\\d{0,17})(?:\\.\\d{1,8})?$"},"dateOrder":{"description":"How the file writes its dates.","type":"string","enum":["dmy","mdy","ymd"]},"century":{"description":"The century of two-digit years.","type":"string","enum":["1900","2000"]},"currency":{"description":"ISO 4217, for a file that states no currency.","type":"string","pattern":"^[A-Z]{3}$"},"decimalSeparator":{"description":"The decimal separator of the file's amounts.","type":"string","enum":[".",","]},"account":{"description":"For a file with several accounts: the chosen account's position in the need's preview.accounts.","type":"string","pattern":"^\\d{1,5}$"},"resume":{"description":"From the last need answer, with the same file: the file is not read a second time.","type":"string","maxLength":16777216}}}},"application/xml":{"schema":{"type":"string"},"example":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Document xmlns=\"urn:iso:std:iso:20022:tech:xsd:camt.053.001.02\">\n<BkToCstmrStmt><GrpHdr><MsgId>KLARBON-FICTIONAL-001</MsgId><CreDtTm>2026-11-05T12:00:00Z</CreDtTm></GrpHdr>\n<Stmt><Id>FICTIONAL-STATEMENT-001</Id><ElctrncSeqNb>1</ElctrncSeqNb><CreDtTm>2026-11-05T12:00:00Z</CreDtTm>\n<Acct><Id><IBAN>DE89370400440532013000</IBAN></Id><Ccy>EUR</Ccy></Acct>\n<Bal><Tp><CdOrPrtry><Cd>OPBD</Cd></CdOrPrtry></Tp><Amt Ccy=\"EUR\">1000.00</Amt><CdtDbtInd>CRDT</CdtDbtInd><Dt><Dt>2026-11-01</Dt></Dt></Bal>\n<Bal><Tp><CdOrPrtry><Cd>CLBD</Cd></CdOrPrtry></Tp><Amt Ccy=\"EUR\">1075.00</Amt><CdtDbtInd>CRDT</CdtDbtInd><Dt><Dt>2026-11-04</Dt></Dt></Bal>\n<Ntry><NtryRef>TEST-1</NtryRef><Amt Ccy=\"EUR\">100.00</Amt><CdtDbtInd>CRDT</CdtDbtInd><Sts>BOOK</Sts><BookgDt><Dt>2026-11-02</Dt></BookgDt><ValDt><Dt>2026-11-02</Dt></ValDt><BkTxCd><Prtry><Cd>TEST</Cd></Prtry></BkTxCd><NtryDtls><TxDtls><RmtInf><Ustrd>Fictional customer payment</Ustrd></RmtInf></TxDtls></NtryDtls></Ntry>\n<Ntry><NtryRef>TEST-2</NtryRef><Amt Ccy=\"EUR\">25.00</Amt><CdtDbtInd>DBIT</CdtDbtInd><Sts>BOOK</Sts><BookgDt><Dt>2026-11-03</Dt></BookgDt><ValDt><Dt>2026-11-03</Dt></ValDt><BkTxCd><Prtry><Cd>TEST</Cd></Prtry></BkTxCd><NtryDtls><TxDtls><RmtInf><Ustrd>Fictional office supplies</Ustrd></RmtInf></TxDtls></NtryDtls></Ntry>\n</Stmt></BkToCstmrStmt></Document>\n"},"application/octet-stream":{"schema":{"type":"string","contentMediaType":"application/octet-stream"}}}},"responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"ok":{"type":"boolean","const":true},"status":{"type":"string","const":"need"},"need":{"type":"string","enum":["openingBalance","dateOrder","century","currency","decimalSeparator","account"]},"preview":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"format":{"type":"string"},"resume":{"type":"string"}},"required":["ok","status","need","preview","format","resume"],"additionalProperties":false},{"type":"object","properties":{"ok":{"type":"boolean","const":true},"status":{"type":"string","const":"converted"},"format":{"type":"string"},"files":{"minItems":1,"type":"array","items":{"type":"object","properties":{"content":{"type":"string","pattern":"^[A-Za-z0-9+/]*={0,2}$"},"filename":{"type":"string"},"mime":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["content","filename","mime","bytes"],"additionalProperties":false}},"preview":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"warnings":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"message":{"type":"string"}},"required":["key","message"],"additionalProperties":false}},"credits":{"type":"object","properties":{"spent":{"type":"integer","minimum":0,"maximum":9007199254740991},"balance":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"apiCalls":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bought":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["spent","balance","apiCalls","plan","bought"],"additionalProperties":false}},"required":["ok","status","format","files","preview","warnings","credits"],"additionalProperties":false}]}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"413":{"$ref":"#/components/responses/Error"},"415":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"503":{"$ref":"#/components/responses/Error"}}}},"/usage":{"get":{"operationId":"getUsage","tags":["Account"],"summary":"The API balance, credits left, auto top-up and today's free calls","responses":{"200":{"description":"OK","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"credits":{"type":"object","properties":{"plan":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bought":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"balance":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"apiCalls":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["plan","bought","balance","apiCalls"],"additionalProperties":false},"today":{"type":"object","properties":{"open":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["used","limit"],"additionalProperties":false},"check":{"type":"object","properties":{"used":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"limit":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["used","limit"],"additionalProperties":false}},"required":["open","check"],"additionalProperties":false},"topUp":{"anyOf":[{"type":"object","properties":{"enabled":{"type":"boolean"},"pack":{"type":"string","enum":["credits-10","credits-50"]},"threshold":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["enabled","pack","threshold"],"additionalProperties":false},{"type":"null"}]},"apiTopUp":{"anyOf":[{"type":"object","properties":{"enabled":{"type":"boolean"},"pack":{"type":"string","enum":["api-1k","api-5k","api-25k","api-100k"]},"threshold":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["enabled","pack","threshold"],"additionalProperties":false},{"type":"null"}]}},"required":["ok","credits","today","topUp","apiTopUp"],"additionalProperties":false}}}},"401":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"}}}},"/openapi.json":{"get":{"operationId":"getOpenApi","tags":["Account"],"summary":"This document","security":[{}],"responses":{"200":{"description":"OpenAPI 3.1","content":{"application/json":{}}}}}}},"components":{"securitySchemes":{"apiKey":{"type":"http","scheme":"bearer","description":"An API key from your account page. Never put it in the address: such keys are refused."}},"parameters":{"IdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"description":"A unique string of 1 to 255 visible ASCII characters, without spaces. A repeat with the same key and request within 24 hours runs again without another charge.","schema":{"type":"string","minLength":1,"maxLength":255}}},"headers":{"RateLimit":{"description":"What is left in each limit (IETF draft-ietf-httpapi-ratelimit-headers).","schema":{"type":"string"}},"RateLimitPolicy":{"description":"Each limit's quota q and window w in seconds.","schema":{"type":"string"}}},"responses":{"Error":{"description":"An error: a code and one plain sentence in the request's language. checkoutUnavailable (503) means buying is switched off; existing credits and free grants still work. When buying is open, no_credits (402, the combined API balance and credits cannot cover the call) includes where to buy API calls or switch on auto top-up.","headers":{"RateLimit":{"$ref":"#/components/headers/RateLimit"},"RateLimit-Policy":{"$ref":"#/components/headers/RateLimitPolicy"},"Retry-After":{"description":"On 429: seconds to wait.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":false},"error":{"type":"string","enum":["invalid","too_large","unsupported","limit","no_credits","checkoutUnavailable","auth","turnstile","engine_unavailable","extract_failed","internal"]},"message":{"type":"string"},"report":{"type":"object","properties":{"detected":{"type":"object","properties":{"syntax":{"type":"string","enum":["ubl","cii","ksef-fa","facturae"]},"customizationId":{"type":["string","null"]},"profile":{"type":["string","null"]},"container":{"type":"string","enum":["xml","pdf"]}},"required":["syntax","customizationId","profile","container"],"additionalProperties":false},"ruleset":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"type":"string"},"coverage":{"type":"string","enum":["rules","schema"]}},"required":["id","name","version"],"additionalProperties":false},"valid":{"type":"boolean"},"pdf":{"type":"object","properties":{"pdfa":{"type":"object","properties":{"conforms":{"type":"boolean"},"part":{"type":["number","null"]},"conformance":{"type":["string","null"]},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"message":{"type":"string"}},"required":["ruleId","message"],"additionalProperties":false}}},"required":["conforms","part","conformance","findings"],"additionalProperties":false},"xmlFilename":{"type":["string","null"]},"profile":{"type":["string","null"]}},"required":["pdfa","xmlFilename","profile"],"additionalProperties":false},"engineVersion":{"type":"string"},"durationMs":{"type":"number"},"findings":{"type":"array","items":{"type":"object","properties":{"ruleId":{"type":"string"},"severity":{"type":"string","enum":["fatal","error","warning","info"]},"message":{"type":"string"},"location":{"type":"string"},"test":{"type":"string"},"line":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"column":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string"},"what":{"type":"string"},"fix":{"type":"string"},"link":{"type":["string","null"]},"officialUrl":{"type":["string","null"]}},"required":["ruleId","severity","message","location","title","what","fix","link","officialUrl"],"additionalProperties":false}}},"required":["detected","ruleset","valid","findings"],"additionalProperties":false},"topUpUrl":{"type":"string","format":"uri"}},"required":["ok","error","message"],"additionalProperties":false}}}}}}}