Php 如何为特定产品(计划)申请条带优惠券?发布详细信息:$request->;计划价格id,$优惠券=>;优惠券id$卡[';id';]=>;卡片代币

Php 如何为特定产品(计划)申请条带优惠券?发布详细信息:$request->;计划价格id,$优惠券=>;优惠券id$卡[';id';]=>;卡片代币,php,laravel,stripe-payments,payment,cartalyst,Php,Laravel,Stripe Payments,Payment,Cartalyst,我为abc产品添加了一张优惠券,而创建订阅我可以为所有人应用该优惠券 产品。我希望它只适用于abc产品。我正在使用 文件 $stripe->subscriptions()->create($stripe_customer_id, [ 'plan' => $request->plan, 'coupon' => $coupon, 'default_payment_method' =>

我为abc产品添加了一张优惠券,而创建订阅我可以为所有人应用该优惠券 产品。我希望它只适用于abc产品。我正在使用 文件

 $stripe->subscriptions()->create($stripe_customer_id, [
             'plan'   => $request->plan,
             'coupon' => $coupon,
             'default_payment_method' => $card['id'],
         ]);

您可以使用
applies\u to
属性将优惠券应用于将仅限于特定产品的订阅。例如,在以下代码中,优惠券将仅适用于
prod\u xxx
,因此当使用prod\u xxx的价格以及prod\u yyy的价格创建订阅时,折扣将仅适用于prod\u xxx/price\u xxx的金额

$coupon = $stripe->coupons->create([
  'percent_off' => 25,
  'duration' => 'repeating',
  'duration_in_months' => 3,
  'applies_to' => ["products" => ["prod_xxx"]]
]);

$stripe->subscriptions->create([
  'coupon' => $coupon->id,
  'customer' => 'cus_xxx',
  'items' => [
    ['price' => 'price_xxx'], # <-- coupon will apply
    ['price' => 'price_yyy'],
  ],
]);
优惠券=$stripe->优惠券->创建([
“折扣百分比”=>25,
“持续时间”=>“重复”,
“持续时间(以月为单位)”=>3,
'应用于'=>[“产品”=>[“产品”]]
]);
$stripe->订阅->创建([
“优惠券”=>$优惠券->id,
“客户”=>“客户”,
'项目'=>[
['price'=>'price_xxx'],#'price_yyy'],
],
]);

是的,我也这么做了,请查看回复。当我们在applies_to中添加产品时,我们可以看到产品仅适用于该优惠券,这是正确的。但是,当我们使用subscription create API兑换优惠券时,我会在计划密钥中发送价格id。它将适用于所有价格id或产品。计划API是一个不推荐使用的API,支持价格,价格与计划向后兼容。建议使用价格并将其作为items数组的一部分传递:。您的帐户已经在创建产品(prod_xxx)和价格(price_xxx),因此,如果您使用这些产品和价格,上述功能应该可以正常工作。