diff --git a/routes/web.php b/routes/web.php index f327b50b2..2a2fd55d9 100644 --- a/routes/web.php +++ b/routes/web.php @@ -384,21 +384,17 @@ Route::post('btcpay/webhook', function (Illuminate\Http\Request $request) { return response('Not Found', 404); } $payload = json_decode($request->getContent(), true); - if (! empty($payload)) { - // We have received a payment for an invoice and user should be upgraded to a paid plan based on order - if ($payload['type'] === 'InvoiceReceivedPayment') { - preg_match('/(?P\w+(\+\+)?)[ ](?P\d+)/i', $payload['metadata']['itemDesc'], $matches); - $user = User::query()->where('email', '=', $payload['metadata']['buyerEmail'])->first(); - if ($user) { - User::updateUserRole($user->id, $matches['role']); - User::updateUserRoleChangeDate($user->id, null, $matches['addYears']); - Log::info('User upgraded to '.$matches['role'].' for BTCPay webhook: '.$payload['metadata']['buyerEmail']); - } else { - Log::error('User not found for BTCPay webhook: '.$payload['metadata']['buyerEmail']); - } + // We have received a payment for an invoice and user should be upgraded to a paid plan based on order + if ($payload['type'] === 'InvoiceReceivedPayment') { + preg_match('/(?P\w+(\+\+)?)[ ](?P\d+)/i', $payload['metadata']['itemDesc'], $matches); + $user = User::query()->where('email', '=', $payload['metadata']['buyerEmail'])->first(); + if ($user) { + User::updateUserRole($user->id, $matches['role']); + User::updateUserRoleChangeDate($user->id, null, $matches['addYears']); + Log::info('User upgraded to '.$matches['role'].' for BTCPay webhook: '.$payload['metadata']['buyerEmail']); + } else { + Log::error('User not found for BTCPay webhook: '.$payload['metadata']['buyerEmail']); } - - return response('OK', 200); } return response('OK', 200);