'date', 'due_date' => 'date', 'status' => BillStatus::class, 'subtotal' => MoneyCast::class, 'tax_total' => MoneyCast::class, 'discount_total' => MoneyCast::class, 'total' => MoneyCast::class, 'amount_paid' => MoneyCast::class, 'amount_due' => MoneyCast::class, ]; public function vendor(): BelongsTo { return $this->belongsTo(Vendor::class); } public function lineItems(): MorphMany { return $this->morphMany(DocumentLineItem::class, 'documentable'); } public function payments(): MorphMany { return $this->morphMany(Payment::class, 'payable'); } }