payment = $payment;
        $this->contact = $contact;
        $this->company = $company;
        $this->settings = $payment->client->getMergedSettings();
    }
    /**
     * Execute the job.
     *
     *
     * @return void
     */
    public function handle()
    {
        if ($this->company->is_disabled) 
            return true;
        
        if ($this->contact->email) {
            MultiDB::setDb($this->company->db);
            $this->payment->load('invoices');
            $this->contact->load('client');
            App::forgetInstance('translator');
            $t = app('translator');
            App::setLocale($this->contact->preferredLocale());
            $t->replace(Ninja::transformTranslations($this->settings));
            $template_data['body'] = ctrans('texts.refunded_payment') . ' $payment.refunded 
$invoices';
            $template_data['subject'] = ctrans('texts.refunded_payment');
            $email_builder = (new PaymentEmailEngine($this->payment, $this->contact, $template_data))->build();
            $invitation = null;
            if($this->payment->invoices && $this->payment->invoices->count() >=1)
                $invitation = $this->payment->invoices->first()->invitations()->first();
            $nmo = new NinjaMailerObject;
            $nmo->mailable = new TemplateEmail($email_builder, $this->contact, $invitation);
            $nmo->to_user = $this->contact;
            $nmo->settings = $this->settings;
            $nmo->company = $this->company;
            $nmo->entity = $this->payment;
            NinjaMailerJob::dispatch($nmo);
            event(new PaymentWasEmailed($this->payment, $this->payment->company, Ninja::eventVars(auth()->user() ? auth()->user()->id : null)));
        }
    }
}