Skip to content
Last updated

WHMCS\Billing\Invoice\Item

Class · extends AbstractModel · implements InvoiceItemInterface, ImmutableModelInterface

Invoice line items

Each invoice is made up of individual line items.

Each line item is associated with a specific invoiceId.

Traits

  • ImmutableModelTrait

Properties

TypeNameDescription
``$timestamps

Methods

boot

public static function boot()

isImmutable

public function isImmutable(): bool

validateMutability

public function validateMutability(?string $attribute): void

throwImmutabilityException

public function throwImmutabilityException(string $message = '', string $column = ''): never

Parameters

TypeNameDescription
string$messageException message, leave empty for default
string$columnIf specified, offending column name will be added to the exception message.

Returns never

invoice

public function invoice()

Each invoice item belongs to an invoice.

Returns \Illuminate\Database\Eloquent\Relations\BelongsTo

addon

public function addon()

Returns \Illuminate\Database\Eloquent\Relations\BelongsTo

domain

public function domain()

Returns \Illuminate\Database\Eloquent\Relations\BelongsTo

service

public function service()

Returns \Illuminate\Database\Eloquent\Relations\BelongsTo

scopeOnlyServices

public function scopeOnlyServices($query)

scopeOnlyAddons

public function scopeOnlyAddons($query)

scopeOnlyDomains

public function scopeOnlyDomains($query)

scopeClientId

public function scopeClientId(Builder $query, int $userId)

scopeNotInvoiced

public function scopeNotInvoiced(Builder $query)

getRelatedEntity

public function getRelatedEntity()

Returns Service\|Domain\|Addon\|null