-- Generated by LuaBill GUI. Edit the .luabill project in the editor. buyer_reference = "PO-2026-1047" commercial_shipping = true currency = "EUR" customer = {["buyer_id"]="C-001047",["company"]="Beispiel Prozessanlagen GmbH",["company_plain"]="Beispiel Prozessanlagen GmbH",["contact_name"]="Anna Becker",["contact_role"]="Project Engineer",["contact_structured"]=true,["country_code"]="DE",["email"]="anna.becker@example.com",["endpoint_id"]="accounts@example.com",["endpoint_scheme"]="EM",["po"]="PO-2026-1047",["postal_address"]={["city"]="Cologne",["postcode"]="50667",["street"]="Beispielweg 8"},["vat"]="DE111888999"} date_of_delivery = 1792663200 delivery_note = false document_date = 1792749600 document_number = "DEMO-2026-1047" invoice_note = "Illustrative example only - not payable; all details are sample data." invoice_notes = {{["label"]="Analog PID",["text"]="Reference law for \\(e(t)=r(t)-y(t)\\) (hardware derivative filter \\(T_f=35\\,\\mathrm{ms}\\)): \\[u(t)=K_p e(t)+K_i\\int_0^t e(\\tau)\\,d\\tau-K_d\\frac{dy(t)}{dt}.\\]"},{["label"]="Digital PI",["text"]="Backward-Euler update before limiting, with \\(e[k]=r[k]-y[k]\\): \\[u[k]=u[k-1]+K_p(e[k]-e[k-1])+K_iT_s e[k].\\] \\(T_s=10\\,\\mathrm{ms},\\ K_p=1.8,\\ K_i=0.45\\,\\mathrm{s}^{-1}\\). Includes 0-10 V limiting and conditional-integration anti-windup."}} items = {{["description"]="Analog PID: schematics, SPICE, PCB and BOM",["description_plain"]="Analog PID: schematics, SPICE, PCB and BOM",["quantity"]=32,["unit_code"]="HUR",["unitprice"]="95.00"},{["description"]="Digital PI: algorithm, C sources and anti-windup",["description_plain"]="Digital PI: algorithm, C sources and anti-windup",["quantity"]=34,["unit_code"]="HUR",["unitprice"]="110.00"},{["description"]="Bench testing/tuning; report TR-1047 (Rev. A)",["description_plain"]="Bench testing/tuning; report TR-1047 (Rev. A)",["quantity"]=14,["unit_code"]="HUR",["unitprice"]="95.00"},{["description"]="Documentation and engineering handover",["description_plain"]="Documentation and engineering handover",["quantity"]=6,["unit_code"]="HUR",["unitprice"]="90.00"}} language = "EN" letter_text_plain = "Lab flow-control rig: \\textbf{analog PID} and \\textbf{digital PI} development, 5-22 Oct 2026; quantities in \\underline{hours}." my = {["address"]="Hauptstra\\ss e 12",["bank"]="Deutsche Musterbank",["bic"]="COBADEFFXXX",["city"]="10115 Berlin",["company"]="Musterfirma GmbH",["country"]="Deutschland",["country_code"]="DE",["email"]="info@musterfirma.de",["endpoint_id"]="info@musterfirma.de",["endpoint_scheme"]="EM",["iban"]="DE89 3704 0044 0532 0130 00",["legal_form"]="GmbH",["managing_directors"]={"Max Mustermann"},["name"]="Max Mustermann",["phone"]="+49 (0)30 1234 5678",["postal_address"]={["city"]="Berlin",["postcode"]="10115",["street"]="Hauptstraße 12"},["purpose_code"]="supplier",["register"]="Amtsgericht Berlin-Charlottenburg, HRB 123456",["register_court"]="Amtsgericht Berlin-Charlottenburg",["registered_office"]="Berlin",["registration_id"]="HRB123456",["signature"]="Max_Mustermann.png",["signature_height"]="12mm",["stamp"]="Musterfirma_GmbH.png",["stamp_height"]="35mm",["tax_id"]="12/345/67890",["vat"]="DE123456789",["www"]="https://www.musterfirma.de"} output_format = "zugferd" payment_in_days = 14 payment_qr = true payment_reference = "DEMO-2026-1047" payment_terms = "Payment due: \\textbf{November 6, 2026} (14 days from the invoice date)." project_name = "Laboratory flow-control test rig" type_of_document = 2 type_of_invoice = 1 type_of_sale = 1 valid_days = 61 vat_check_interval = 90 vat_legal_links = true vat_percent = 19 watermark = ""