This site offers a WebService to automatically validate your PEPPOL documents according to the latest PEPPOL rules. The validation service requires UBL files and cannot handle StandardBusinessDocuments.

The WSDL file can be found at http://peppol.helger.com/wsdvs?wsdl. The endpoint URL for this WebService is http://peppol.helger.com/wsdvs.

Usage

This service is currently provided free of charge. If you want to setup your own service for production usage don't hesitate to contact me at philip[at]helger[dot]com for support.

Input parameters

It offers one method called "validate" that takes the following arguments:

ParameterTypeUsageNotes
XMLstringrequiredThis is the main XML document to be validated. For simplicity it must be provided as an inline string. Must use the same character set as the surrounding SOAP envelope.
VESIDstringrequiredThe Validation Executor Set ID to be used. This is a special ID introduced by PEPPOL practical to clearly identify different validation sets.
Supported VES IDs are:
  • eu.cen.en16931:cii:1.0.0.20170921 - EN 16931 CII (2017-09-21)
  • eu.cen.en16931:edifact:1.0.0.20170921 - EN 16931 EDIFACT/ISO 20625 (2017-09-21)
  • eu.cen.en16931:ubl:1.0.0.20170921 - EN 16931 UBL (2017-09-21)
  • eu.peppol.bis2:t19:3.3.0 - OpenPEPPOL Catalogue (3.3.0) (Deprecated)
  • eu.peppol.bis2:t19:3.4.0 - OpenPEPPOL Catalogue (3.4.0)
  • eu.peppol.bis2:t19:3.5.0.RC1 - OpenPEPPOL Catalogue (3.5.0.RC1)
  • eu.peppol.bis2:t58:3.3.0 - OpenPEPPOL Catalogue Response (3.3.0) (Deprecated)
  • eu.peppol.bis2:t58:3.4.0 - OpenPEPPOL Catalogue Response (3.4.0)
  • eu.peppol.bis2:t58:3.5.0.RC1 - OpenPEPPOL Catalogue Response (3.5.0.RC1)
  • eu.peppol.bis2:t14:3.3.0 - OpenPEPPOL Credit Note (3.3.0) (Deprecated)
  • eu.peppol.bis2:t14:3.4.0 - OpenPEPPOL Credit Note (3.4.0)
  • eu.peppol.bis2:t14:3.5.0.RC1 - OpenPEPPOL Credit Note (3.5.0.RC1)
  • eu.peppol.bis2:t14:5:at - OpenPEPPOL Credit Note (Austria)
  • eu.peppol.bis2:t14:7:at-gov - OpenPEPPOL Credit Note (Austrian Government)
  • eu.peppol.bis2:t16:3.3.0 - OpenPEPPOL Despatch Advice (3.3.0) (Deprecated)
  • eu.peppol.bis2:t16:3.4.0 - OpenPEPPOL Despatch Advice (3.4.0)
  • eu.peppol.bis2:t16:3.5.0.RC1 - OpenPEPPOL Despatch Advice (3.5.0.RC1)
  • eu.peppol.bis2:t10:3.3.0 - OpenPEPPOL Invoice (3.3.0) (Deprecated)
  • eu.peppol.bis2:t10:3.4.0 - OpenPEPPOL Invoice (3.4.0)
  • eu.peppol.bis2:t10:3.5.0.RC1 - OpenPEPPOL Invoice (3.5.0.RC1)
  • eu.peppol.bis2:t10:5:at - OpenPEPPOL Invoice (Austria)
  • eu.peppol.bis2:t10:7:at-gov - OpenPEPPOL Invoice (Austrian Government)
  • eu.peppol.bis2:t71:3.3.0 - OpenPEPPOL MLR (3.3.0) (Deprecated)
  • eu.peppol.bis2:t71:3.4.0 - OpenPEPPOL MLR (3.4.0)
  • eu.peppol.bis2:t71:3.5.0.RC1 - OpenPEPPOL MLR (3.5.0.RC1)
  • eu.peppol.bis2:t01:3.3.0 - OpenPEPPOL Order (3.3.0) (Deprecated)
  • eu.peppol.bis2:t01:3.4.0 - OpenPEPPOL Order (3.4.0)
  • eu.peppol.bis2:t01:3.5.0.RC1 - OpenPEPPOL Order (3.5.0.RC1)
  • eu.peppol.bis2:t110:3.4.0 - OpenPEPPOL Order Agreement (3.4.0)
  • eu.peppol.bis2:t110:3.5.0.RC1 - OpenPEPPOL Order Agreement (3.5.0.RC1)
  • eu.peppol.bis2:t76:3.3.0 - OpenPEPPOL Order Response (3.3.0) (Deprecated)
  • eu.peppol.bis2:t76:3.4.0 - OpenPEPPOL Order Response (3.4.0)
  • eu.peppol.bis2:t76:3.5.0.RC1 - OpenPEPPOL Order Response (3.5.0.RC1)
  • eu.peppol.bis2:t77:3.4.0 - OpenPEPPOL Punch Out (3.4.0)
  • eu.peppol.bis2:t77:3.5.0.RC1 - OpenPEPPOL Punch Out (3.5.0.RC1)
  • org.simplerinvoicing:invoice:1.1 - Simplerinvoicing Invoice 1.1
  • org.simplerinvoicing:invoice:1.1:strict - Simplerinvoicing Invoice 1.1 (strict)
  • org.simplerinvoicing:invoice:1.2 - Simplerinvoicing Invoice 1.2
  • org.simplerinvoicing:order:1.2 - Simplerinvoicing Order 1.2
DisplayLocalestringoptional

This parameter determines the language in which error codes are returned. The following languages are supported:

  • de - German
  • en - English

If this parameter is not provided en is used as the default value.

Example request

<?xml version="1.0"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<validateRequestInput xmlns="http://peppol.helger.com/ws/documentvalidationservice/201701/" VESID="eu.peppol.bis2:t10:3.3.0" displayLocale="en">
<XML>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;Invoice:Invoice xmlns:Invoice="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"&gt;
...
&lt;/Invoice:Invoice&gt;
</XML>
</validateRequestInput>
</S:Body>
</S:Envelope>

Return value

The response of calling this service is a complex structure with the following items:

NameTypeUsageNotes
@successbooleanrequiredThe overall success or error indicator. If true validation was successful (no errors occurred) If false at least one error was found upon document validation.
@interruptedbooleanrequiredtrue if the validation was interrupted and not all validation layers were executed (e.g. when XSD validation fails, Schematron validation is not performed) or false if validation was executed for all layers
@mostSevereErrorLevelenumerationoptionalThe most severe error level of all validation results contained in here. This field has the sole purpose to easily identify whether a document was totally valid (value SUCCESS), whether some warnings but no errors occurred (value WARN) or whether at least one error occurred (value ERROR).
Resultelement0-n timesThis element contains the results of a single validation layer execution.

The Result element contains the following fields:

NameTypeUsageNotes
@successenumerationrequiredThe overall success or error indicator. If true validation was successful (no errors occurred). If false at least one error was found upon document validation. If undefined this validation layer was not executed
@artifactTypestringrequired

The type of validation artefact (e.g. XSD or Schematron) that was used to perform the validation. Currently supported types are:

  • xml - XML well-formedness
  • xsd - XML Schema validation
  • schematron-pure - Schematron validation (XPath only)
  • schematron-sch - Schematron validation (XSLT based)
  • schematron-xslt - Schematron validation (precompiled XSLT based)
@artifactPathstringrequiredThe path to the validation artefact that was used to perform the validation.
ItemElement0-n timesContains the detail errors occurred in this validation layer.

The Item element contains the following fields:

NameTypeUsageNotes
@errorLevelenumerationrequiredError level of this item. If it was totally valid (value SUCCESS), whether some warnings but no errors occurred (value WARN) or whether at least one error occurred (value ERROR).
@errorIDstringoptionalThe ID of the error
@errorFieldNamestringoptionalThe name of the field where the error occurred
@errorLocationstringoptionalThe location where the error occurred
@errorTextstringrequiredThe error text
@teststringoptionalThe test that was executed and lead to this error (e.g. Schematron 'test' attribute)
ExceptionstringoptionalThe internal exception that occurred
You must be logged in to post a comment!