【问题标题】:Laravel cashier-paddle Simple Charge The checkout id issueLaravel cashier-paddle Simple Charge 结账 id 问题
【发布时间】:2020-12-02 10:20:22
【问题描述】:
  • 收银台版本:1.0@beta
  • Laravel 版本:7.0
  • PHP 版本:7.2.5

我正在为我的 laravel 7 项目之一使用收银台。我正在尝试对客户收取“一次性”费用(简单费用)。我已经按照官方文档将包集成到我的项目中,但我遇到了这个问题“Simple Charge The checkout id must be a valid checkout id”。这是我已经完成的步骤。

  • 使用 composer 安装官方 laravel cashier-paddle 包 需要 laravel/cashier-paddle

  • 发布了必要的迁移并在我的 环境文件

  • 在 may master 布局刀片文件中添加了 @paddlejs 并更新了 VerifyCsrfToken 中间件,所以它除了路由 paddle/*

  • 向用户模型添加了 Billable 特征 配置了 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 variable from controller
    $payLink = auth()->user()->charge(12.99, 'Test Product Title');
    
  • 终于在paddle-button Blade组件上使用了变量

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

注意:简单的收费不起作用,但特定产品的收费工作正常。例如这个 auth()->user()->chargeProduct(619859) 工作正常。

这些是我已经按照在我的 laravel 应用程序中集成 paddle simple chare 的步骤。希望这些信息对您有所帮助。如果我做错了什么或错过了任何步骤,请告诉我。如果有人能帮助我解决这个问题,我将非常感激。提前致谢。

【问题讨论】:

    标签: laravel payment-gateway laravel-cashier paddle-paddle


    【解决方案1】:

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

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

    【讨论】:

    • 谢谢分享。我遇到了同样的问题,但对我来说,错误 404 被触发,因为我在未批准的域中尝试 Paddle 结帐。您可以在这里vendors.paddle.com/checkout-settings 批准您的域,或者您可以在 localhost / 127.0.0.1 中尝试。希望这会有所帮助!
    猜你喜欢
    • 2021-04-10
    • 2022-01-01
    • 2020-01-16
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 2021-11-30
    • 1970-01-01
    • 2017-05-25
    相关资源
    最近更新 更多