Laravel收银机桨简单收费结帐ID问题

问题描述

  • Cashier Paddle版本:1.0@beta
  • Laravel版本:7.0
  • PHP版本:7.2.5

我在laravel 7项目之一中使用了收银台。我正在尝试对客户收取“一次性”费用(简单费用)。我已经按照官方文档将软件包集成到我的项目中,但是却遇到了以下问题:“ 简单收费,结帐ID必须是有效的结帐ID ”。这是我已经完成的步骤。

  • 使用composer安装了官方的laravel Cashier-paddle软件包 需要laravel / cashier-paddle

  • 发布了必要的迁移,并在我的计算机上添加了必要的API密钥 环保文件

  • 在may master布局刀片文件中添加了@paddlejs并更新了 VerifyCsrfToken中间件,因此除了路由桨/ *

  • 将“计费”特征添加到“用户模型”中。 路线和控制器

    // 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简单字符集成到laravel应用程序中的步骤。希望这些信息对您有所帮助。让我知道我做错了什么或错过了任何步骤。如果有人能帮助我解决问题,我将非常感谢。预先感谢。

解决方法

每个人都感谢您访问该问题。经过研究后,我解决了这个问题。一切都很好。只需在charge方法中指定webhook URL。我认为laravel文档中没有提到它。我正在发布答案,以便任何人将来都能找到解决方案。

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

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...