Quittio next API

CountryDE extends AbstractCountryPack
in package
implements ProvidesReferenceRates

Country pack for Germany.

Table of Contents

Interfaces

ProvidesReferenceRates
A country pack whose late payment law has a reference interest rate, so that Dunning\DefaultInterest::forCountry() calculates default interest for it.

Constants

CODE  : string = 'DE'
TRANSLATION_NAMESPACE  : string = 'quittio-de'

Methods

__construct()  : mixed
addressFormatter()  : AddressFormatter
Default: international address format.
buyerCountryRules()  : array<int, Rule>
Default: no rules.
code()  : string
ISO 3166-1 alpha-2 code, e.g. "DE".
correctionPolicy()  : CorrectionPolicy
Cancellation by credit note, correction by cancel and reissue. To be confirmed with a tax adviser (legal review in the README).
defaults()  : CountryDefaults
Default: neutral CountryDefaults.
dunningLaw()  : DunningLaw
Section 288 BGB: base rate plus 9 points (business) or 5 points (consumer), flat rate of 40 EUR for business debtors, consumer default after 30 days with notice.
errorClassification()  : array<string, array<int, ValidationMessage>>
Groups findings by the error classes of the BMF letter of 15 October 2025.
exporters()  : array<int, Exporter>
Default: no exporters.
formatAliases()  : array<string, string>
Default: no aliases.
formatRules()  : array<int, FormatRule>
Default: no format rules; the generic automatic choice applies.
formats()  : array<int, OutputFormat>
XRechnung in CII and UBL; "xrechnung" names the CII variant.
germanDunningLaw()  : DunningLaw
The dunning law of section 288 BGB without an instance of the pack (whose constructor registers the builder macros).
legalTexts()  : LegalTextCatalog
Default: an empty catalog.
letterLayouts()  : array<string, LetterLayout>
Default: the free layout only.
locales()  : array<int, string>
Locales the pack ships translations for (the directories of translationPath()), e.g. ["de", "en"].
mandatoryOutput()  : MandatoryFieldList
Values the PDF must show in addition to the base fields. Paths with "[*]" apply to every index; paths without a value in the view model are skipped.
numberingRules()  : NumberingRules
Invoice numbers must be unique and consecutive; gaps must be explainable.
paymentQr()  : PaymentQrGenerator|null
Default: none; the EPC GiroCode is used for the type "girocode".
profiles()  : array<int, Profile>
Default: no profiles.
readers()  : array<int, FormatReader>
Default: no readers.
referenceRates()  : ReferenceRates
The Basiszinssatz (section 247 BGB): the shipped rates plus those registered with BaseRates.
registerTranslations()  : void
Makes the pack's translations available to the active translator. Called lazily, so presets work even without a registered Quittio instance.
retention()  : RetentionRule
Invoices are business records: 8 years from the end of the calendar year of issue (section 14b UStG, section 147 AO as amended in 2025).
rules()  : array<int, Rule>
Mandatory information according to section 14 (4) and 14a UStG (applies to every format).
serializers()  : array<int, XmlSerializer>
Default: no serializers; CII and UBL are built in.
taxPresets()  : TaxPresetCollection
Default: no presets.
translationPath()  : string
Default: no translations.

Constants

TRANSLATION_NAMESPACE

public string TRANSLATION_NAMESPACE = 'quittio-de'

Methods

code()

ISO 3166-1 alpha-2 code, e.g. "DE".

public code() : string
Return values
string

correctionPolicy()

Cancellation by credit note, correction by cancel and reissue. To be confirmed with a tax adviser (legal review in the README).

public correctionPolicy() : CorrectionPolicy
Return values
CorrectionPolicy

dunningLaw()

Section 288 BGB: base rate plus 9 points (business) or 5 points (consumer), flat rate of 40 EUR for business debtors, consumer default after 30 days with notice.

public dunningLaw() : DunningLaw
Return values
DunningLaw

formatAliases()

Default: no aliases.

public formatAliases() : array<string, string>
Return values
array<string, string>

formatRules()

Default: no format rules; the generic automatic choice applies.

public formatRules() : array<int, FormatRule>
Return values
array<int, FormatRule>

germanDunningLaw()

The dunning law of section 288 BGB without an instance of the pack (whose constructor registers the builder macros).

public static germanDunningLaw() : DunningLaw
Return values
DunningLaw

locales()

Locales the pack ships translations for (the directories of translationPath()), e.g. ["de", "en"].

public static locales() : array<int, string>
Return values
array<int, string>

registerTranslations()

Makes the pack's translations available to the active translator. Called lazily, so presets work even without a registered Quittio instance.

public static registerTranslations() : void

retention()

Invoices are business records: 8 years from the end of the calendar year of issue (section 14b UStG, section 147 AO as amended in 2025).

public retention() : RetentionRule
Return values
RetentionRule

rules()

Mandatory information according to section 14 (4) and 14a UStG (applies to every format).

public rules() : array<int, Rule>
Return values
array<int, Rule>

translationPath()

Default: no translations.

public translationPath() : string
Return values
string
On this page

Search results