Skip to main content
Skip table of contents

ZUGFeRD

With this adapter, you can read, create, and validate ZUGFeRD 2/Factur-X, ZUGFeRD 1, and XRechnung PDF files.

Note:

The ZUGFeRD adapter is currently not included in the standard X4 BPMS and may incur additional costs. For more information on the adapter, please contact the SoftProject Support Team.

For more information on the parameters, inputs, and outputs of each operation, see the corresponding subpages.

Properties

Operation

Describes which operation the adapter performs.

For more information on the parameters, status values, inputs, and outputs of each operation, see the corresponding subpages.

Possible values:

  • Detect XML: Detects electronic invoice XMLs in the input PDF file.

  • Extract XML: Detects electronic invoice XMLs in the input PDF file and outputs them if available.

  • Get Version: Returns an XML file containing information about the version, profile, and standard of the XML that has been provided as the input file or embedded in the PDF file.

  • Validate: Validates the input PDF or XML file and outputs an XML file that contains data on the validation.

  • Embed XML: Outputs a byte stream of a new PDF file with the desired XML embedded in it.

Troubleshooting: Error message in the server log

If you are using versions of the X4 BPMS as of version 7.3.0 and 7.4.0, an error may occur when using the adapter, depending on the Java version used:

CODE
ERROR [org.apache.pdfbox.io.IOUtils] (Debug-Thread-1) Unmapping is not supported.: java.lang.IllegalAccessException: symbolic reference class is not accessible: class jdk.internal.ref.Cleaner, from org.apache.pdfbox.io.IOUtils (unnamed module @4788efb3)

How to correct the error

  1. Open the startX4.bat file in the X4 BPMS server directory in any editor.

  2. Add the following lines to the startX4.bat file:

    CODE
    rem ==== for Zugferd Adapter ====
    @set JAVA_OPTS=%JAVA_OPTS% --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED

Note:

We recommend that you insert the JAVA_OPTS with a corresponding comment at the location of the startX4.bat file where other JAVA_OPTS are already defined, e.g.:

CODE
[...]
rem ===== Configure path to the x4config.xml =====
@set JAVA_OPTS=%JAVA_OPTS% -Dx4.config.file=X4config.xml
@set JAVA_OPTS=%JAVA_OPTS% -Dx4.directory="\"%CD%\""
@set JAVA_OPTS=%JAVA_OPTS% -Dx4.version="X.X.X-SNAPSHOT_1597bc7"

rem ===== Surpress some messages about not finding native implementations and falling back to a pure java implementation =====
@set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.media.jai.disableMediaLib=true

rem ==== for Zugferd Adapter ====
@set JAVA_OPTS=%JAVA_OPTS% --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED

rem ===== enable custom URL handlers for wildfly
@set JAVA_OPTS=%JAVA_OPTS% -Djboss.protocol.handler.modules=de.softproject.x4.client
[...]
  1. Save the file.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.