php Stripe API模式

pokxtpni  于 2023-10-15  发布在  PHP
关注(0)|答案(1)|浏览(139)

Stripe API中的Mode参数是什么?当我在laravel中测试Stripe API时,它说:
向Stripe发送请求时出错:(状态400)(请求req_XKxpoKv6C0eFDm)使用价格时必须提供mode。Stripe\Exception\InvalidRequestException:使用价格时必须提供mode
下面是我的代码:

$session = Session::create([
                    'payment_method_types' => ['card'],
                   
                    'line_items' =>  [
                        [
                           
                         'price_data' => [
                          
                           'unit_amount' => $secretPlan['amount'] * 100,
                           'currency' => $secretPlan['currency'],
                           'product_data' => [
                             'name' => $secretPlan['name'],
                             'description' => $secretPlan['description']
                           ]
                         ],
                         'quantity' => $secretPlan['quantity'],
                        
                        ],
 
                     ],
                    'success_url' => $successURL,
                    'cancel_url' => route('payment.cancel')
                ]);

谁能给予我一个解决办法?先谢了。

vs3odd8k

vs3odd8k1#

Stripe文档:
mode参数是enum类型,有3个可能的值:
payment:接受一次性支付卡,iDEAL等。
setup:保存付款详细信息,以便以后向客户收费。
subscription:使用Stripe Billing设置固定价格订阅。
因此,在您的情况下,在创建会话时,添加适合您上下文的mode参数,例如:

$session = Session::create([
                    'payment_method_types' => ['card'],
                    'mode' => 'payment',
                    'line_items' =>  [
                        [
                           
                         'price_data' => [
                          
                           'unit_amount' => $secretPlan['amount'] * 100,
                           'currency' => $secretPlan['currency'],
                           'product_data' => [
                             'name' => $secretPlan['name'],
                             'description' => $secretPlan['description']
                           ]
                         ],
                         'quantity' => $secretPlan['quantity'],
                        
                        ],
 
                     ],
                    'success_url' => $successURL,
                    'cancel_url' => route('payment.cancel')
                ]);

相关问题