Zum Inhalt springen

API reference / Quittio \ Core \ Documents

Dunning

final readonly class in quittio/core

Quittio\Core\Documents\Dunning · Source

Data of a payment reminder: open items, fees, interest and the new deadline.

Level 0 is a friendly payment reminder (Zahlungserinnerung), level 1 the first formal reminder (1. Mahnung), level 2 the second and so on.

Fees and default interest are damages, not consideration for a supply: they carry no VAT, and total() adds them without VAT.

Properties#

PropertyTypeDescription
$deadline readonly?Date
$fees readonlylist<DunningFee>
$interest readonlylist<InterestCharge>
$level readonlyint
$openItems readonlylist<OpenItem>

Methods#

MethodDescription
->__construct()
->feeTotal()
->interestTotal()
->openInvoiceNumbers()Invoice numbers of the items that are still open, e.g. for the remittance information.
->openTotal()
->remittanceText()Remittance information for a payment of the reminder: the open invoice numbers, separated by commas, with as many complete numbers as fit into $maxLength (140 characters for SEPA and the EPC QR code).
->total()Amount to pay: open items plus fees plus interest (no VAT on fees and interest). This is the amount for a payment QR code of the reminder.

__construct()#

public function __construct(
    int $level,
    list<OpenItem> $openItems,
    ?Date $deadline = null,
    list<DunningFee> $fees = [],
    list<InterestCharge> $interest = [],
)
ParameterTypeDescription
$levelint
$openItemslist<OpenItem>
$deadline?Date = null
$feeslist<DunningFee> = []
$interestlist<InterestCharge> = []

feeTotal()#

public function feeTotal(string $currency): Money
ParameterTypeDescription
$currencystring
Returns
Brick\Money\Money

interestTotal()#

public function interestTotal(string $currency): Money
ParameterTypeDescription
$currencystring
Returns
Brick\Money\Money

openInvoiceNumbers()#

public function openInvoiceNumbers(): list<string>

Invoice numbers of the items that are still open, e.g. for the remittance information.

Returns
list<string>

openTotal()#

public function openTotal(string $currency): Money
ParameterTypeDescription
$currencystring
Returns
Brick\Money\Money

remittanceText()#

public function remittanceText(int $maxLength = 140): string

Remittance information for a payment of the reminder: the open invoice numbers, separated by commas, with as many complete numbers as fit into $maxLength (140 characters for SEPA and the EPC QR code).

ParameterTypeDescription
$maxLengthint = 140
Returns
string

total()#

public function total(string $currency): Money

Amount to pay: open items plus fees plus interest (no VAT on fees and interest). This is the amount for a payment QR code of the reminder.

ParameterTypeDescription
$currencystring
Returns
Brick\Money\Money

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