[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs:country-at":3},{"versions":4,"version":26,"nav":28,"path":76,"kind":106,"page":107},[5,10,13,16,18,20,22,24],{"name":6,"label":7,"prefix":8,"channel":9},"0.7","0.7 (latest)","","latest",{"name":11,"label":12,"prefix":11,"channel":11},"next","next (unreleased)",{"name":14,"label":14,"prefix":14,"channel":15},"0.6","old",{"name":17,"label":17,"prefix":17,"channel":15},"0.5",{"name":19,"label":19,"prefix":19,"channel":15},"0.4",{"name":21,"label":21,"prefix":21,"channel":15},"0.3",{"name":23,"label":23,"prefix":23,"channel":15},"0.2",{"name":25,"label":25,"prefix":25,"channel":15},"0.1",{"name":6,"label":7,"prefix":8,"channel":9,"base":27},"\u002Fdocs",[29,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,87,91,94,97,100,103],{"slug":30,"title":31,"preview":32},"index","Home",false,{"slug":34,"title":35,"preview":32},"getting-started","Getting started",{"slug":37,"title":38,"preview":32},"concepts","E-invoicing basics",{"slug":40,"title":41,"preview":32},"examples","Examples",{"slug":43,"title":44,"preview":32},"building-invoices","Building invoices",{"slug":46,"title":47,"preview":32},"formats","Formats and profiles",{"slug":49,"title":50,"preview":32},"validation","Validation",{"slug":52,"title":53,"preview":32},"templates","Templates and design",{"slug":55,"title":56,"preview":32},"documents","Quotes and other documents",{"slug":58,"title":59,"preview":32},"reading","Reading incoming invoices",{"slug":61,"title":62,"preview":32},"laravel","Laravel integration",{"slug":64,"title":65,"preview":32},"configuration","Configuration",{"slug":67,"title":68,"preview":32},"commands","Artisan commands",{"slug":70,"title":71,"preview":32},"testing","Testing",{"slug":73,"title":74,"preview":32},"country-packs","Country packs",{"slug":76,"title":77,"parent":74,"preview":32},"country-at","Austria",{"slug":79,"title":80,"parent":74,"preview":32},"country-be","Belgium",{"slug":82,"title":83,"parent":74,"preview":32},"country-ch","Switzerland",{"slug":85,"title":86,"parent":74,"preview":32},"country-fr","France",{"slug":88,"title":89,"preview":90},"managed","Managed layer (preview)",true,{"slug":92,"title":93,"preview":32},"troubleshooting","Troubleshooting",{"slug":95,"title":96,"preview":32},"faq","FAQ",{"slug":98,"title":99,"preview":32},"compatibility","Versioning and compatibility",{"slug":101,"title":102,"preview":32},"field-reference","Field reference",{"slug":104,"title":105,"preview":32},"ai","AI assistants","page",{"title":77,"description":108,"html":109,"headings":110,"editUrl":194,"markdownUrl":195,"prev":196,"next":197},"The Austrian pack implements the mandatory invoice information of the Austrian VAT act (UStG 1994, Umsatzsteuergesetz), the Austrian national CIUS of EN 16931 (CIUS-AT-NAT, and CIUS-AT-GOV for the federal government), …","\u003Ch1 id=\"austria-quittiocountry-at\">Austria (\u003Ccode>quittio\u002Fcountry-at\u003C\u002Fcode>)\u003C\u002Fh1>\n\u003Cblockquote class=\"q-doc-note\">\n\u003Cp>\u003Cstrong>Not reviewed by a tax adviser yet.\u003C\u002Fstrong> The legal wording, rules and defaults of this pack follow the law and the official sources as of October 2026, but have not been reviewed by an Austrian tax adviser. Check the mentions and rates of your invoices before you rely on them. Quittio is no tax or legal advice; the business that issues an invoice remains responsible for it.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>The Austrian pack implements the mandatory invoice information of the Austrian VAT act (UStG 1994, Umsatzsteuergesetz), the Austrian national CIUS of EN 16931 (CIUS-AT-NAT, and CIUS-AT-GOV for the federal government), the Austrian XML invoice format ebInterface and the Austrian law on late payment. Its class is \u003Ccode>Quittio\\Country\\AT\\CountryAT\u003C\u002Fcode> (code \u003Ccode>AT\u003C\u002Fcode>, translation namespace \u003Ccode>quittio-at\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Legal references.\u003C\u002Fstrong> This page writes Austrian legal references in English form: &quot;section 11 (1) no. 3 lit. a UStG&quot; stands for &quot;§ 11 Abs. 1 Z 3 lit. a UStG&quot;, and &quot;Art. 6 UStG&quot; for an article of the annex to the UStG (the Binnenmarktregelung, the rules for the EU single market). Other laws cited are the Commercial Code (UGB, Unternehmensgesetzbuch), the Civil Code (ABGB, Allgemeines bürgerliches Gesetzbuch) and the Federal Fiscal Code (BAO, Bundesabgabenordnung). Values that the pack stores or prints in German keep their German form.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Terms.\u003C\u002Fstrong> The UID (Umsatzsteuer-Identifikationsnummer) is the Austrian VAT identifier, e.g. \u003Ccode>ATU12345678\u003C\u002Fcode>. A Gutschrift is a self-billed invoice, a Kleinunternehmer a small business that charges no VAT. e-Rechnung.gv.at is the portal of the federal government for incoming e-invoices, run by the Bundesrechenzentrum (BRZ) for the Federal Ministry of Finance (BMF).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Not part of \u003Ccode>quittio\u002Fquittio\u003C\u002Fcode>.\u003C\u002Fstrong> The pack is a package of its own, released with the same version as the rest of Quittio. If EN 16931, profile or CIUS are new to you, read \u003Ca href=\"\u002Fdocs\u002Fconcepts\">E-invoicing basics\u003C\u002Fa> first.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"installation\">Installation\u003Ca class=\"q-doc-anchor\" href=\"#installation\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>bash\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FFA657\">composer\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> require\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> quittio\u002Fcountry-at\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>The pack needs PHP 8.3 and \u003Ccode>quittio\u002Fcore\u003C\u002Fcode> of the same version. It is not part of \u003Ccode>quittio\u002Fquittio\u003C\u002Fcode>; install it next to \u003Ccode>quittio\u002Fquittio\u003C\u002Fcode> (Laravel) or next to \u003Ccode>quittio\u002Fcore\u003C\u002Fcode> (without Laravel). It is developed in the monorepo \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FQuittio\u002Fquittio\u002Ftree\u002Fmaster\u002Fpackages\u002Fcountry-at\">Quittio\u002Fquittio\u003C\u002Fa> and published as the read-only repository \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FQuittio\u002Fcountry-at\">Quittio\u002Fcountry-at\u003C\u002Fa>; please open issues and pull requests in the monorepo.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Laravel.\u003C\u002Fstrong> The pack declares itself in its \u003Ccode>composer.json\u003C\u002Fcode> under \u003Ccode>extra.quittio.country-packs\u003C\u002Fcode> (\u003Ccode>Quittio\\Country\\AT\\CountryAT\u003C\u002Fcode>), so Laravel registers it after \u003Ccode>composer require\u003C\u002Fcode> without further steps (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#laravel\">Registering packs: Laravel\u003C\u002Fa>). \u003Ccode>php artisan quittio:countries\u003C\u002Fcode> lists it. The pack has no service provider, no configuration file and no settings under \u003Ccode>quittio.countries.at\u003C\u002Fcode>. To invoice as an Austrian company, set your seller in \u003Ccode>config\u002Fquittio.php\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fconfiguration#your-company\">Your company\u003C\u002Fa>) with the country \u003Ccode>AT\u003C\u002Fcode>:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#8B949E\">\u002F\u002F config\u002Fquittio.php\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#A5D6FF\">'seller'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#A5D6FF\">    'name'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#A5D6FF\">    'vat_id'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,                         \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F UID\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#A5D6FF\">    'address'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#A5D6FF\">        'line1'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#A5D6FF\">        'postcode'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> '1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#A5D6FF\">        'city'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#A5D6FF\">        'country'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#E6EDF3\">    ],\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#A5D6FF\">    'bank_accounts'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#E6EDF3\">        [\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'iban'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'bic'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'BKAUATWW'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'name'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">],\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#E6EDF3\">    ],\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">],\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>\u003Ccode>Quittio::invoice()\u003C\u002Fcode> then starts every invoice with this seller, and lines without \u003Ccode>vat:\u003C\u002Fcode> get the standard rate of 20 % (\u003Ca href=\"\u002Fdocs\u002Fbuilding-invoices#default-vat\">Default VAT\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Without Laravel.\u003C\u002Fstrong> Pass the pack to \u003Ccode>Quittio::create()\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#without-laravel\">Registering packs: without Laravel\u003C\u002Fa>):\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Tax\\CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'country'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">useDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">countries\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()));   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F lines without vat(): 20 %\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>Registering the pack adds it to the country registry, registers its profiles \u003Ccode>cius-at-nat\u003C\u002Fcode> and \u003Ccode>cius-at-gov\u003C\u002Fcode>, makes its ebInterface reader available to \u003Ccode>read()\u003C\u002Fcode> and \u003Ccode>validateFile()\u003C\u002Fcode>, and registers \u003Ccode>resources\u002Flang\u003C\u002Fcode> as the translation namespace \u003Ccode>quittio-at\u003C\u002Fcode>. The option \u003Ccode>country\u003C\u002Fcode> is only the default for invoices whose seller has no country code.\u003C\u002Fp>\n\u003Ch2 id=\"when-it-applies\">When it applies\u003Ca class=\"q-doc-anchor\" href=\"#when-it-applies\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>The pack leads every invoice whose seller is in Austria (seller country code BT-40 \u003Ccode>AT\u003C\u002Fcode>), or whose run names it (\u003Ccode>-&gt;country('AT')\u003C\u002Fcode>). It then checks the \u003Ca href=\"#ustg-rules\">UStG rules\u003C\u002Fa>, chooses the format for Austrian public buyers (\u003Ca href=\"#format-choice\">Format choice\u003C\u002Fa>) and provides the \u003Ca href=\"#defaults\">defaults\u003C\u002Fa>: German as language (unless the invoice or the configuration sets one), A4 paper, the free letter layout and the EPC GiroCode.\u003C\u002Fp>\n\u003Cp>For an invoice from another country to a buyer in Austria, only the format rule of the pack applies: a buyer with an Austrian organisation number receives UBL after CIUS-AT-GOV, whatever the seller's country. The UStG rules are not applied to such invoices. Details are in \u003Ca href=\"\u002Fdocs\u002Fcountry-packs#how-a-pack-is-selected\">How a pack is selected\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Without the pack, an Austrian seller gets the generic pack: EN 16931 rules only, and the warning \u003Ccode>QUITTIO-GENERIC-COUNTRY\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch2 id=\"common-tasks\">Common tasks\u003Ca class=\"q-doc-anchor\" href=\"#common-tasks\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>You want to\u003C\u002Fth>\n\u003Cth>Read\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Build, render and validate a typical Austrian invoice\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#complete-example\">Complete example\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Set the VAT rate or an exemption on a line\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#tax-presets\">Tax presets\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Invoice as a small business without VAT (Kleinunternehmer)\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#small-businesses\">Small businesses\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Invoice a business in another EU country\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#reverse-charge-and-intra-community-supplies\">Reverse charge and intra-community supplies\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Issue an invoice of up to 400 EUR with fewer details\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#simplified-invoices\">Simplified invoices\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Look up a validation code such as \u003Ccode>AT-USTG-05\u003C\u002Fcode> or \u003Ccode>AT-GOV-01\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#ustg-rules\">UStG rules\u003C\u002Fa>, \u003Ca href=\"#profiles\">Profiles\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Invoice the federal government (e-Rechnung.gv.at)\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#format-choice\">Format choice\u003C\u002Fa>, \u003Ca href=\"#profiles\">Profiles\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Write or read ebInterface\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#ebinterface\">ebInterface\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Issue a self-billed invoice (Gutschrift)\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#self-billing-gutschrift\">Self-billing\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Cancel or correct an invoice\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#cancellations-and-corrections\">Cancellations and corrections\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Send a reminder with default interest\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#late-payment\">Late payment\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Change a text of the pack\u003C\u002Ftd>\n\u003Ctd data-label=\"Read\">\u003Ca href=\"#translations\">Translations\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2 id=\"complete-example\">Complete example\u003Ca class=\"q-doc-anchor\" href=\"#complete-example\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>An invoice of an Austrian company to an Austrian business, without Laravel. It is rendered as ZUGFeRD with the profile EN 16931 (the \u003Ca href=\"\u002Fdocs\u002Fformats#automatic-choice\">automatic format choice\u003C\u002Fa> for a domestic business invoice), in German, and validated with the EN 16931 and UStG rules:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Tax\\CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Tax\\VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'country'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">useDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">countries\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()));   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F lines without vat(): 20 %\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$invoice \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">number\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0042'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">issueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">deliveryDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-09-30'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                                      \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F date of the supply (AT-USTG-04)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                                        \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F UID of the seller (AT-USTG-03)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">contact\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Anna Huber'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'+43 1 234567'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'rechnung@donau-werkstatt.example'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Tiroler Handel KG'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU87654321'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                                        \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F required above 10,000 EUR gross (AT-USTG-05)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Maria-Theresien-Straße 10'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'6020'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Innsbruck'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Softwareentwicklung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'100.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">12\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">unit\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Hour\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 20 %\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Fachbuch'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'45.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Reduced\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                          \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 10 %\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">paymentTerms\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">fn\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> ($terms) => $terms\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">dueInDays\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">14\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">payment\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SepaCreditTransfer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">iban\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">bic\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'BKAUATWW'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">build\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">format\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();                          \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"zugferd\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">profile\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">?->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">key\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();                 \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"en16931\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">validation\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">isValid\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();           \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F true: no errors (and here no warnings either)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">data\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">totals\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">?->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">grossTotal;       \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F EUR 1489.50\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">save\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">__DIR__\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">.\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'\u002Finvoices\u002F'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);        \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F invoices\u002FRechnung_RE-2026-0042.pdf\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>\u003Ccode>render()\u003C\u002Fcode> throws a \u003Ccode>ValidationException\u003C\u002Fcode> when a rule reports an error, e.g. \u003Ccode>AT-USTG-04\u003C\u002Fcode> without a delivery date (\u003Ca href=\"\u002Fdocs\u002Fvalidation\">Validation\u003C\u002Fa>). The PDF carries a GiroCode for the transfer (\u003Ca href=\"#payment-qr-code\">Payment QR code\u003C\u002Fa>). In Laravel, start with \u003Ccode>Quittio::invoice()\u003C\u002Fcode> instead of \u003Ccode>InvoiceBuilder::make()-&gt;seller(…)\u003C\u002Fcode>; the rest of the chain is the same.\u003C\u002Fp>\n\u003Ch2 id=\"tax-presets\">Tax presets\u003Ca class=\"q-doc-anchor\" href=\"#tax-presets\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A tax preset is a ready-made VAT treatment for an invoice line. It sets the VAT category (BT-151) and the rate, and for exempt supplies also the exemption reason code (BT-121) and text (BT-120). Use a preset instead of a bare category and rate: the line then carries the wording the UStG requires, and the Austrian rules recognise the case. Lines without \u003Ccode>vat:\u003C\u002Fcode> take the \u003Ca href=\"\u002Fdocs\u002Fbuilding-invoices#default-vat\">default VAT\u003C\u002Fa>: \u003Ccode>VatPreset::Standard\u003C\u002Fcode> for an Austrian seller, \u003Ccode>VatPreset::SmallBusiness\u003C\u002Fcode> for a small business.\u003C\u002Fp>\n\u003Cp>The categories are the codes of EN 16931: \u003Ccode>S\u003C\u002Fcode> standard rate, \u003Ccode>E\u003C\u002Fcode> exempt, \u003Ccode>AE\u003C\u002Fcode> reverse charge, \u003Ccode>K\u003C\u002Fcode> intra-community supply, \u003Ccode>G\u003C\u002Fcode> export outside the EU, \u003Ccode>O\u003C\u002Fcode> not subject to VAT (see \u003Ca href=\"\u002Fdocs\u002Fbuilding-invoices#categories\">Categories\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>\u003Ccode>Quittio\\Country\\AT\\Tax\\VatPreset\u003C\u002Fcode> is a string-backed enum that implements \u003Ccode>DatedTaxPreset\u003C\u002Fcode>. Apply it per line:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Tax\\VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$builder \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#8B949E\">    \u002F\u002F ... number, dates, seller and buyer as in the complete example\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Softwareentwicklung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'100.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">12\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">unit\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Hour\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Standard\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 20 %\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Fachbuch'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'45.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Reduced\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                                                     \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 10 %\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Milch'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1.50'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">10\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">unit\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Litre\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">BasicFood\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                 \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 4.9 % for a supply from 1 July 2026\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#8B949E\">    \u002F\u002F an exemption without its own case: the legal reference;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#8B949E\">    \u002F\u002F the invoice prints \"Steuerfrei gemäß § 6 Abs. 1 Z 19 UStG\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Ärztliche Leistung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'300.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">exempt\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'§ 6 Abs. 1 Z 19 UStG'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">));\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Case\u003C\u002Fth>\n\u003Cth>Key\u003C\u002Fth>\n\u003Cth>Category\u003C\u002Fth>\n\u003Cth>Rate\u003C\u002Fth>\n\u003Cth>Code (BT-121)\u003C\u002Fth>\n\u003Cth>Use\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Standard\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.standard\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>S\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">20\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">–\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Standard rate (section 10 (1) UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Reduced\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.reduced\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>S\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">10\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">–\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Reduced rate (section 10 (2) UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Reduced13\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.reduced_13\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>S\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">13\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">–\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Second reduced rate (section 10 (3) UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>BasicFood\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.basic_food\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>S\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">4.9 from 1 July 2026, 10 before (by supply date)\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">–\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Basic foods (section 10 (1a) UStG, BGBl. I Nr. 37\u002F2026)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>SmallBusiness\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.small_business\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">–\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Small business exemption (Kleinunternehmer, section 6 (1) no. 27 UStG); see \u003Ca href=\"#small-businesses\">Small businesses\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>ReverseChargeDomestic\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.reverse_charge_domestic\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Domestic reverse charge (section 19 (1a) to (1e) UStG): the buyer in Austria owes the VAT\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>ReverseChargeEu\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.reverse_charge_eu\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Service to a business in another member state, which owes the VAT there (section 19 (1) sentence 2 UStG). Issue the invoice by the 15th of the following month (\u003Ccode>AT-USTG-12\u003C\u002Fcode>).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>IntraCommunitySupply\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.intra_community_supply\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>K\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-IC\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">VAT-exempt intra-community supply (Art. 6 (1) with Art. 7 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>TriangularTransaction\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.triangular_transaction\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-AE\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Intra-community triangular transaction (Art. 25 UStG), in which the last customer owes the VAT\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Export\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.export\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>G\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-G\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">VAT-exempt export supply (section 6 (1) no. 1 with section 7 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>NotTaxableInAustria\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.not_taxable\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>O\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">none\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-O\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Supply not taxable in Austria (place of supply abroad)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>MarginSecondHand\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.margin_second_hand\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-F\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Margin scheme, second-hand goods (section 24 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>MarginArt\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.margin_art\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-I\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Margin scheme, works of art (section 24 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>MarginAntiques\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.margin_antiques\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-J\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Margin scheme, collectors' items and antiques (section 24 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>TravelAgency\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.travel_agency\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>VATEX-EU-D\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Margin scheme of travel agencies (section 23 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>VatPreset::exempt(string $paragraph, $code = null)\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Key\">\u003Ccode>at.exempt\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Category\">\u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate\">0\u003C\u002Ftd>\n\u003Ctd data-label=\"Code (BT-121)\">\u003Ccode>$code\u003C\u002Fcode> (enum, raw code or string)\u003C\u002Ftd>\n\u003Ctd data-label=\"Use\">Any other exemption, e.g. \u003Ccode>§ 6 Abs. 1 Z 19 UStG\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>The codes in column BT-121 are VATEX codes: the standard codes for the reason of an exemption. \u003Ccode>SmallBusiness\u003C\u002Fcode> has none.\u003C\u002Fp>\n\u003Cp>\u003Ccode>BasicFood\u003C\u002Fcode> takes the rate that applied on the supply date of the line (\u003Ccode>TaxTables::BASIC_FOOD_RATE\u003C\u002Fcode>): a delivery on 30 June 2026 gets 10 %, one on 1 July 2026 gets 4.9 %. The supply date is found as for the German presets (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#tax-presets\">Germany: tax presets\u003C\u002Fa>): the end of the line period, its start, the VAT point date, the delivery date, the end of the invoicing period or the issue date. \u003Ccode>VatPreset::BasicFood-&gt;rate()\u003C\u002Fcode> returns the rate of today in Vienna. The other rates are fixed (\u003Ccode>TaxTables::STANDARD_RATE\u003C\u002Fcode>, \u003Ccode>REDUCED_RATE\u003C\u002Fcode>, \u003Ccode>REDUCED_RATE_13\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Ch3 id=\"exemption-texts\">Exemption texts\u003Ca class=\"q-doc-anchor\" href=\"#exemption-texts\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp>\u003Ccode>Standard\u003C\u002Fcode>, \u003Ccode>Reduced\u003C\u002Fcode>, \u003Ccode>Reduced13\u003C\u002Fcode> and \u003Ccode>BasicFood\u003C\u002Fcode> carry no text, because EN 16931 forbids an exemption reason for taxed supplies (BR-S-10). The other presets print an exemption reason (BT-120) in German or English, from \u003Ccode>resources\u002Flang\u002F{de,en}\u002Ftax.php\u003C\u002Fcode>:\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Key\u003C\u002Fth>\n\u003Cth>German\u003C\u002Fth>\n\u003Cth>English\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.small_business\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Umsatzsteuerfrei aufgrund der Kleinunternehmerregelung (§ 6 Abs. 1 Z 27 UStG).\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt under the small business scheme (section 6 (1) no. 27 UStG).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.reverse_charge_domestic\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Übergang der Steuerschuld auf den Leistungsempfänger (§ 19 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Reverse charge: the recipient owes the VAT (section 19 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.reverse_charge_eu\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Übergang der Steuerschuld auf den Leistungsempfänger (Reverse Charge)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Reverse charge: the recipient owes the VAT\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.intra_community_supply\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Steuerfreie innergemeinschaftliche Lieferung (Art. 6 Abs. 1 i. V. m. Art. 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt intra-community supply (Art. 6 (1) with Art. 7 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.triangular_transaction\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Innergemeinschaftliches Dreiecksgeschäft gemäß Art. 25 UStG; Übergang der Steuerschuld auf den letzten Abnehmer\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Intra-community triangular transaction under Art. 25 UStG; the VAT is owed by the last customer\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.export\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Steuerfreie Ausfuhrlieferung (§ 6 Abs. 1 Z 1 i. V. m. § 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt export supply (section 6 (1) no. 1 with section 7 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.not_taxable\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Nicht im Inland steuerbare Leistung (Leistungsort im Ausland)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Not taxable in Austria (place of supply abroad)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.margin_second_hand\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Differenzbesteuerung – Gebrauchtgegenstände\u002FSonderregelung\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Margin scheme – Second-hand goods\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.margin_art\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Differenzbesteuerung – Kunstgegenstände\u002FSonderregelung\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Margin scheme – Works of art\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.margin_antiques\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Differenzbesteuerung – Sammlungsstücke und Antiquitäten\u002FSonderregelung\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Margin scheme – Collector's items and antiques\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.travel_agency\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Sonderregelung für Reisebüros (§ 23 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Margin scheme – Travel agents (section 23 UStG)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>at.exempt\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Steuerfrei gemäß :paragraph\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt under :paragraph\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch3 id=\"how-presets-behave\">How presets behave\u003Ca class=\"q-doc-anchor\" href=\"#how-presets-behave\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Language.\u003C\u002Fstrong> The text is taken in the invoice locale (\u003Ccode>-&gt;locale()\u003C\u002Fcode> on the builder) when the line is built. Without a locale it is German. The enum cases take German for regional locales such as \u003Ccode>de_AT\u003C\u002Fcode> and English for locales the pack does not ship (e.g. \u003Ccode>fr\u003C\u002Fcode>). \u003Ccode>VatPreset::exempt()\u003C\u002Fcode> (a \u003Ccode>Quittio\\Country\\AT\\Tax\\CustomVatPreset\u003C\u002Fcode>) behaves the same: German without a locale and for \u003Ccode>de_AT\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Preset key.\u003C\u002Fstrong> The key stays on the line (\u003Ccode>$line-&gt;vat-&gt;presetKey\u003C\u002Fcode>). The small business detection (\u003Ccode>AT-USTG-08\u003C\u002Fcode>) and the deadline of \u003Ccode>AT-USTG-12\u003C\u002Fcode> rely on it.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>VAT breakdown.\u003C\u002Fstrong> Category, rate, code and text flow into the VAT breakdown (BG-23). The PDF lists the exemption texts in its legal notes.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No invoice notes.\u003C\u002Fstrong> Unlike some German presets, the Austrian presets add no invoice note (BT-22); the exemption text is in BT-120 only.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Allowances and charges.\u003C\u002Fstrong> Document level allowances and charges take a category and a rate, not a preset: \u003Ccode>-&gt;charge(VatCategory::StandardRate, '20', amount: '10.00', reason: 'Versand')\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lookup by key\u003C\u002Fstrong>, e.g. from a database column: \u003Ccode>VatPreset::from('at.standard')\u003C\u002Fcode>, \u003Ccode>VatPreset::fromKey($key)\u003C\u002Fcode> (null for keys of other packs), \u003Ccode>(new CountryAT)-&gt;taxPresets()-&gt;get('at.standard')\u003C\u002Fcode> or, across all installed packs, \u003Ccode>$quittio-&gt;countries()-&gt;taxPreset('at.standard')\u003C\u002Fcode>. \u003Ccode>at.exempt\u003C\u002Fcode> is not part of the collection. In Laravel, \u003Ccode>quittio.defaults.vat\u003C\u002Fcode> takes a key, e.g. \u003Ccode>'at.reduced'\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fconfiguration#defaults\">Defaults\u003C\u002Fa>).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"small-businesses\">Small businesses\u003Ca class=\"q-doc-anchor\" href=\"#small-businesses\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A small business (Kleinunternehmer) applies the exemption of section 6 (1) no. 27 UStG and must not show VAT on its invoices (section 11 (12) UStG). Three steps make an invoice a small business invoice in Quittio:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Mark the seller as a small business.\u003C\u002Fstrong> Set \u003Ccode>quittio.seller.small_business = true\u003C\u002Fcode> in Laravel (\u003Ca href=\"\u002Fdocs\u002Fconfiguration#small-businesses\">Small businesses\u003C\u002Fa>), or \u003Ccode>-&gt;flag(Meta::FLAG_SMALL_BUSINESS)\u003C\u002Fcode> on the builder.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Use \u003Ccode>VatPreset::SmallBusiness\u003C\u002Fcode> on every line.\u003C\u002Fstrong> Lines without \u003Ccode>vat:\u003C\u002Fcode> get it automatically when the invoice has the flag and the default VAT comes from the country pack (\u003Ccode>CountryDefaultVat\u003C\u002Fcode>; in Laravel always). A line with this preset also marks the invoice as small business invoice, without the flag.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Identify the seller without a UID.\u003C\u002Fstrong> EN 16931 requires the seller's VAT identifier or tax number (BT-32) for category \u003Ccode>E\u003C\u002Fcode> (BR-E-02), and a VAT identifier, seller identifier (BT-29) or legal registration (BT-30) so that the buyer can identify the seller (BR-CO-26).\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Data\\Meta\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Tax\\CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">useDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">countries\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()));\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$invoice \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">number\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0007'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">issueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">deliveryDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-01'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">flag\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Meta\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">FLAG_SMALL_BUSINESS\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Grafikstudio Maria Berger'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">taxNumber\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'12 345\u002F6789'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                  \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F BT-32 (BR-E-02)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">identifier\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'L-4711'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                      \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F BT-29, e.g. your supplier number at the buyer (BR-CO-26)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Hauptplatz 3'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'8010'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Graz'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Steirische Bäckerei OG'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Herrengasse 5'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'8010'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Graz'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Logo-Entwurf'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'650.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)       \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F VatPreset::SmallBusiness through the default VAT\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">paymentTerms\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">fn\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> ($terms) => $terms\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">dueInDays\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">14\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">payment\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SepaCreditTransfer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">iban\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">build\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();       \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"Umsatzsteuerfrei aufgrund der Kleinunternehmerregelung (§ 6 Abs. 1 Z 27 UStG).\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>A small business invoice is a \u003Ca href=\"#simplified-invoices\">simplified invoice\u003C\u002Fa>: it needs neither the buyer's address nor the UIDs. VAT on it is an error (\u003Ccode>AT-USTG-08\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Ch2 id=\"reverse-charge-and-intra-community-supplies\">Reverse charge and intra-community supplies\u003Ca class=\"q-doc-anchor\" href=\"#reverse-charge-and-intra-community-supplies\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>Services to a business in another member state.\u003C\u002Fstrong> Use \u003Ccode>VatPreset::ReverseChargeEu\u003C\u002Fcode>. The text names the transfer of the tax liability (&quot;Übergang der Steuerschuld auf den Leistungsempfänger&quot;), which \u003Ccode>AT-USTG-06\u003C\u002Fcode> requires. Issue the invoice by the 15th of the month after the service (\u003Ccode>AT-USTG-12\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Domestic reverse charge.\u003C\u002Fstrong> Use \u003Ccode>VatPreset::ReverseChargeDomestic\u003C\u002Fcode> (section 19 (1a) to (1e) UStG).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Intra-community supply of goods.\u003C\u002Fstrong> Use \u003Ccode>VatPreset::IntraCommunitySupply\u003C\u002Fcode>. EN 16931 also needs the country of the delivery address (BR-IC-12): \u003Ccode>-&gt;deliverTo('Isar Consulting GmbH', Address::make('Leopoldstraße 20', '80802', 'München', 'DE'))\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>VAT identifiers.\u003C\u002Fstrong> Reverse charge and intra-community supplies are never simplified invoices: the UIDs of seller and buyer are checked (\u003Ccode>AT-USTG-03\u003C\u002Fcode>, \u003Ccode>AT-USTG-05\u003C\u002Fcode>), and the \u003Ca href=\"#mandatory-pdf-output\">mandatory PDF output\u003C\u002Fa> requires the buyer's VAT identifier.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Tax\\VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$builder \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#8B949E\">    \u002F\u002F ... number, dates and payment as in the complete example\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Isar Consulting GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'DE987654321'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Leopoldstraße 20'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'80802'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'München'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'DE'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Beratung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'120.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">10\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">unit\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Hour\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">ReverseChargeEu\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>Without a preset, \u003Ccode>AT-USTG-06\u003C\u002Fcode> accepts a BT-120 text of category \u003Ccode>AE\u003C\u002Fcode> that contains &quot;Steuerschuld&quot;, &quot;reverse charge&quot;, &quot;reverse-charge&quot;, &quot;autoliquidation&quot;, &quot;inversione contabile&quot; or the text of one of the reverse charge presets in any locale (case-insensitive).\u003C\u002Fp>\n\u003Ch2 id=\"simplified-invoices\">Simplified invoices\u003Ca class=\"q-doc-anchor\" href=\"#simplified-invoices\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>\u003Ccode>UstgRules::isSimplifiedInvoice($invoice)\u003C\u002Fcode> decides whether the simplifications of section 11 (6) UStG apply. An invoice is simplified when it\u003C\u002Fp>\n\u003Cul>\n\u003Cli>is in euro and its gross total (BT-112) is at most 400 EUR (150 EUR for invoices issued before 1 March 2014, \u003Ccode>TaxTables::SIMPLIFIED_INVOICE_LIMIT\u003C\u002Fcode>), or\u003C\u002Fli>\n\u003Cli>is a small business invoice (\u003Ca href=\"#small-businesses\">Small businesses\u003C\u002Fa>).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Invoices with reverse charge (category \u003Ccode>AE\u003C\u002Fcode>) or an intra-community supply (\u003Ccode>K\u003C\u002Fcode>) are never simplified. A simplified invoice needs neither the buyer's name and address (\u003Ccode>AT-USTG-02\u003C\u002Fcode>) nor the UID of the seller (\u003Ccode>AT-USTG-03\u003C\u002Fcode>) or the buyer (\u003Ccode>AT-USTG-05\u003C\u002Fcode>), and \u003Ccode>AT-USTG-10\u003C\u002Fcode> does not apply. There is no builder macro: the rules recognise the case from the amounts and presets.\u003C\u002Fp>\n\u003Ch2 id=\"ustg-rules\">UStG rules\u003Ca class=\"q-doc-anchor\" href=\"#ustg-rules\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>\u003Ccode>UstgRules::all()\u003C\u002Fcode> checks the mandatory information of section 11 UStG on every invoice whose leading pack is the Austrian one, in every format. The rules run at validation level L3 (\u003Ca href=\"\u002Fdocs\u002Fvalidation#validation-levels\">Validation levels\u003C\u002Fa>). Switch single rules off or change their severity with \u003Ccode>validation.rules\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fvalidation#switching-rules-off-and-changing-their-severity\">Switching rules off\u003C\u002Fa>).\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Code\u003C\u002Fth>\n\u003Cth>Severity\u003C\u002Fth>\n\u003Cth>Business term\u003C\u002Fth>\n\u003Cth>Check\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-01\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-35, BT-38, BT-37\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Name and address of the seller: street, post code and city (section 11 (1) no. 3 lit. a UStG).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-02\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-50, BT-53, BT-52\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Name and address of the buyer: street and city, and the post code for a buyer in Austria (section 11 (1) no. 3 lit. b UStG). Not on \u003Ca href=\"#simplified-invoices\">simplified invoices\u003C\u002Fa>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-03\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-31\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">UID of the seller, or of its tax representative (section 11 (1) no. 3 lit. i UStG). Not on simplified invoices, and not when all lines are of category \u003Ccode>E\u003C\u002Fcode> or \u003Ccode>O\u003C\u002Fcode> (supplies without input tax deduction).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-04\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error; warning for prepayment invoices (386)\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-72\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Date of the supply: delivery date (BT-72), invoicing period (BG-14) or a period on every line (BG-26) (section 11 (1) no. 3 lit. d UStG).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-05\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-48\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">UID of the buyer on an invoice in euro above 10,000 EUR gross (\u003Ccode>TaxTables::BUYER_VAT_ID_LIMIT\u003C\u002Fcode>) from a seller in Austria to a business (section 11 (1) no. 3 lit. b UStG). Not for consumers (\u003Ccode>-&gt;consumer()\u003C\u002Fcode>) and not on simplified invoices.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-06\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-120\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Every VAT row of category \u003Ccode>AE\u003C\u002Fcode> states that the recipient owes the VAT (section 11 (1a) UStG); see \u003Ca href=\"#reverse-charge-and-intra-community-supplies\">Reverse charge\u003C\u002Fa>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-07\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-120\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Every VAT row of category \u003Ccode>E\u003C\u002Fcode>, \u003Ccode>K\u003C\u002Fcode> or \u003Ccode>G\u003C\u002Fcode> has an exemption note as text; a code (BT-121) alone is not enough (section 11 (1) no. 3 lit. e UStG).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-08\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-117\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">A small business invoice shows no VAT: every VAT row has a VAT amount of 0, and no row of category \u003Ccode>S\u003C\u002Fcode> a rate other than 0 (section 11 (12) UStG).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-09\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">error; warning when the invoice is written as XML\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-22\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">A self-billed invoice (type codes 389, 261 and 527) has a note containing &quot;Gutschrift&quot; or an equivalent (&quot;self-billing&quot;, &quot;self-billed invoice&quot;, &quot;autofacturation&quot;, &quot;autofactura&quot;, &quot;autofatturazione&quot;, &quot;autofacturação&quot;, &quot;zelffacturering&quot;, &quot;samofakturowanie&quot;) (section 11 (8) no. 3 UStG). In an e-invoice the type code labels it, so there it is a warning. See \u003Ca href=\"#self-billing-gutschrift\">Self-billing\u003C\u002Fa>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-10\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">warning\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-6\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">An invoice in another currency than euro states the VAT in euro: VAT accounting currency (BT-6) \u003Ccode>EUR\u003C\u002Fcode> and the VAT total in it (BT-111), set with \u003Ccode>-&gt;taxCurrency('EUR', $rate)\u003C\u002Fcode> (section 11 (1) no. 3 lit. f UStG). Only a warning, because the conversion method may be stated in a note, which the rule cannot read. Not on simplified invoices or without VAT.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-11\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">warning\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-2\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">The invoice is issued more than six months after the supply (section 11 (1) no. 1 UStG). Not for consumers, credit notes (381, 261), corrected invoices (384), prepayment invoices (386) and invoices that refer to an earlier invoice without deducting a prepayment. The supply date is the latest of delivery date, end of the invoicing period and end of the line periods.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-USTG-12\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Severity\">warning\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-2\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">An invoice for services in another member state with reverse charge is issued after the 15th of the month following the service (section 11 (1) no. 2 UStG). It applies to lines with \u003Ccode>VatPreset::ReverseChargeEu\u003C\u002Fcode>, and to lines of category \u003Ccode>AE\u003C\u002Fcode> without preset when the buyer is in another member state; the same exceptions as \u003Ccode>AT-USTG-11\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Late invoices stay valid, so \u003Ccode>AT-USTG-11\u003C\u002Fcode> and \u003Ccode>AT-USTG-12\u003C\u002Fcode> are warnings. Messages and hints exist in German and English (\u003Ca href=\"#translations\">Translations\u003C\u002Fa>). The rules also offer helpers for your own code: \u003Ccode>UstgRules::isSimplifiedInvoice()\u003C\u002Fcode>, \u003Ccode>isSmallBusinessInvoice()\u003C\u002Fcode>, \u003Ccode>needsBuyerVatId()\u003C\u002Fcode>, \u003Ccode>hasServiceDate()\u003C\u002Fcode> and \u003Ccode>supplyDate()\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch2 id=\"profiles\">Profiles\u003Ca class=\"q-doc-anchor\" href=\"#profiles\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>The pack registers two profiles of the Austrian CIUS of EN 16931, as published by the BRZ for the BMF (\u003Ca href=\"https:\u002F\u002Fwww.erechnung.gv.at\u002Fgo\u002Fcius_at_nat\">CIUS-AT-NAT\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fwww.erechnung.gv.at\u002Fgo\u002Fcius_at_gov\">CIUS-AT-GOV\u003C\u002Fa>). Both have the level EN 16931 and the syntaxes CII and UBL. Embedded in a ZUGFeRD PDF, they have the conformance level &quot;EN 16931&quot; with their own specification identifier (\u003Ca href=\"\u002Fdocs\u002Fformats#profiles\">Profiles\u003C\u002Fa>).\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Key\u003C\u002Fth>\n\u003Cth>Class\u003C\u002Fth>\n\u003Cth>Name\u003C\u002Fth>\n\u003Cth>Specification identifier (BT-24)\u003C\u002Fth>\n\u003Cth>Rules\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>cius-at-nat\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Class\">\u003Ccode>Profiles\\CiusAtNat\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Name\">CIUS-AT-NAT 1.0.0\u003C\u002Ftd>\n\u003Ctd data-label=\"Specification identifier (BT-24)\">\u003Ccode>urn:cen.eu:en16931:2017#compliant#urn:erechnung.gv.at:CIUS-AT-NAT:1.0.0\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rules\">\u003Ccode>AT-NAT-01\u003C\u002Fcode> to \u003Ccode>AT-NAT-08\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>cius-at-gov\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Class\">\u003Ccode>Profiles\\CiusAtGov\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Name\">CIUS-AT-GOV 1.1.0\u003C\u002Ftd>\n\u003Ctd data-label=\"Specification identifier (BT-24)\">\u003Ccode>urn:cen.eu:en16931:2017#compliant#urn:erechnung.gv.at:CIUS-AT-NAT:1.0.0#compliant#urn:erechnung.gv.at:CIUS-AT-GOV:1.1.0\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Rules\">the rules of \u003Ccode>cius-at-nat\u003C\u002Fcode> and \u003Ccode>AT-GOV-01\u003C\u002Fcode> to \u003Ccode>AT-GOV-09\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>\u003Ccode>cius-at-gov\u003C\u002Fcode> is chosen automatically for public buyers (\u003Ca href=\"#format-choice\">Format choice\u003C\u002Fa>). \u003Ccode>cius-at-nat\u003C\u002Fcode> is used only when you request it, in any format with CII or UBL:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">profile\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'cius-at-nat'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();               \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F ZUGFeRD with CIUS-AT-NAT\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">format\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ubl'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">profile\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'cius-at-nat'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>The reader recognises both profiles by their specification identifier once the pack is registered (\u003Ca href=\"\u002Fdocs\u002Freading#supported-documents\">Reading incoming invoices\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>The CIUS documents state no severity; every rule is an error at level L3. Where EN 16931 forbids a value that the CIUS makes mandatory (the VAT rate of category \u003Ccode>O\u003C\u002Fcode>, BR-O-05 to BR-O-07), EN 16931 wins.\u003C\u002Fp>\n\u003Cp>CIUS-AT-NAT (\u003Ccode>CiusAtRules::national()\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Code\u003C\u002Fth>\n\u003Cth>Business term\u003C\u002Fth>\n\u003Cth>Check\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-01\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-35, BT-50, BT-64, BT-75\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Address line 1 of every postal address: seller, buyer, tax representative and delivery address.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-02\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-37, BT-52, BT-66, BT-77\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">City of every postal address.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-03\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-38, BT-53, BT-67, BT-78\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Post code of every postal address, also of a buyer abroad.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-04\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-72\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Delivery date (BT-72) or invoicing period (BG-14) at document level; periods on the lines are not enough.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-05\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-96\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">VAT rate of every document level allowance, except category \u003Ccode>O\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-06\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-103\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">VAT rate of every document level charge, except category \u003Ccode>O\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-07\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-124\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">No external document location; embed the attachment instead.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-NAT-08\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-152\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">VAT rate of every invoice line, except category \u003Ccode>O\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>CIUS-AT-GOV adds the rules of e-Rechnung.gv.at (\u003Ccode>CiusAtRules::government()\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Code\u003C\u002Fth>\n\u003Cth>Business term\u003C\u002Fth>\n\u003Cth>Check\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-01\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-10\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Buyer reference: for the federal government the order reference (Auftragsreferenz) of the ordering office (\u003Ccode>-&gt;buyerReference(…)\u003C\u002Fcode>).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-02\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BG-6, BT-43\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Seller contact with an email address (\u003Ccode>-&gt;contact(name, phone, email)\u003C\u002Fcode> on the seller).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-03\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-81\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">A payment means code, if given, is one of 30, 31, 42, 49, 58 or 59 (\u003Ccode>CiusAtRules::GOV_PAYMENT_MEANS\u003C\u002Fcode>).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-04\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-115\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Amount due at most 999,999,999.99.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-05\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BG-24\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">At most 200 attachments of together at most 15 MB.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-06\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-125\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Embedded attachments are PDF, PNG, XML or Excel files: mime code and file name extension \u003Ccode>.pdf\u003C\u002Fcode>, \u003Ccode>.png\u003C\u002Fcode>, \u003Ccode>.xml\u003C\u002Fcode>, \u003Ccode>.xls\u003C\u002Fcode> or \u003Ccode>.xlsx\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-07\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BG-25\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">At most 999 invoice lines.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-08\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-131\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">Line net amounts between -999,999,999,999.99 and 999,999,999,999.99.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>AT-GOV-09\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Business term\">BT-132\u003C\u002Ftd>\n\u003Ctd data-label=\"Check\">With a ten digit order number (BT-13, \u003Ccode>-&gt;purchaseOrderReference(…)\u003C\u002Fcode>) every line references its order line (\u003Ccode>-&gt;orderLineReference(…)\u003C\u002Fcode> on the line).\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2 id=\"format-choice\">Format choice\u003Ca class=\"q-doc-anchor\" href=\"#format-choice\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>\u003Ccode>Formats\\AustrianFormatRule\u003C\u002Fcode> is the format rule of the pack. A buyer whose electronic address (BT-49) has the scheme \u003Ccode>9915\u003C\u002Fcode> (Austrian organisation number, e.g. \u003Ccode>b\u003C\u002Fcode> for the federal government) receives UBL after \u003Ccode>cius-at-gov\u003C\u002Fcode>. This applies to domestic invoices and, as buyer pack, to invoices from other countries.\u003C\u002Fp>\n\u003Cp>Everything else follows the \u003Ca href=\"\u002Fdocs\u002Fformats#automatic-choice\">automatic format choice\u003C\u002Fa> of the core: a domestic invoice to a business becomes ZUGFeRD with the configured profile (default \u003Ccode>en16931\u003C\u002Fcode>), an invoice to a consumer a PDF. Austria has no e-invoicing obligation between businesses, so the pack prescribes nothing else. \u003Ccode>prepare()\u003C\u002Fcode> shows the choice without rendering, and \u003Ccode>-&gt;format()\u003C\u002Fcode> overrides it.\u003C\u002Fp>\n\u003Ch3 id=\"invoices-to-the-federal-government\">Invoices to the federal government\u003Ca class=\"q-doc-anchor\" href=\"#invoices-to-the-federal-government\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Tax\\CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">useDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryDefaultVat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">countries\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()));\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$invoice \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">number\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0046'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">issueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">deliveryDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-09-30'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyerReference\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'4700000001'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                 \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F order reference (Auftragsreferenz) of the ordering office (AT-GOV-01)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">contact\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Anna Huber'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'+43 1 234567'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'rechnung@donau-werkstatt.example'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F AT-GOV-02\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Bundesministerium für Beispiele'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Musterplatz 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1010'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:10ch;text-indent:-10ch\">\u003Cspan style=\"color:#FF7B72\">        ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">electronicAddress\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'b'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'9915'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))          \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F scheme 9915: UBL after CIUS-AT-GOV\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Softwareentwicklung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'100.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">12\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">unit\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Hour\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">paymentTerms\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">fn\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> ($terms) => $terms\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">dueInDays\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">30\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">payment\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SepaCreditTransfer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">iban\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">bic\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'BKAUATWW'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F code 58 (AT-GOV-03)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">build\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">format\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();             \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"ubl\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">profile\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">?->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">key\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();    \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"cius-at-gov\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">xml\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();                \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F the UBL to upload to e-Rechnung.gv.at\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>If you have a ten digit order number, set it as purchase order reference (BT-13) and give every line its order line reference: \u003Ccode>-&gt;line(fn ($line) =&gt; $line-&gt;name('…')-&gt;…-&gt;orderLineReference('10'))\u003C\u002Fcode> (\u003Ccode>AT-GOV-09\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Ch2 id=\"ebinterface\">ebInterface\u003Ca class=\"q-doc-anchor\" href=\"#ebinterface\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>ebInterface 6.1 is the Austrian XML invoice format of AUSTRIAPRO; e-Rechnung.gv.at accepts it besides UBL. The pack writes and reads it.\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Calculation\\En16931Calculator\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\EbInterface\\EbInterfaceWriter\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Tax\\VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$invoice \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> InvoiceBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">number\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0046'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">issueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">deliveryDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-09-30'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">purchaseOrderReference\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'4700000001'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)        \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F OrderID of the invoice recipient\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Tiroler Handel KG'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU87654321'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Maria-Theresien-Straße 10'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'6020'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Innsbruck'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">line\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">fn\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> ($line) => $line\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">name\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Softwareentwicklung'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">quantity\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">12\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">UnitCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Hour\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">netPrice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'100.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vat\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">VatPreset\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Standard\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">orderLineReference\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'10'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">paymentTerms\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">fn\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> ($terms) => $terms\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">dueInDays\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">14\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">payment\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">PaymentMeansCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SepaCreditTransfer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">iban\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">bic\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'BKAUATWW'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">build\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$xml \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> (\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> EbInterfaceWriter\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">write\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">((\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> En16931Calculator\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">calculate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($invoice));\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">file_put_contents\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0046.xml'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, $xml);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$read \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">read\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($xml);   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F the reader of the pack\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$read\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">syntax;                  \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"ebinterface\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$read\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">profile;                 \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F null\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$read\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">data\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">number;            \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"RE-2026-0046\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>\u003Cstrong>Writer\u003C\u002Fstrong> (\u003Ccode>EbInterface\\EbInterfaceWriter\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>write(InvoiceData $invoice): string\u003C\u002Fcode> takes a calculated invoice (with totals); an invoice without totals throws an \u003Ccode>InvalidArgumentException\u003C\u002Fcode>. Calculate it with \u003Ccode>En16931Calculator\u003C\u002Fcode>, or take \u003Ccode>$result-&gt;data()\u003C\u002Fcode> of a render run.\u003C\u002Fli>\n\u003Cli>It follows the official mapping of AUSTRIAPRO between UBL and ebInterface. The purchase order reference (BT-13), else the buyer reference (BT-10), is the order reference of the invoice recipient (\u003Ccode>OrderID\u003C\u002Fcode>, the Auftragsreferenz of the federal government) and of every line with its order line reference (BT-132, \u003Ccode>OrderPositionNumber\u003C\u002Fcode>). The first seller identifier (BT-29) is the supplier number (\u003Ccode>InvoiceRecipientsBillerID\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>A missing VAT identifier of seller or buyer is written as \u003Ccode>ATU00000000\u003C\u002Fcode> (\u003Ccode>EbInterfaceWriter::UNDEFINED_VAT_ID\u003C\u002Fcode>).\u003C\u002Fli>\n\u003Cli>The type code sets the document type (\u003Ccode>EbInterfaceWriter::documentType()\u003C\u002Fcode>): credit notes (381, 261) are a \u003Ccode>CreditMemo\u003C\u002Fcode> with positive amounts, prepayment invoices (386) \u003Ccode>InvoiceForAdvancePayment\u003C\u002Fcode>, partial invoices (326) \u003Ccode>InvoiceForPartialDelivery\u003C\u002Fcode>, self-billed invoices (389) \u003Ccode>SelfBilling\u003C\u002Fcode>, final payment requests (218) \u003Ccode>FinalSettlement\u003C\u002Fcode>, debit notes (383) \u003Ccode>SubsequentDebit\u003C\u002Fcode>, everything else \u003Ccode>Invoice\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>The root element carries \u003Ccode>GeneratingSystem=&quot;Quittio&quot;\u003C\u002Fcode>, the currency, the title of the presentation as \u003Ccode>DocumentTitle\u003C\u002Fcode> and the two-letter language of the invoice locale.\u003C\u002Fli>\n\u003Cli>Fields without a place in ebInterface are not written, e.g. the payee (BG-10), the buyer reference next to a purchase order reference, attachments and the VAT in accounting currency (BT-111).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Reader\u003C\u002Fstrong> (\u003Ccode>EbInterface\\EbInterfaceReader\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>It reads ebInterface 6.0 and 6.1 (\u003Ccode>EbInterfaceReader::NAMESPACES\u003C\u002Fcode>). \u003Ccode>CountryAT::readers()\u003C\u002Fcode> registers it, so \u003Ccode>read()\u003C\u002Fcode>, \u003Ccode>readFile()\u003C\u002Fcode>, \u003Ccode>validateFile()\u003C\u002Fcode> and \u003Ccode>validatePath()\u003C\u002Fcode> accept such files once the pack is registered (\u003Ca href=\"\u002Fdocs\u002Freading#reading-a-file\">Reading incoming invoices\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>The mapping is that of the writer in reverse. The result has the syntax \u003Ccode>ebinterface\u003C\u002Fcode> and no profile; the rules use the configured default profile.\u003C\u002Fli>\n\u003Cli>The language attribute sets the locale of the data, and the declared amounts are compared with a recalculation as for other formats.\u003C\u002Fli>\n\u003Cli>The XSD level (L4) of the core has schemas for CII and UBL only and skips ebInterface files; the reader checks their structure, the other levels their content (\u003Ca href=\"\u002Fdocs\u002Fvalidation#incoming-files\">Incoming files\u003C\u002Fa>).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>ebInterface is not an output format of \u003Ccode>render()\u003C\u002Fcode> yet; the XML formats of the core are CII and UBL (\u003Ca href=\"\u002Fdocs\u002Fformats#cii-and-ubl\">CII and UBL\u003C\u002Fa>). Use the writer directly. The pack's tests check its output against the schema of ebInterface 6.1.\u003C\u002Fp>\n\u003Ch2 id=\"self-billing-gutschrift\">Self-billing (Gutschrift)\u003Ca class=\"q-doc-anchor\" href=\"#self-billing-gutschrift\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A self-billed invoice is issued by the buyer in the name of the seller. Set its type code (\u003Ccode>-&gt;type(InvoiceTypeCode::SelfBilledInvoice)\u003C\u002Fcode>, 389; see \u003Ca href=\"\u002Fdocs\u002Fbuilding-invoices#credit-notes-corrected-invoices-and-self-billing\">Credit notes, corrected invoices and self-billing\u003C\u002Fa>) and label it &quot;Gutschrift&quot; (section 11 (8) no. 3 UStG). The pack has no builder macro for it; add the note yourself:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\InvoiceTypeCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Enums\\NoteSubjectCode\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Texts\\LegalTexts\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$builder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">type\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">InvoiceTypeCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SelfBilledInvoice\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">note\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">LegalTexts\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">text\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">LegalTexts\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">SELF_BILLING\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">), \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">NoteSubjectCode\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">RegulatoryInformation\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"Gutschrift\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>Without the note, \u003Ccode>AT-USTG-09\u003C\u002Fcode> is an error for a PDF without XML and a warning for an e-invoice. The PDF and HTML title of a self-billed invoice is &quot;Gutschrift&quot; (English &quot;Self-billed invoice (Gutschrift)&quot;) from the \u003Ca href=\"#cancellations-and-corrections\">correction policy\u003C\u002Fa>, and the \u003Ca href=\"#mandatory-pdf-output\">mandatory PDF output\u003C\u002Fa> requires it to be printed. ebInterface writes such an invoice as \u003Ccode>SelfBilling\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch2 id=\"cancellations-and-corrections\">Cancellations and corrections\u003Ca class=\"q-doc-anchor\" href=\"#cancellations-and-corrections\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>\u003Ccode>CountryAT::correctionPolicy()\u003C\u002Fcode> sets how invoices of an Austrian seller are cancelled and corrected (see \u003Ca href=\"\u002Fdocs\u002Fbuilding-invoices#cancellations-and-corrections\">Building invoices: cancellations and corrections\u003C\u002Fa> and \u003Ca href=\"\u002Fdocs\u002Fcountry-packs#correctionpolicy\">\u003Ccode>CorrectionPolicy\u003C\u002Fcode>\u003C\u002Fa>):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Cancellation strategy \u003Ccode>credit_note\u003C\u002Fcode>:\u003C\u002Fstrong> a cancellation is a credit note (type code 381) with positive amounts.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Correction strategy \u003Ccode>cancel_and_reissue\u003C\u002Fcode>:\u003C\u002Fstrong> the Managed layer corrects an invoice by cancelling it and issuing a new one.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Change them with \u003Ccode>quittio.corrections.cancellation_strategy\u003C\u002Fcode> and \u003Ccode>quittio-managed.correction.strategy\u003C\u002Fcode>. The policy sets these titles:\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Kind\u003C\u002Fth>\n\u003Cth>German\u003C\u002Fth>\n\u003Cth>English\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>cancellation\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Stornorechnung\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Cancellation invoice\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>cancellation_self_billed\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Storno-Gutschrift\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Cancellation of the self-billed invoice (Storno-Gutschrift)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>correction\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Rechnungsberichtigung\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Corrected invoice\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>self_billed\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Gutschrift\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Self-billed invoice (Gutschrift)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>A price reduction (\u003Ccode>Quittio::priceReduction()\u003C\u002Fcode>) has no Austrian title and takes the label of the core. Locales other than German and English take the English title.\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$cancellation \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> $quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">cancellation\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($result\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">data\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(), \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ST-2026-0001'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">reason\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Doppelt verrechnet'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($cancellation)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">filename\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F \"Stornorechnung_ST-2026-0001.pdf\"\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Ch2 id=\"late-payment\">Late payment\u003Ca class=\"q-doc-anchor\" href=\"#late-payment\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>When a customer pays late, the Austrian Commercial Code (UGB) gives a business creditor default interest from a business debtor and a flat rate for recovery costs; a consumer owes the statutory interest of the Civil Code (ABGB). The pack provides these values and a calculator. Quittio's documents do not apply them by themselves: calculate the interest with \u003Ca href=\"#default-interest\">\u003Ccode>DefaultInterest\u003C\u002Fcode>\u003C\u002Fa> and pass the results to a payment reminder (\u003Ca href=\"\u002Fdocs\u002Fdocuments#payment-reminders\">Documents: payment reminders\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>\u003Ccode>CountryAT::dunningLaw()\u003C\u002Fcode> (also \u003Ccode>CountryAT::austrianDunningLaw()\u003C\u002Fcode> without an instance) returns these values (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#dunninglaw\">\u003Ccode>DunningLaw\u003C\u002Fcode>\u003C\u002Fa>):\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Value\u003C\u002Fth>\n\u003Cth>Austria\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Interest for business debtors\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">base rate plus 9.2 percentage points (section 456 UGB)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Interest for consumers\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">a fixed 4 % (section 1000 (1) ABGB), not tied to the base rate\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Flat rate for business debtors\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">40.00 EUR (section 458 UGB)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Day count\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">365 days\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Consumer default\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">not modelled (\u003Ccode>null\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Reference rate\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">&quot;Basiszinssatz (OeNB, § 456 UGB)&quot;, the base rate of the Oesterreichische Nationalbank\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch3 id=\"default-interest\">Default interest\u003Ca class=\"q-doc-anchor\" href=\"#default-interest\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp>\u003Ccode>Quittio\\Country\\AT\\Dunning\\DefaultInterest\u003C\u002Fcode> calculates the default interest on an open amount:\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Method\u003C\u002Fth>\n\u003Cth>Result\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>__construct(?BaseRateTable $rates = null, ?DunningLaw $law = null)\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">Without a table, the published rates (\u003Ccode>new BaseRateTable\u003C\u002Fcode>). Without a law, \u003Ccode>CountryAT::austrianDunningLaw()\u003C\u002Fcode>.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>calculate(Money $amount, Date $from, Date $until, bool $consumer = false, string $locale = 'de'): list&lt;InterestCharge&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">From \u003Ccode>$from\u003C\u002Fcode> (first day with interest) to \u003Ccode>$until\u003C\u002Fcode> (exclusive). For businesses one charge per base rate period, rate = base rate + 9.2 points; for consumers (\u003Ccode>$consumer\u003C\u002Fcode>) one charge at 4 % for the whole time. Empty for a non-positive amount or when \u003Ccode>$until\u003C\u002Fcode> is not after \u003Ccode>$from\u003C\u002Fcode>. \u003Ccode>InvalidArgumentException\u003C\u002Fcode> for days the \u003Ca href=\"#base-rate-table\">base rate table\u003C\u002Fa> does not cover.\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>flatRate(string $currency = 'EUR'): ?Money\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">The flat rate of 40.00 for business debtors (section 458 UGB), once per claim\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Brick\\Money\\Money\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Builder\\Party\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Documents\\DocumentBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Support\\Date\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Dunning\\DefaultInterest\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$interest \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> DefaultInterest\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$reminder \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> DocumentBuilder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">paymentReminder\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">1\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                     \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F first reminder (\"1. Mahnung\")\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">number\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'M-2026-0003'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">issueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">seller\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Donau Werkstatt GmbH'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU12345678'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Mariahilfer Straße 1'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1060'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Wien'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">buyer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Party\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">make\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Tiroler Handel KG'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">vatId\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'ATU87654321'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">address\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Maria-Theresien-Straße 10'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'6020'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'Innsbruck'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">creditTransfer\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'AT611904300234573201'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'BKAUATWW'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">openItem\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0042'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-06-01'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1440.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">dueDate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-06-15'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#8B949E\">    \u002F\u002F first day with interest: the day after the due date; 2026-10-05 is the first day without interest\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">interestCharge\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">...\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$interest\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">calculate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Money\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">of\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1440.00'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'EUR'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">), \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Date\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">parse\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-06-16'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">), \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">Date\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">parse\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-05'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)))\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">flatRate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'RE-2026-0042'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)                                         \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F 40.00 EUR, once per claim, only from businesses\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">deadline\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2026-10-19'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#FF7B72\">    ->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">build\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">();\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$reminder\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">dunning\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">total\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'EUR'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);                                      \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F EUR 1526.99: 1,440.00 + 46.99 interest + 40.00\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">document\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($reminder)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">render\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">save\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">__DIR__\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">.\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'\u002Freminders\u002F'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cul>\n\u003Cli>\u003Cstrong>Descriptions.\u003C\u002Fstrong> With a German locale (the default, also \u003Ccode>de_AT\u003C\u002Fcode>) a description reads &quot;Verzugszinsen 10,73 % p. a. (Basiszinssatz 1,53 % + 9,20 Prozentpunkte, § 456 UGB) vom 16.06.2026 bis 04.10.2026&quot;, for a consumer &quot;Verzugszinsen 4,00 % p. a. (§ 1000 Abs. 1 ABGB) vom 16.06.2026 bis 04.10.2026&quot;. With \u003Ccode>locale: 'en'\u003C\u002Fcode> they are English: &quot;Default interest 10.73 % p. a. (base rate 1.53 % + 9.20 percentage points, section 456 UGB) from 2026-06-16 to 2026-10-04&quot;. Other locales take German. The texts are \u003Ccode>LegalTexts::DEFAULT_INTEREST\u003C\u002Fcode> and \u003Ccode>DEFAULT_INTEREST_CONSUMER\u003C\u002Fcode> (\u003Ca href=\"#legal-texts\">Legal texts\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Day count.\u003C\u002Fstrong> The charges count 365 days per year (\u003Ccode>InterestCharge::$dayCount\u003C\u002Fcode>); \u003Ccode>interestCharge()\u003C\u002Fcode> takes it over.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Periods.\u003C\u002Fstrong> A charge covers a whole period with the same base rate. A table entry that keeps the rate (e.g. 1 July 2026) starts no new period.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Flat rate.\u003C\u002Fstrong> \u003Ccode>DocumentBuilder::flatRate($claim)\u003C\u002Fcode> adds 40.00 EUR as fee of kind \u003Ccode>DunningFeeKind::FlatRate\u003C\u002Fcode> for one claim. The builder rejects a second flat rate for the same claim in one reminder and a flat rate for a consumer; a flat rate together with reminder fees gets the notice \u003Ccode>QUITTIO-DUNNING-FLAT-RATE-FEES\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fdocuments#payment-reminders\">Documents: payment reminders\u003C\u002Fa>). Which claims already carried it in earlier reminders is up to your application or the Managed layer.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Core calculator.\u003C\u002Fstrong> \u003Ccode>Quittio\\Core\\Dunning\\DefaultInterest::forCountry(new CountryAT)\u003C\u002Fcode> calculates the same rates from \u003Ccode>referenceRates()\u003C\u002Fcode> and \u003Ccode>dunningLaw()\u003C\u002Fcode>, with the descriptions of the core instead of the Austrian texts.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"base-rate-table\">Base rate table\u003Ca class=\"q-doc-anchor\" href=\"#base-rate-table\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp>\u003Ccode>Quittio\\Country\\AT\\Dunning\\BaseRateTable\u003C\u002Fcode> holds the base rate (Basiszinssatz) of the OeNB for contracts concluded from 16 March 2013. The rate on the first day of a half-year applies to the whole half-year. \u003Ccode>CountryAT::referenceRates()\u003C\u002Fcode> returns the table. Quittio ships these rates (\u003Ccode>BaseRateTable::PUBLISHED\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Valid from\u003C\u002Fth>\n\u003Cth>Rate in %\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>2013-01-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">0.38\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2013-07-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">-0.12\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2016-07-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">-0.62\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2023-01-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">1.88\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2023-07-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">3.38\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2024-01-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">3.88\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2025-01-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">2.53\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2025-07-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">1.53\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2026-01-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">1.53\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>2026-07-01\u003C\u002Ftd>\n\u003Ctd data-label=\"Rate in %\">1.53\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Rates after the last entry are unknown until they are published. Interest for days from 1 January 2027 is therefore rejected instead of silently using the old rate. The pack has no configuration or automatic update for new rates: add a published rate to a table and pass it to \u003Ccode>DefaultInterest\u003C\u002Fcode> (the value below is an example, not the published rate):\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Dunning\\BaseRateTable\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\Dunning\\DefaultInterest\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$rates \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> (\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> BaseRateTable\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">withRate\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'2027-01-01'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'1.78'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$interest \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> DefaultInterest\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">($rates);\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Method\u003C\u002Fth>\n\u003Cth>Result\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>__construct(array $rates = self::PUBLISHED)\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">ISO date =&gt; rate in percent, sorted by date\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>withRate(Date|string $from, string $rate): self\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">new table with an additional or replaced rate\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>rateOn(Date $date): BigDecimal\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">rate on a day; \u003Ccode>InvalidArgumentException\u003C\u002Fcode> before the first entry and from \u003Ccode>validUntil()\u003C\u002Fcode> on\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>periods(Date $from, Date $until): list&lt;array{from: Date, until: Date, rate: BigDecimal}&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">periods with a constant rate (start inclusive, end exclusive), split where the rate changes; \u003Ccode>InvalidArgumentException\u003C\u002Fcode> if \u003Ccode>$until\u003C\u002Fcode> is after \u003Ccode>validUntil()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>lastChange(): Date\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">date of the last entry, e.g. to warn when the table is outdated\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>validUntil(): Date\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Result\">first day without a known rate: the next 1 January or 1 July after the last entry (with the published table: 2027-01-01)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2 id=\"payment-qr-code\">Payment QR code\u003Ca class=\"q-doc-anchor\" href=\"#payment-qr-code\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>The pack's default payment QR code is \u003Ccode>girocode\u003C\u002Fcode>, and it brings no generator of its own. With the default \u003Ccode>paymentQr\u003C\u002Fcode> setting \u003Ccode>auto\u003C\u002Fcode>, the PDF therefore prints the EPC GiroCode of the core next to the bank details: for invoices in euro with a SEPA credit transfer (payment means 30 or 58) and a valid IBAN. Conditions, payload and options are described in \u003Ca href=\"\u002Fdocs\u002Ftemplates#payment-qr-codes\">Templates: payment QR codes\u003C\u002Fa>; \u003Ccode>none\u003C\u002Fcode> switches the code off.\u003C\u002Fp>\n\u003Ch2 id=\"mandatory-pdf-output\">Mandatory PDF output\u003Ca class=\"q-doc-anchor\" href=\"#mandatory-pdf-output\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>After rendering, the mandatory field guard checks that the PDF shows certain values (\u003Ca href=\"\u002Fdocs\u002Ftemplates#mandatory-field-guard\">Templates: mandatory field guard\u003C\u002Fa>). \u003Ccode>CountryAT::mandatoryOutput()\u003C\u002Fcode> adds these Austrian values to the base fields. Paths without a value are skipped. The legal basis is the value Quittio reports, in German citation form.\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Condition\u003C\u002Fth>\n\u003Cth>Access key\u003C\u002Fth>\n\u003Cth>Description\u003C\u002Fth>\n\u003Cth>Legal basis\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>not a simplified invoice, and the seller or its tax representative has a VAT identifier\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>seller.vatId|taxRepresentative.vatId\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">VAT identifier (UID) of the seller\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1 Z 3 lit. i UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>every invoice with BT-72 or BG-14\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>servicePeriod|deliveryDate|delivery.date\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">date of the supply or service\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1 Z 3 lit. d UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>the same, without BT-72 and BG-14\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>servicePeriod|lineGroups[*].lines[*].period|lines[*].period\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">date of the supply or service\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1 Z 3 lit. d UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>not simplified, the buyer has a VAT identifier and \u003Ca href=\"#ustg-rules\">\u003Ccode>AT-USTG-05\u003C\u002Fcode>\u003C\u002Fa> requires it\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>buyer.vatId\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">VAT identifier (UID) of the buyer\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1 Z 3 lit. b UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>self-billed type code\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>title\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">label &quot;Gutschrift&quot;\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 8 Z 3 UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>each VAT row of category \u003Ccode>AE\u003C\u002Fcode>, \u003Ccode>K\u003C\u002Fcode>, \u003Ccode>G\u003C\u002Fcode> or \u003Ccode>E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>vatRows[i].label\u003C\u002Fcode> or the legal note with its BT-120 text\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">reverse charge or exemption note\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1 Z 3 lit. e und Abs. 1a UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>category \u003Ccode>AE\u003C\u002Fcode> or \u003Ccode>K\u003C\u002Fcode> used\u003C\u002Ftd>\n\u003Ctd data-label=\"Access key\">\u003Ccode>buyer.vatId\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Description\">VAT identifier (UID) of the buyer\u003C\u002Ftd>\n\u003Ctd data-label=\"Legal basis\">§ 11 Abs. 1a UStG, Art. 11 UStG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>The default templates print all of them.\u003C\u002Fp>\n\u003Ch2 id=\"legal-texts\">Legal texts\u003Ca class=\"q-doc-anchor\" href=\"#legal-texts\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>\u003Ccode>Quittio\\Country\\AT\\Texts\\LegalTexts::catalog()\u003C\u002Fcode> (also \u003Ccode>CountryAT::legalTexts()\u003C\u002Fcode>) holds the Austrian notices in German and English. Its fallback locale is German (\u003Ccode>LegalTexts::FALLBACK_LOCALE\u003C\u002Fcode>).\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Constant (key)\u003C\u002Fth>\n\u003Cth>German\u003C\u002Fth>\n\u003Cth>English\u003C\u002Fth>\n\u003Cth>Used by\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>SELF_BILLING\u003C\u002Fcode> (\u003Ccode>self_billing\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Gutschrift\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Self-billed invoice (Gutschrift)\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">– (your note on self-billed invoices)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>REVERSE_CHARGE\u003C\u002Fcode> (\u003Ccode>reverse_charge\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Übergang der Steuerschuld auf den Leistungsempfänger (Reverse Charge)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Reverse charge: the recipient owes the VAT\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">– (text of \u003Ccode>VatPreset::ReverseChargeEu\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>INTRA_COMMUNITY_SUPPLY\u003C\u002Fcode> (\u003Ccode>intra_community_supply\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Steuerfreie innergemeinschaftliche Lieferung (Art. 6 Abs. 1 i. V. m. Art. 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt intra-community supply (Art. 6 (1) with Art. 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">– (text of \u003Ccode>VatPreset::IntraCommunitySupply\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>EXPORT\u003C\u002Fcode> (\u003Ccode>export\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Steuerfreie Ausfuhrlieferung (§ 6 Abs. 1 Z 1 i. V. m. § 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt export supply (section 6 (1) no. 1 with section 7 UStG)\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">– (text of \u003Ccode>VatPreset::Export\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>SMALL_BUSINESS\u003C\u002Fcode> (\u003Ccode>small_business\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Umsatzsteuerfrei aufgrund der Kleinunternehmerregelung (§ 6 Abs. 1 Z 27 UStG).\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">VAT exempt under the small business scheme (section 6 (1) no. 27 UStG).\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">– (text of \u003Ccode>VatPreset::SmallBusiness\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>DEFAULT_INTEREST\u003C\u002Fcode> (\u003Ccode>default_interest\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Verzugszinsen :rate % p. a. (Basiszinssatz :base_rate % + :points Prozentpunkte, § 456 UGB) vom :from bis :until\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Default interest :rate % p. a. (base rate :base_rate % + :points percentage points, section 456 UGB) from :from to :until\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">\u003Ccode>DefaultInterest\u003C\u002Fcode>, business debtors\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>DEFAULT_INTEREST_CONSUMER\u003C\u002Fcode> (\u003Ccode>default_interest_consumer\u003C\u002Fcode>)\u003C\u002Ftd>\n\u003Ctd data-label=\"German\">Verzugszinsen :rate % p. a. (§ 1000 Abs. 1 ABGB) vom :from bis :until\u003C\u002Ftd>\n\u003Ctd data-label=\"English\">Default interest :rate % p. a. (section 1000 (1) ABGB) from :from to :until\u003C\u002Ftd>\n\u003Ctd data-label=\"Used by\">\u003Ccode>DefaultInterest\u003C\u002Fcode>, consumers\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cul>\n\u003Cli>\u003Ccode>REVERSE_CHARGE\u003C\u002Fcode>, \u003Ccode>INTRA_COMMUNITY_SUPPLY\u003C\u002Fcode>, \u003Ccode>EXPORT\u003C\u002Fcode> and \u003Ccode>SMALL_BUSINESS\u003C\u002Fcode> are the exemption reasons of the named \u003Ca href=\"#tax-presets\">tax presets\u003C\u002Fa>, in every locale the pack ships, so a notice has one wording in BT-120 and in your notes. The other three come from \u003Ccode>resources\u002Flang\u002F{de,en}\u002Flegal.php\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>All texts are read through the translator, so overrides of \u003Ccode>tax.php\u003C\u002Fcode> and \u003Ccode>legal.php\u003C\u002Fcode> change them (\u003Ca href=\"#translations\">Translations\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>\u003Ccode>LegalTexts::text($key, $locale, $replace)\u003C\u002Fcode> returns a text in \u003Ccode>$locale\u003C\u002Fcode>, else in its language (\u003Ccode>de_AT\u003C\u002Fcode> → German, \u003Ccode>en_GB\u003C\u002Fcode> → English), else in German. \u003Ccode>LegalTexts::localeOf($key, $locale)\u003C\u002Fcode> names the catalog locale it uses.\u003C\u002Fli>\n\u003Cli>Validation and rendering add no text.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"meta-flags-and-settings\">Meta flags and settings\u003Ca class=\"q-doc-anchor\" href=\"#meta-flags-and-settings\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>The pack defines no meta flags of its own. It reads the small business flag of the core, \u003Ccode>Meta::FLAG_SMALL_BUSINESS\u003C\u002Fcode> (\u003Ccode>small_business\u003C\u002Fcode>), set by \u003Ccode>quittio.seller.small_business\u003C\u002Fcode>, a Managed issuer or \u003Ccode>-&gt;flag()\u003C\u002Fcode> (\u003Ca href=\"#small-businesses\">Small businesses\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>The pack has no settings: there is no \u003Ccode>quittio.countries.at\u003C\u002Fcode> section and no configuration file to publish (\u003Ca href=\"\u002Fdocs\u002Fconfiguration#settings-of-a-pack-quittiocountriescode\">Settings of a pack\u003C\u002Fa>). It has no builder macros either.\u003C\u002Fp>\n\u003Ch2 id=\"defaults\">Defaults\u003Ca class=\"q-doc-anchor\" href=\"#defaults\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>For pack authors and for reference, this is how \u003Ccode>CountryAT\u003C\u002Fcode> fills the \u003Ca href=\"\u002Fdocs\u002Fcountry-packs#the-countrypack-contract\">\u003Ccode>CountryPack\u003C\u002Fcode> contract\u003C\u002Fa>:\u003C\u002Fp>\n\u003Ctable class=\"q-doc-table q-stack-table\">\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Hook\u003C\u002Fth>\n\u003Cth>Austria\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>defaults()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">currency \u003Ccode>EUR\u003C\u002Fcode>, time zone \u003Ccode>Europe\u002FVienna\u003C\u002Fcode>, locale \u003Ccode>de\u003C\u002Fcode>, paper \u003Ccode>A4\u003C\u002Fcode>, letter layout \u003Ccode>free\u003C\u002Fcode>, profile \u003Ccode>en16931\u003C\u002Fcode>, payment QR \u003Ccode>girocode\u003C\u002Fcode>, default VAT presets \u003Ccode>at.standard\u003C\u002Fcode> and \u003Ccode>at.small_business\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>profiles()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#profiles\">\u003Ccode>CiusAtNat\u003C\u002Fcode>, \u003Ccode>CiusAtGov\u003C\u002Fcode>\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>taxPresets()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">every case of \u003Ca href=\"#tax-presets\">\u003Ccode>VatPreset\u003C\u002Fcode>\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>rules()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">the \u003Ca href=\"#ustg-rules\">UStG rules\u003C\u002Fa> \u003Ccode>AT-USTG-01\u003C\u002Fcode> to \u003Ccode>AT-USTG-12\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>buyerCountryRules()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">none\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>formatRules()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#format-choice\">\u003Ccode>AustrianFormatRule\u003C\u002Fcode>\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>mandatoryOutput()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#mandatory-pdf-output\">mandatory PDF output\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>legalTexts()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#legal-texts\">\u003Ccode>LegalTexts::catalog()\u003C\u002Fcode>\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>numberingRules()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">pattern \u003Ccode>RE-{Y}-{seq:4}\u003C\u002Fcode>, reset \u003Ccode>yearly\u003C\u002Fcode>, resets \u003Ccode>never\u003C\u002Fcode>, \u003Ccode>yearly\u003C\u002Fcode>, \u003Ccode>monthly\u003C\u002Fcode>, gapless, number consumed on rejection\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>retention()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">7 years from the end of the calendar year\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>dunningLaw()\u003C\u002Fcode>, \u003Ccode>referenceRates()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#late-payment\">UGB and ABGB values, OeNB base rate\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>correctionPolicy()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#cancellations-and-corrections\">credit note, cancel and reissue, Austrian titles\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>readers()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ca href=\"#ebinterface\">\u003Ccode>EbInterfaceReader\u003C\u002Fcode>\u003C\u002Fa>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>letterLayouts()\u003C\u002Fcode>, \u003Ccode>paymentQr()\u003C\u002Fcode>, \u003Ccode>addressFormatter()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">defaults of the core: \u003Ccode>free\u003C\u002Fcode>, the EPC GiroCode of the core, the international address format\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>translationPath()\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd data-label=\"Austria\">\u003Ccode>resources\u002Flang\u003C\u002Fcode> of the package\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cul>\n\u003Cli>\u003Cstrong>Locale.\u003C\u002Fstrong> German (\u003Ccode>de\u003C\u002Fcode>), unless the run, the invoice or the configuration sets another (\u003Ca href=\"\u002Fdocs\u002Ftemplates#translations-and-locales\">Translations and locales\u003C\u002Fa>). Dates are printed as \u003Ccode>dd.MM.yyyy\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Paper and letter layout.\u003C\u002Fstrong> A4 (\u003Ca href=\"\u002Fdocs\u002Ftemplates#paper-size\">Paper size\u003C\u002Fa>) and the free layout without a norm (\u003Ca href=\"\u002Fdocs\u002Ftemplates#letter-layouts\">Letter layouts\u003C\u002Fa>). The pack has no Austrian letter layout.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Numbering.\u003C\u002Fstrong> \u003Ccode>RE-{Y}-{seq:4}\u003C\u002Fcode>, e.g. \u003Ccode>RE-2026-0042\u003C\u002Fcode>, reset every year: a consecutive number with one or more series that identifies the invoice once (section 11 (1) no. 3 lit. h UStG). The Managed layer uses it when neither the issuer nor the configuration sets a pattern (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#numberingrules\">\u003Ccode>NumberingRules\u003C\u002Fcode>\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Retention.\u003C\u002Fstrong> \u003Ccode>new RetentionRule(7, fromEndOfCalendarYear: true)\u003C\u002Fcode>: invoices are kept for seven years from the end of the calendar year (section 11 (2) UStG, section 132 BAO). An invoice issued on 5 October 2026 is kept until 31 December 2033. Longer periods for property related supplies (section 18 (10) UStG) are not modelled (\u003Ca href=\"\u002Fdocs\u002Fcountry-packs#retentionrule\">\u003Ccode>RetentionRule\u003C\u002Fcode>\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Correction policy.\u003C\u002Fstrong> See \u003Ca href=\"#cancellations-and-corrections\">Cancellations and corrections\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"translations\">Translations\u003Ca class=\"q-doc-anchor\" href=\"#translations\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>The pack ships German and English catalogs in \u003Ccode>resources\u002Flang\u002F{de,en}\u002F\u003C\u002Fcode> (\u003Ccode>CountryAT::locales()\u003C\u002Fcode> returns \u003Ccode>['de', 'en']\u003C\u002Fcode>):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>rules.php\u003C\u002Fcode>: message and hint of every rule (\u003Ccode>AT-USTG-*\u003C\u002Fcode>, \u003Ccode>AT-NAT-*\u003C\u002Fcode>, \u003Ccode>AT-GOV-*\u003C\u002Fcode>);\u003C\u002Fli>\n\u003Cli>\u003Ccode>tax.php\u003C\u002Fcode>: the exemption reason texts of the presets, including \u003Ccode>at.exempt\u003C\u002Fcode> for \u003Ccode>VatPreset::exempt()\u003C\u002Fcode> (placeholder \u003Ccode>:paragraph\u003C\u002Fcode>);\u003C\u002Fli>\n\u003Cli>\u003Ccode>legal.php\u003C\u002Fcode>: the label &quot;Gutschrift&quot; and the default interest descriptions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>They are registered as the namespace \u003Ccode>quittio-at\u003C\u002Fcode> (e.g. \u003Ccode>quittio-at::rules.AT-USTG-03.message\u003C\u002Fcode>). \u003Ccode>CountryAT::registerTranslations()\u003C\u002Fcode> registers them lazily, so presets work without a \u003Ccode>Quittio\u003C\u002Fcode> instance. Rule messages and preset texts in other locales fall back to English, legal texts to German. Validation messages are written in the language set by \u003Ccode>validation.locale\u003C\u002Fcode> (\u003Ca href=\"\u002Fdocs\u002Fvalidation#messages-and-translations\">Messages and translations\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Laravel.\u003C\u002Fstrong> Laravel's translator is used, so the usual override files apply: \u003Ccode>lang\u002Fvendor\u002Fquittio-at\u002F{locale}\u002Frules.php\u003C\u002Fcode>, \u003Ccode>tax.php\u003C\u002Fcode> and \u003Ccode>legal.php\u003C\u002Fcode>, also for additional locales (\u003Ca href=\"\u002Fdocs\u002Flaravel#translations\">Laravel: translations\u003C\u002Fa>). A file only needs the keys you change:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#8B949E\">\u002F\u002F lang\u002Fvendor\u002Fquittio-at\u002Fde\u002Ftax.php\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">return\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> [\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:6ch;text-indent:-6ch\">\u003Cspan style=\"color:#A5D6FF\">    'at.reverse_charge_eu'\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\"> =>\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> 'Reverse Charge – Übergang der Steuerschuld auf den Leistungsempfänger'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">];\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>\u003Cstrong>Without Laravel.\u003C\u002Fstrong> Register a directory with \u003Ccode>{locale}\u002F{group}.php\u003C\u002Fcode> files under the namespace of the pack after creating the \u003Ccode>Quittio\u003C\u002Fcode> instance; later paths override earlier ones:\u003C\u002Fp>\n\u003Cdiv class=\"q-doc-code\">\u003Cdiv class=\"q-doc-code-bar\">\u003Cspan>php\u003C\u002Fspan>\u003Cbutton type=\"button\" class=\"q-doc-copy\" data-copy aria-label=\"Copy code\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fsvg>\u003Cspan>Copy\u003C\u002Fspan>\u003C\u002Fbutton>\u003C\u002Fdiv>\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\I18n\\Translations\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Core\\Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#FF7B72\">use\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\\Country\\AT\\CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#E6EDF3\">$quittio \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> Quittio\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">create\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">([], [\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">new\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">]);\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\" style=\"padding-left:2ch;text-indent:-2ch\">\u003Cspan style=\"color:#79C0FF\">Translations\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">translator\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">()\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">->\u003C\u002Fspan>\u003Cspan style=\"color:#D2A8FF\">addPath\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">__DIR__\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">.\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">'\u002Flang'\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">CountryAT\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">::\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">TRANSLATION_NAMESPACE\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">);   \u003C\u002Fspan>\u003Cspan style=\"color:#8B949E\">\u002F\u002F e.g. lang\u002Fde\u002Ftax.php\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp>A changed reverse charge text still satisfies \u003Ccode>AT-USTG-06\u003C\u002Fcode>, because the rule accepts the current texts of the reverse charge presets. Texts defined in PHP cannot be translated through files: the correction policy titles (German and English, fallback English) and the number and date format of the default interest descriptions (German for German locales, otherwise ISO dates).\u003C\u002Fp>\n\u003Ch2 id=\"known-limitations\">Known limitations\u003Ca class=\"q-doc-anchor\" href=\"#known-limitations\" aria-label=\"Link to this section\">#\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>The legal wording, references and defaults follow the law and official sources of October 2026 and have not been reviewed by an Austrian tax adviser. Later changes of the law need a new release.\u003C\u002Fli>\n\u003Cli>ebInterface is not a format of \u003Ccode>render()\u003C\u002Fcode>; use \u003Ccode>EbInterfaceWriter\u003C\u002Fcode>. \u003Ccode>validateFile()\u003C\u002Fcode> does not check ebInterface files against their schema (\u003Ca href=\"#ebinterface\">ebInterface\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>There is no Austrian letter layout (ÖNORM A 1080 was withdrawn without a successor), no Laravel service provider and no settings.\u003C\u002Fli>\n\u003Cli>The shipped base rate table ends with 1 July 2026. Later rates must be added with \u003Ccode>withRate()\u003C\u002Fcode>; there is no configuration key and no automatic update (\u003Ca href=\"#base-rate-table\">Base rate table\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>There are no builder macros for Austrian special cases: the &quot;Gutschrift&quot; note, prepayment invoices and the conversion of foreign currency amounts are set with the general builder methods.\u003C\u002Fli>\n\u003Cli>\u003Ccode>AT-USTG-10\u003C\u002Fcode> cannot read a conversion method stated in a note and only warns.\u003C\u002Fli>\n\u003Cli>Longer retention periods for property related supplies (section 18 (10) UStG) are not modelled.\u003C\u002Fli>\n\u003Cli>The documents layer checks the flat rate of section 458 UGB within one reminder only (once per claim, not for consumers); across reminders the application or the Managed layer must track it. When a consumer is in default is not modelled.\u003C\u002Fli>\n\u003Cli>The pack defines no buyer country rules and no exporters.\u003C\u002Fli>\n\u003C\u002Ful>\n",[111,115,118,121,124,127,131,134,137,140,143,146,149,152,155,158,161,164,167,170,173,176,179,182,185,188,191],{"id":112,"text":113,"level":114},"installation","Installation",2,{"id":116,"text":117,"level":114},"when-it-applies","When it applies",{"id":119,"text":120,"level":114},"common-tasks","Common tasks",{"id":122,"text":123,"level":114},"complete-example","Complete example",{"id":125,"text":126,"level":114},"tax-presets","Tax presets",{"id":128,"text":129,"level":130},"exemption-texts","Exemption texts",3,{"id":132,"text":133,"level":130},"how-presets-behave","How presets behave",{"id":135,"text":136,"level":114},"small-businesses","Small businesses",{"id":138,"text":139,"level":114},"reverse-charge-and-intra-community-supplies","Reverse charge and intra-community supplies",{"id":141,"text":142,"level":114},"simplified-invoices","Simplified invoices",{"id":144,"text":145,"level":114},"ustg-rules","UStG rules",{"id":147,"text":148,"level":114},"profiles","Profiles",{"id":150,"text":151,"level":114},"format-choice","Format choice",{"id":153,"text":154,"level":130},"invoices-to-the-federal-government","Invoices to the federal government",{"id":156,"text":157,"level":114},"ebinterface","ebInterface",{"id":159,"text":160,"level":114},"self-billing-gutschrift","Self-billing (Gutschrift)",{"id":162,"text":163,"level":114},"cancellations-and-corrections","Cancellations and corrections",{"id":165,"text":166,"level":114},"late-payment","Late payment",{"id":168,"text":169,"level":130},"default-interest","Default interest",{"id":171,"text":172,"level":130},"base-rate-table","Base rate table",{"id":174,"text":175,"level":114},"payment-qr-code","Payment QR code",{"id":177,"text":178,"level":114},"mandatory-pdf-output","Mandatory PDF output",{"id":180,"text":181,"level":114},"legal-texts","Legal texts",{"id":183,"text":184,"level":114},"meta-flags-and-settings","Meta flags and settings",{"id":186,"text":187,"level":114},"defaults","Defaults",{"id":189,"text":190,"level":114},"translations","Translations",{"id":192,"text":193,"level":114},"known-limitations","Known limitations","https:\u002F\u002Fgithub.com\u002FQuittio\u002Fquittio\u002Fedit\u002Fmaster\u002Fdocs\u002Fcountry-at.md","\u002Fdocs\u002Fcountry-at.md",{"slug":73,"title":74},{"slug":79,"title":80}]