stripe-payments - 如何在结帐前检查 Stripe 促销代码是否对产品有效
问题描述
这是我试图用 Stripe Elements 解决的问题。
对于 Stripe 优惠券,我可以选择仅对适用产品有效。
在结帐期间,我想知道用户何时选择了产品,该代码是否适用,以便我可以为该产品(而不是其他产品)提供正确的折扣。
当我检索 PromotionCode 时,无法查看适用的产品 ID。当我检索产品时,没有关于哪些促销代码适用于它的详细信息。
有什么方法可以事先针对产品验证优惠券吗?
解决方案
对于使用 cURL 的人来说,这是可行的(假设promo_id
存在):
curl https://api.stripe.com/v1/promotion_codes/promo_id \
-u sk_test_redacted: \
-d "expand[]"="coupon.applies_to" \
-G
编辑回复:
{
"id": "promo_id",
"object": "promotion_code",
"active": true,
"code": "MYCODE",
"coupon": {
"id": "couponId",
"object": "coupon",
"amount_off": null,
"applies_to": {
"products": [
"prod_id"
]
},
"created": 1621194680,
"currency": "usd",
"duration": "repeating",
"duration_in_months": 6,
"livemode": false,
"max_redemptions": 1,
"metadata": {
},
"name": null,
"percent_off": 75.0,
"redeem_by": null,
"times_redeemed": 0,
"valid": true
},
"created": 1621194680,
"customer": null,
"expires_at": null,
"livemode": false,
"max_redemptions": null,
"metadata": {
},
"restrictions": {
"first_time_transaction": false,
"minimum_amount": null,
"minimum_amount_currency": null
},
"times_redeemed": 0
}
如果你想直接使用优惠券ID,你可以使用这个(假设couponId
存在):
curl https://api.stripe.com/v1/coupons/couponId \
-u sk_test_redacted: \
-d "expand[]"="applies_to" \
-G
编辑回复:
{
"id": "couponId",
"object": "coupon",
"amount_off": null,
"applies_to": {
"products": [
"prod_id"
]
},
"created": 1621194680,
"currency": "usd",
"duration": "repeating",
"duration_in_months": 6,
"livemode": false,
"max_redemptions": 1,
"metadata": {
},
"name": null,
"percent_off": 75.0,
"redeem_by": null,
"times_redeemed": 0,
"valid": true
}
推荐阅读
- java - 将java行注释自动转成块注释
- oop - 如何将许可代码分成图层?一个用于验证,另一个用于创建许可证
- css - 从引导程序 3.3.7 到引导程序 4.1.3
- ruby-on-rails - 在 Rail 5.1.6 和 Bootstrap 4 中使用单选按钮
- ios - 不活动后自动启动应用程序 ios
- swift - 为什么这个 Xcode 项目使用 Metal 来显示相机输出对电池有这么大的影响,我怎样才能让它变得更好?
- angular6 - 在角度 6 处显示图表
- javascript - 如何通过 AJAX 调用将输入字段值发送到 Node JS 后端以实现预输入功能
- cors - 由于 CORS,Edge 对同一域的请求失败
- meteor - 如何防止在 Meteor 客户端上加载 Sharp 模块?