isEnabled()) { return redirect() ->route('cabinet.index') ->with('error', 'Пополнение временно недоступно.'); } $validated = $request->validate([ 'amount' => [ 'required', 'numeric', 'decimal:0,2', Rule::numeric()->min((float) config('services.robokassa.minimum_amount'))->max((float) config('services.robokassa.maximum_amount')), ], ]); $user = $request->user(); $invoice = $robokassa->createInvoice($user->id, (string) $validated['amount']); return view('payments.redirect', [ 'paymentUrl' => config('services.robokassa.payment_url'), 'parameters' => $robokassa->paymentParameters($invoice, $user->email), ]); } public function success(): RedirectResponse { return redirect()->route('cabinet.index')->with('status', 'Пополнение принято. Слёзы Элуны скоро появятся на счёте.'); } public function fail(): RedirectResponse { return redirect()->route('cabinet.index')->with('error', 'Оплата отменена или не была завершена.'); } }