����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.128.199.33 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/bofirm.gltechlimited.com/app/Http/Services/Payment/ |
Upload File : |
<?php namespace App\Http\Services\Payment; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Log; use Mollie\Api\MollieApiClient; use Omnipay\Omnipay; class MollieService { public $getway ; private $successUrl ; private $cancelUrl ; private $provider ; private $currency ; public function __construct($object) { if(isset($object['id'])){ $this->cancelUrl = isset($object['cancelUrl ']) ? $object['cancelUrl '] : route('paymentCancel', $object['id']); $this->successUrl = isset($object['successUrl']) ? $object['successUrl'] : route('paymentNotify', $object['id']); } $this->provider = $object['payment_method']; $this->currency = $object['currency']; $this->gateway = new MollieApiClient(); $this->gateway->setApiKey(env('MOLLIE_KEY')); } public function makePayment($price){ $data['success'] = false; $data['redirect_url'] = ''; $data['payment_id'] = ''; $data['message'] = ''; try { $param = [ "amount" => [ "currency" => $this->currency, "value" => str($price) ], "description" => Auth::user()->name, "redirectUrl" => $this->successUrl, // "metadata" => [ // "order_id" => "12345", // ], ]; $payment = $this->gateway->payments->create($param); Log::info("payment"); Log::info(json_encode($payment)); if ($payment->status) { $data['redirect_url'] = $payment->getCheckoutUrl(); $data['payment_id'] = $payment->id; $data['success'] = true; } Log::info(json_encode($data)); return $data; } catch (\Exception $ex) { $data['message'] = $ex->getMessage(); return $data; } } public function paymentConfirmation($payment_id) { $data['success'] = false; $data['data'] = null; $payment = $this->gateway->payments->get($payment_id); if ($payment->isPaid()) { $data['success'] = true; $data['data']['amount'] = $payment->amount->value; $data['data']['currency'] = $payment->amount->currency; $data['data']['payment_status'] = 'success' ; $data['data']['payment_method'] = MOLLIE; // Store in your local database that the transaction was paid successfully } elseif ($payment->isCanceled() || $payment->isExpired()) { $data['success'] = false; $data['data']['amount'] = $payment->amount->value; $data['data']['currency'] = $payment->amount->currency; $data['data']['payment_status'] = 'unpaid' ; $data['data']['payment_method'] = MOLLIE; }else{ $data['success'] = false; $data['data']['amount'] = $payment->amount->value; $data['data']['currency'] = $payment->amount->currency; $data['data']['payment_status'] = 'unpaid' ; $data['data']['payment_method'] = MOLLIE; } return $data; } }