API reference / Quittio \ Country \ AT \ Dunning
BaseRateTable
final readonly class in quittio/country-at · implements ReferenceRates
Quittio\Country\AT\Dunning\BaseRateTable · Source
Basiszinssatz of the Oesterreichische Nationalbank for default interest between businesses (section 456 UGB): the rate on the first day of a half-year applies to the whole half-year. Rates after the last entry are added with withRate().
Constants#
| Constant | Value | Description |
|---|---|---|
PUBLISHED | ['2013-01-01' => '0.38', '2013-07-01' => '-0.12', '2016-07-01' => '-0.62', '2023-01-01' => '1.88', '2023-07-01' => '3.38', '2024-01-01' => '3.88', '2025-01-01' … | Published rates in percent, keyed by the first day of the half-year (OeNB, rates for contracts concluded from 16 March 2013). |
Methods#
| Method | Description |
|---|---|
->__construct() | |
->lastChange() | Date of the most recent known rate, e.g. to warn when the table is outdated. |
->periods() | Periods with a constant rate between two dates (inclusive start, exclusive end). A table entry that keeps the rate (e.g. 2026-07-01) does not start a new period. |
->rateOn() | The rate of the half-year of the date (section 456 UGB). Dates from the next half-year after the last known rate on are unknown and rejected. |
->validUntil() | First day for which the table has no rate: the next 1 January or 1 July after the last change. |
->withRate() | A copy with a rate in percent from $from on, e.g. a newly published rate. |
__construct()#
public function __construct(array<string, string> $rates = self::PUBLISHED)| Parameter | Type | Description |
|---|---|---|
$rates | array<string, string> = self::PUBLISHED | ISO date => rate in percent |
lastChange()#
public function lastChange(): DateDate of the most recent known rate, e.g. to warn when the table is outdated.
- Returns
Date
periods()#
public function periods(
Date $from,
Date $until,
): list<array{from: Date, until: Date, rate: BigDecimal}>Periods with a constant rate between two dates (inclusive start, exclusive end). A table entry that keeps the rate (e.g. 2026-07-01) does not start a new period.
| Parameter | Type | Description |
|---|---|---|
$from | Date | |
$until | Date |
rateOn()#
public function rateOn(Date $date): BigDecimalThe rate of the half-year of the date (section 456 UGB). Dates from the next half-year after the last known rate on are unknown and rejected.
| Parameter | Type | Description |
|---|---|---|
$date | Date |
- Returns
Brick\Math\BigDecimal
validUntil()#
public function validUntil(): DateFirst day for which the table has no rate: the next 1 January or 1 July after the last change.
- Returns
Date
withRate()#
public function withRate(Date|string $from, string $rate): selfA copy with a rate in percent from $from on, e.g. a newly published rate.
| Parameter | Type | Description |
|---|---|---|
$from | Date|string | |
$rate | string |
- Returns
self