Manual
eInvoice Viewer — EditorInstall, work, configure
invoiceTools / Manuals / eInvoice Viewer — Editor

eInvoice Viewer — Editor – Manual

Applies to version 1.1.1, for the plugin and for the add-on of the viewer app. As of 26.10.2026.

1 · Overview

Note: Built for the eInvoice Viewer 3.0.0 and runs only with it; update the viewer first.

The editor is an add-on of the eInvoice Viewer. It opens the invoice the viewer shows in the same document view, except that every field is an input. You correct a rejected invoice without opening another program, or enter an invoice by hand.

What the editor does:

  • It shows every field of the invoice with its value as the XML carries it, and takes your change.
  • It also fills empty fields, such as a missing mandatory field.
  • It adds and removes lines.
  • Recalculate totals computes line amounts, the VAT breakdown and the totals from the lines and names every total that changes.
  • It saves the invoice as XML in the syntax it came in, UBL or CII.
  • Save as ZUGFeRD PDF turns it into a ZUGFeRD or Factur-X file: a PDF/A-3 with the invoice as XML inside and the invoice in the print layout "Norm" as its visible part.
  • Show in the viewer hands the edited invoice back to the viewer, which shows and checks it like any other.
  • With no invoice open, Enter an invoice starts an empty invoice.

What the editor does not do:

  • It does not recalculate by itself. Whoever corrects an invoice should see what changes; the totals change only with Recalculate totals.
  • With a ZUGFeRD or Factur-X PDF it changes only the XML. The visible document of the opened PDF stays as it was, and the editor says so. A new ZUGFeRD PDF is drawn in the layout "Norm", not in the layout of the original.
  • It saves an invoice under Peppol BIS Billing as XML only, because Peppol has no ZUGFeRD profile.
  • It keeps no number ranges, no customer list and no archive.

Requirements:

RequirementDetail
WordPress5.8 or later
PHP8.2 or later
PlugineInvoice Viewer for PEPPOL & EN16931 from version 3.0.0
In the viewer appinstead of WordPress and the plugin: the viewer app from version 3.0.0 and the add-on "Editor" for the app
Screenshot missingscreenshots/ed-fenster.en.pngThe editor with the invoice in the document view; every field is an input, and at the top stand the buttons Recalculate totals, Add line, Remove line, Save as XML and Show in the viewer
The editor with the invoice in the document view; every field is an input, and at the top stand the buttons Recalculate totals, Add line, Remove line, Save as XML and Show in the viewer

2 · Installation

In the viewer app

For the viewer app the editor is a ZIP file of its own in the shop. There it works entirely in the browser, without WordPress and without a server.

Settings

The editor has no settings page of its own. On the viewer's settings page, "Available from role" decides who sees the add-ons.

3 · Working with the editor

Correcting an invoice

What the fields show

Next to the name of every field stands its number in the EN 16931, such as BT-1 for the invoice number.

A field with a code list is a select box. It offers the codes the EN 16931 allows for that field, each with its name, such as "S - Standard rate" for the VAT category. This is so for the invoice type, currency, country, VAT category, exemption reason, payment means, the schemes of identifiers and the reasons of allowances and charges. The unit of a line, the type of an object identifier and the subject of a note have such long lists that you type the code; while you type, the field suggests matching codes. If the invoice carries a code that is not in the list, it stays selected and is marked "not in the code list". It stays in the XML until you choose another one.

A date is shown in ISO form, such as 2026-09-05; on a German page as 05.09.2026, on a French page as 05/09/2026. You can type it, also as 20260905, or choose it with the calendar button next to the field. The XML gets it in the form the invoice requires: in CII as 20260905, in UBL as 2026-09-05. Text that cannot be read as a date goes into the XML as you typed it, and the field gets a red border.

Every other field shows the value as the XML carries it. An amount stands with a point, such as 233.00. What you type there goes into the XML exactly as typed.

An emptied field leaves the XML, and with it any group it would leave empty.

Fields that need a partner

Some details are read by every software only together with a second field. The identifiers with a scheme, such as the seller's GLN, need their scheme next to them, and the VAT total in accounting currency needs the accounting currency. Fill in both fields in these cases.

Contact point and account number in CII

In an invoice in CII, that is an XRechnung or a ZUGFeRD invoice, you can also edit the department at the contact of the seller and of the buyer ( BT-41 and BT-56 ). EN 16931 counts both the name and the department as the contact point and allows only one of them. When a party carries both, a note above the invoice says that a validator reports this as a warning and that the KoSIT validator rejects an XRechnung because of it. The editor changes nothing by itself; you decide which of the two fields you empty.

Also in CII, you can enter or change an account number that is not an IBAN in the card "Credit transfer" ( BT-84, field "Account number" ).

Lines

Add line appends an empty line with the next line number. Remove line removes the line chosen in the selection next to it. After that the totals match again only after Recalculate totals.

Saving as a ZUGFeRD PDF

Save as ZUGFeRD PDF turns the invoice, as it stands in the editor now, into a ZUGFeRD or Factur-X file. That is a PDF/A-3 with the invoice inside as XML. The visible part is the invoice in the print layout "Norm", with an embedded font, so that a person can read it and a program can take the XML out. The PDF is made in your browser; nothing of it goes to the site.

  • The profile of the PDF follows the specification the invoice declares: XRechnung, EN 16931, EXTENDED, BASIC, BASIC WL or MINIMUM. For an XRechnung the XML inside is called xrechnung.xml, otherwise factur-x.xml.
  • ZUGFeRD knows only CII. The editor converts an invoice in UBL to CII for the PDF. If a field has no place in CII, the editor names it above the invoice; it is then missing from the PDF.
  • An invoice under Peppol BIS Billing has no ZUGFeRD profile. The editor makes no PDF of it and says so; save it as XML.
  • The font of the PDF holds the letters of the European languages, Greek and Cyrillic. A character outside them stands as "?" in the visible part, and the editor names it. In the XML it stays unchanged.

On the first click the plugin loads the PDF module; on a slow connection that takes a moment. In the viewer app it is already part of the add-on.

Entering an invoice by hand

With no invoice open the button is called Enter an invoice. It starts an empty invoice in CII with one line, in which you fill in every field.

Closing

Close without saving closes the tab; whatever you did not save or hand to the viewer is lost.

Switching it off on one page

In the shortcode of the viewer you switch off on a single page what this add-on shows, for example [spev_einvoice_viewer button_sped="no"]. Without the attribute everything stays on.

SwitchWhat the page leaves out
button_spedthe button "Edit invoice"
tab_editorthe tab; the editor then opens in a window over the page

A switch only takes something off this page. Who may use the add-on at all is set with "Available from role" in the settings of the viewer. The viewer app uses the same names in config.js, for example features: { button_sped: false }. Only the value false without quotes switches off.

4 · Privacy

The editor works only in the browser, with the invoice the viewer has already read. It sends nothing to your site or to any foreign service, and it stores nothing.

5 · Licence

Licence and distribution are not settled yet.

The module for the ZUGFeRD PDF contains the library pdf-lib ( MIT licence ) and the font DejaVu Sans Condensed ( Bitstream Vera licence ). The licence texts are in the file einvoice-zugferd.LICENSES.txt next to the module.

6 · Versions

VersionWhat changed
1.1.1The new button Save as ZUGFeRD PDF turns the invoice into a PDF/A-3 with the XML inside. Fields with a code list offer the allowed codes for selection, every field shows its BT number, and date fields have a calendar button. In CII the department of the contact point and an account number without IBAN can be edited. With tab_editor="no" the editor opens in a window instead of the tab.
1.1.0From version 2.38.0 of the viewer the editor opens in the tab "Edit invoice" next to the invoice. The switch button_sped="no" takes the button off a page.
1.0.0First version.

7 · List of images

This list shows which screenshots this manual expects and which were found in the folder screenshots/ of the package. An image is always named key.language.png, for example ed-fenster.en.png. The images show sample data only.

StatusFileWhat it shows
–ed-fenster.en.pngThe editor with the invoice in the document view; every field is an input, and at the top stand the buttons Recalculate totals, Add line, Remove line, Save as XML and Show in the viewer