Quittio 0.3 API

KositArtifacts
in package

FinalYes

Downloads the KoSIT validator and the XRechnung validator configuration (level L5) and compiles the Peppol BIS Billing 3.0 Schematron to XSLT with the Saxon bundled in the validator (requires Java).

Table of Contents

Constants

CONFIGURATION_FILE  : string = 'xrechnung-3.0.2-validator-configuration-2026-0...
CONFIGURATION_TAG  : string = 'v2026-08-31'
PEPPOL_TAG  : string = 'v3.0.20'
SCHXSLT_VERSION  : string = '1.10.1'
SHA256  : array<string|int, mixed> = ['https://repo1.maven.org/maven2/org/kosit/vali...
SHA-256 of the pinned downloads. The default download checks them, because the validator JAR is run with java and release tags can be moved; update them together with the versions.
VALIDATOR_VERSION  : string = '1.6.3'

Methods

__construct()  : mixed
compilePeppol()  : array{scenarios: string, repository: string}
Compiles the Peppol Schematron into peppol/PEPPOL-EN16931-UBL.xsl below $target.
configurationUrl()  : string
download()  : array{jar: string, scenarios: string, repository: string}
peppolScenarios()  : string
Scenario file for Peppol BIS Billing 3.0; the repository is the download target.
peppolUrl()  : string
schxsltUrl()  : string
validatorUrl()  : string

Constants

CONFIGURATION_FILE

public string CONFIGURATION_FILE = 'xrechnung-3.0.2-validator-configuration-2026-08-31.zip'

CONFIGURATION_TAG

public string CONFIGURATION_TAG = 'v2026-08-31'

SHA256

SHA-256 of the pinned downloads. The default download checks them, because the validator JAR is run with java and release tags can be moved; update them together with the versions.

public array<string|int, mixed> SHA256 = ['https://repo1.maven.org/maven2/org/kosit/validator/1.6.3/validator-1.6.3-standalone.jar' => '799e64befca97d4080e03608c80b85dd5a5ecc5f4ae4f35d1116ec2855b9a7c9', 'https://github.com/itplr-kosit/validator-configuration-xrechnung/releases/download/v2026-08-31/xrechnung-3.0.2-validator-configuration-2026-08-31.zip' => '2530cd107c414511c5d0462ec10f886910395abfca820db82e83d70bf01221a8', 'https://raw.githubusercontent.com/OpenPEPPOL/peppol-bis-invoice-3/v3.0.20/rules/sch/PEPPOL-EN16931-UBL.sch' => '5ddf3a2f6633147b20b7805df9902d825af1a984f10014fcee186d4170364b1d', 'https://repo1.maven.org/maven2/name/dmaus/schxslt/schxslt/1.10.1/schxslt-1.10.1.jar' => '4f4f21edab7b37f96ad59ae12a344d3510f1092ac46b6d81a4efa0120b73cb58']

Methods

__construct()

public __construct([callable(string): string|null $fetch = null ][, callable(array<int, string>, string, int): array{exitCode: int, stdout: string, stderr: string}|null $run = null ]) : mixed
Parameters
$fetch : callable(string): string|null = null

returns the body of a URL; the default checks it against SHA256

$run : callable(array<int, string>, string, int): array{exitCode: int, stdout: string, stderr: string}|null = null

runs a process

compilePeppol()

Compiles the Peppol Schematron into peppol/PEPPOL-EN16931-UBL.xsl below $target.

public compilePeppol(string $target[, string $java = 'java' ][, bool $force = false ]) : array{scenarios: string, repository: string}

download() must have run before, because Saxon comes with the validator JAR.

Parameters
$target : string
$java : string = 'java'
$force : bool = false
Return values
array{scenarios: string, repository: string}

configurationUrl()

public static configurationUrl([string $tag = self::CONFIGURATION_TAG ][, string $file = self::CONFIGURATION_FILE ]) : string
Parameters
$tag : string = self::CONFIGURATION_TAG
$file : string = self::CONFIGURATION_FILE
Return values
string

download()

public download(string $target[, bool $force = false ]) : array{jar: string, scenarios: string, repository: string}
Parameters
$target : string
$force : bool = false
Return values
array{jar: string, scenarios: string, repository: string}

peppolScenarios()

Scenario file for Peppol BIS Billing 3.0; the repository is the download target.

public static peppolScenarios() : string
Return values
string

peppolUrl()

public static peppolUrl([string $tag = self::PEPPOL_TAG ]) : string
Parameters
$tag : string = self::PEPPOL_TAG
Return values
string

schxsltUrl()

public static schxsltUrl([string $version = self::SCHXSLT_VERSION ]) : string
Parameters
$version : string = self::SCHXSLT_VERSION
Return values
string

validatorUrl()

public static validatorUrl([string $version = self::VALIDATOR_VERSION ]) : string
Parameters
$version : string = self::VALIDATOR_VERSION
Return values
string
On this page

Search results