Не мог понять ошибка в чем именно в контроллере использую laravel 10 yandex-money 1.6
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use YandexCheckout\Client;
use YandexCheckout\Request\Payments\CreatePaymentRequest;
class PaymentController extends Controller
{
public function createPayment()
{
// Тестовые идентификатор и секретный ключ клиента
$clientId = 'test_1234567890';
$clientSecret = 'test_abcdefghijklmnopqrstuvwxyz';
$confirmationUrl = 'https://example.com/success'; // URL, на который пользователь вернется после оплаты
// Создание экземпляра клиента Yandex.Checkout
$client = new Client();
$client->setAuth($clientId, $clientSecret);
// Создание тестового платежа
$payment = $client->createPayment(
(new CreatePaymentRequest())
->setAmount(array(
'value' => 100.50,
'currency' => 'RUB',
))
->setConfirmation(array(
'type' => 'redirect',
'return_url' => $confirmationUrl,
))
->setCapture(true)
->setDescription('Оплата заказа')
);
if ($payment->getStatus() === 'waiting_for_capture') {
$confirmationUrl = $payment->getConfirmation()->getConfirmationUrl();
return redirect($confirmationUrl);
} else {
return 'Ошибка при создании тестового платежа: ' . $payment->getStatus() . ' - ' . $payment->getMetadata()->getMessage();
}
}
public function callback(Request $request)
{
try {
$inputData = $request->getContent();
$callbackData = json_decode($inputData, true);
if ($callbackData['event'] === 'payment.succeeded') {
// Здесь обработайте успешное завершение платежа
// Это может включать в себя обновление статуса заказа и другие действия
// Например, запись информации о платеже в базу данных
}
// Отправьте подтверждение об успешной обработке
return response('OK', 200);
} catch (\Exception $e) {
// Логируйте ошибку и отправьте HTTP-ответ с кодом ошибки
\Log::error($e->getMessage());
return response('Error', 500);
}
}
}