Я пытаюсь сделать какую-то систему «Премиум» в моем веб-приложении, но у меня проблемы с обработкой платежа.
Я использую Молли Апи и я нашел ЭТОТ на GitHub, который интегрирует его в Laravel.
public function postMedium()
{
$user_id = Auth::user()->id;
$payment = Mollie::getPayments()->create([
"amount" => 9.99,
"description" => "Foodtruck Bestellen Premium - 1 Month",
"webhookUrl" => "URL",
"redirectUrl" => "URL",
"metadata" => array(
'user_id' => $user_id
)
]);
return redirect($payment->links->paymentUrl);
}public function mediumPaymentCheck(Request $request)
{
$payment = Mollie::getPayments()->get(Input::get('id'));
if ($payment->isPaid()) {
$user_id = $payment->user_id;
$user = User::find($user_id);
$user->premium = true;
$user->premium_type = "medium";
$user->premium_expiry_date = Carbon::now()->addDays(30);
$user->save();
}
}
После оплаты вы будете перенаправлены на redirectUrl, и это работает.
Тем не мение…
В моей БД ничего не меняется, поэтому кажется, что мой URL-адрес webhook («mediumPaymentCheck») игнорируется или по какой-то причине не работает.
Я надеюсь, что кто-то может помочь мне!
Редактировать: мой URL-адрес webhook выглядит следующим образом:
Route::group(['middleware' => ['web']], function () {
Route::post('/premium/payment/medium/check', 'PremiumController@mediumPaymentCheck');
Задача ещё не решена.
Других решений пока нет …