Кассир-манипулятор Laravel Simple Charge Проблема с идентификатором оформления заказа

  • Версия Cashier Paddle: 1.0@beta
  • Версия Laravel: 7.0
  • Версия PHP: 7.2.5

Я использую кассир-лопатку для одного из моих проектов laravel 7. Я пытаюсь применить к покупателю разовую оплату (простое списание). Я следил за официальной документацией, чтобы интегрировать пакет в свой проект, но у меня возникает эта проблема: " Простая оплата. Идентификатор оформления должен быть действительным идентификатором оформления ". Вот шаги, которые я уже выполнил.

  • Установлен официальный пакет laravel cashier-paddle с использованием composer, требуется laravel/cashier-paddle

  • Опубликовал необходимые миграции и добавил необходимые ключи API в свой файл env

  • Добавлен @paddlejs в майский файл лезвия макета и обновлено промежуточное ПО VerifyCsrfToken, теперь оно кроме routes paddle/*

  • Добавлен трейт Billable в модель User. Настроен маршрут и контроллер webhook.

    // Route example
    Route::post('paddle/webhook','WebhookController@handleWebhook')->name('cashier.webhook')
    
    // WebhookController
    namespace App\Http\Controllers;
    use Illuminate\Http\Request;
    use Laravel\Paddle\Http\Controllers\WebhookController as CashierController;
    
    class WebhookController extends CashierController
    {
        public function handleWebhook(Request $request)
        {
    
            logger('I can reach here!');
        }
    
        public function handlePaymentSucceeded($payload)
        {
    
        }
    }
    
  • Сгенерировал переменную paylink с помощью моего контроллера.

    // paylink variable from controller
    $payLink = auth()->user()->charge(12.99, 'Test Product Title');
    
  • Наконец, мы использовали переменную в компоненте Blade-кнопки.

    // Blade file
    <x-paddle-button :url="$payLink" class="px-8 py-4">
        Buy
    </x-paddle-button>
    

Примечание. Простая зарядка не работает, но зарядка для конкретного продукта работает нормально. Например, этот auth()->user()->chargeProduct(619859) работает нормально.

Это шаги, которые я уже выполнил, чтобы интегрировать paddle simple chare в мое приложение laravel. Надеюсь, эта информация может вам помочь. Сообщите мне, если я делаю что-то не так или пропущу какие-либо шаги. Я буду очень благодарен, если кто-нибудь поможет мне решить проблему. Заранее спасибо.

1 ответ

Всем спасибо, что посетили вопрос. Проведя небольшое исследование, я исправил проблему. Все было хорошо. Просто нужно указать URL-адрес веб-перехватчика в методе начисления. Я думаю, что об этом не упоминалось в документации laravel. Я отправляю ответ, чтобы любой мог получить решение в будущем.

// paylink variable from controller
$payLink = auth()->user()->charge($total, 'Product Title', [
   'webhook_url' => 'webhook URL here',

]);
Другие вопросы по тегам