'object', ]; public function invoices() { return $this->data->invoices; } public function credits_total() { return isset($this->data->credits) ? $this->data->credits : 0; } public function payment() { return $this->belongsTo(Payment::class)->withTrashed(); } public function fee_invoice() { return $this->belongsTo(Invoice::class, 'fee_invoice_id', 'id'); } public function withData(string $property, $value): self { $this->data = array_merge((array) $this->data, [$property => $value]); $this->save(); return $this; } }