public function postRefund(Request $request) { $transaction_id = $request->get('id'); $error = ''; $transaction_details = \App\Models\ProjectFund::findOrFail($transaction_id); $getProjectReceiverAccount = \App\Models\Project::where('id', $transaction_details->P_ID)->first(); $getReceiverAccount = $getProjectReceiverAccount->user_id ? \App\Models\ReciverAccount::where('user_id', $getProjectReceiverAccount->user_id)->first() : Null; //dd($getReceiverAccount->secret_key); if ($getReceiverAccount->secret_key) { \Stripe\Stripe::setApiKey($getReceiverAccount->secret_key); } try { $paid_amount = $transaction_details->paid_amount * 100; $refund = \Stripe\Refund::create(array('amount' => $paid_amount, 'charge' => $transaction_details->transaction_id)); //dd($refund->toArray()); //updatating local table $cashWithDrawaldRequest = new \App\Models\CashWithdrawalsRequest(); $cashWithDrawaldRequest->user_id = $getProjectReceiverAccount->user_id; $cashWithDrawaldRequest->status = 'request'; $cashWithDrawaldRequest->project_fund_id = $transaction_id; if ($cashWithDrawaldRequest->save()) { $request->session()->flash('alert-success', 'Request for charge refunding is successfully posted . '); //return response(['msg' => 'success' ]); return \Redirect::to('home/project-backed')->with('msg', 'success'); } else { $request->session()->flash('alert-success', 'Request for charge refunding is not processed !'); //return response(['msg' => 'failure' ]); return \Redirect::to('home/project-backed')->with('stripe_errors', $error['message']); } ///update } catch (Exception $e) { // dd("a"); $e_json = $e->getMessage(); $error = $e_json['error']; return response(['msg' => 'failure']); //return \Redirect::to('home/project-backed')->with('stripe_errors',$error['message']) ; } //dd($refund->_lastResponse); }