Zum Inhalt springen

API reference / Quittio \ Country \ CH \ Tax

VatPreset

string-backed enum in quittio/country-ch · implements DatedTaxPreset

Quittio\Country\CH\Tax\VatPreset · Source

Tax presets for Switzerland (MWSTG).

Standard, Reduced and Accommodation take the rate that holds on the supply date of the line (TaxTables), e.g. 7.7 % for supplies of 2023; rate() returns the rate of today.

The texts are not reviewed by a tax adviser yet (see the README of the pack).

Cases#

CaseValueDescription
Standard'ch.standard'Standard rate (Art. 25 (1) MWSTG), today 8.1 %.
Reduced'ch.reduced'Reduced rate (Art. 25 (2) MWSTG), today 2.6 %.
Accommodation'ch.accommodation'Special rate for accommodation (Art. 25 (4) MWSTG), today 3.8 %.
Excluded'ch.excluded'Supply excluded from the tax (Art. 21 MWSTG), without input tax deduction.
Export'ch.export'Supply exempt from the tax with input tax deduction, e.g. an export (Art. 23 MWSTG).
NotTaxableInSwitzerland'ch.not_taxable'Supply whose place is abroad (Art. 7 and 8 MWSTG), not taxable in Switzerland.
NotRegistered'ch.not_registered'Seller not registered for VAT, e.g. below the turnover of CHF 100,000 (Art. 10 (2) MWSTG).

Methods#

MethodDescription
->category()
::excluded()Supply excluded from the tax with a specific legal reference, e.g. VatPreset::excluded('Art. 21 Abs. 2 Ziff. 3 MWSTG'). The text defaults to German.
->exemptionReason()
->exemptionReasonCode()
::fromKey()The case of a key, e.g. of LineVat::$presetKey; null for keys of other presets.
->key()
->on()The preset with the rate of the date; presets without a dated rate return themselves.
->rate()

category()#

public function category(): VatCategory
Returns
VatCategory

excluded()#

public static function excluded(
    string $paragraph,
    VatExemptionReasonCode|RawCode|string|null $code = null,
): TaxPreset

static

Supply excluded from the tax with a specific legal reference, e.g. VatPreset::excluded('Art. 21 Abs. 2 Ziff. 3 MWSTG'). The text defaults to German.

ParameterTypeDescription
$paragraphstring
$codeVatExemptionReasonCode|RawCode|string|null = null
Returns
TaxPreset

exemptionReason()#

public function exemptionReason(?string $locale = null): ?string
ParameterTypeDescription
$locale?string = null
Returns
?string

exemptionReasonCode()#

public function exemptionReasonCode(): ?VatExemptionReasonCode
Returns
?VatExemptionReasonCode

fromKey()#

public static function fromKey(string $key): ?self

static

The case of a key, e.g. of LineVat::$presetKey; null for keys of other presets.

ParameterTypeDescription
$keystring
Returns
?self

key()#

public function key(): string
Returns
string

on()#

public function on(Date $date): TaxPreset

The preset with the rate of the date; presets without a dated rate return themselves.

ParameterTypeDescription
$dateDate
Returns
TaxPreset

rate()#

public function rate(): ?BigDecimal
Returns
?Brick\Math\BigDecimal

Die Open-Core-Pakete stehen unter der MIT-Lizenz. Die rechtlichen Formulierungen der Länderpakete sind mit einer Steuerberatung abzustimmen.