PHP PDF library for EU VAT invoices — Art. 226 checker

For PHP developers invoicing EU business customers. Below is a German B2B draft already checked with the same 15 checks the package runs before it writes a PDF. Change any field and the verdict changes as you type.

What the 15 checks found

    Totals (Art. 226(8)–(10))

    Invoice preview

    Your invoice

    Supplier

    Customer

    Lines

    DescriptionQtyUnit price (excl. VAT)VAT %

    Amounts use a dot for decimals (12.5). "12,5" is refused, exactly as the package refuses it.

    Why a free PDF class is not enough

    FPDF, TCPDF or dompdf draw whatever you pass them. None of them knows that a German invoice must state the date of supply even when it equals the issue date (§14(4) no. 6 UStG), that reverse charge must read Autoliquidation on a French invoice, or that a Polish supplier invoicing in EUR must also show the VAT in PLN (Art. 230). Under Art. 178(a) your customer may deduct input VAT only when holding an invoice drawn up per Articles 220–236, so a missing field holds up their deduction until you reissue.

    composer require readystack/eu-invoice-pdf

    German domestic B2B: from 2027-01-01, suppliers with prior-year turnover above €800,000 must issue structured e-invoices (XRechnung / ZUGFeRD); a PDF then no longer counts for those sales. This checker and the package check presence and shape of the fields; they do not choose your VAT rate.

    Open full tool → getreadystack.com