首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在带api中结帐前检查优惠券对客户是否有效

问如何在带api中结帐前检查优惠券对客户是否有效
EN

Stack Overflow用户
提问于 2022-02-08 14:42:45
回答 2查看 938关注 0票数 1

我有一个用例,在使用Stripe付款之前,我需要找到应用的代码是否对特定的客户有效。假设有一个优惠券代码,作为“50%折扣”创建的条带,只能使用一次客户。将有两种情况:

  1. 如果客户第一次使用它,他们将给予折扣,这是罚款。
  2. 如果客户第二次使用它,我不想向他们展示应用级的折扣价格。在条形码水平上,也不会提供折扣。

我不管理我的应用程序级别的优惠券代码,并且使用下面的代码检索优惠券代码数据:

代码语言:javascript
复制
\Stripe\Stripe::setApiKey($this->config->item('stripe_secret_key'));
$couponData = \Stripe\Coupon::retrieve($coupon);

以上代码与我分享下面的详细信息

代码语言:javascript
复制
[body] => {
  "id": "50%off",
  "object": "coupon",
  "amount_off": 600,
  "created": 1494427220,
  "currency": "usd",
  "duration": "once",
  "duration_in_months": null,
  "livemode": false,
  "max_redemptions": null,
  "metadata": {
  },
  "name": null,
  "percent_off": null,
  "percent_off_precise": null,
  "redeem_by": null,
  "times_redeemed": 4,
  "valid": true
}

但是我不知道客户之前是否已经使用过这个优惠券代码。我试着传递客户id,如下所示:

代码语言:javascript
复制
\Stripe\Stripe::setApiKey($this->config->item('stripe_secret_key'));
$couponData = \Stripe\Coupon::retrieve($coupon, ['customer' => $stripe_customer_id]);

但它也有同样的反应。

有人能帮我一下吗,谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-02-10 15:05:17

正如@koopajah提到的关于客户赎回的详细信息,见Active Redemptions下的Stripe优惠券仪表板无法通过API获得。

来自条形邮寄名单

这不是我们目前通过API支持的东西。如果你想要得到声称购买优惠券的客户的名单和数量,你就需要跟踪你的优惠券赎回情况。你可以通过网络钩子跟踪赎回情况。

这将适用于一次性优惠券,但定期优惠券可通过Stripe客户和订阅对象的折扣属性获得:

贴现对象包含正在使用的优惠券或促销代码的详细信息。

因此,应该可以解析Stripe客户或他们对任何应用优惠券的订阅。

如果使用促销代码,则可以应用Stripe检查以停止再次使用优惠券代码的限制。

票数 1
EN

Stack Overflow用户

发布于 2022-02-09 06:09:08

条纹不会告诉你优惠券以前是否已经被顾客使用过。这是您需要跟踪在您的终端在您自己的数据库,而不是每次客户赎回优惠券。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71035809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档