0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

Organization

Stripe Billing(Subscription)ユーザー向けのニッチなメンテナンス対応の情報

Stripeからとあるカードブランドにおいて、システムメンテナンスのため一部決済が失敗する可能性がある連絡がありました。

メンテナンス日時予定:
- 2021年2月18日(木) 日本時間 02:00 ~ 02:15
- 2021年2月18日(木) 日本時間 02:20 ~ 02:35

とのことだったので、この時間帯に定期課金の決済が発生する可能性があるか調べてみましょう。

ちなみに Smart Retries などのリトライスケジュールを組んでいるようであれば、翌日などに自動的にリトライをしてくれるため、そんなに気にすることはありません。

該当のユーザーに対して事前に「システムメンテナンスのため決済に失敗する可能性がありますが、自動的に再決済されるため特に操作などは不要です」とお伝えするだけで済むかと思います。

該当時間帯にcurrent_period_endがあるタイミングを調べるスクリプト

とりあえずざっくりと該当するSubscriptionのIDと契約更新のタイミング(ちゃんとJSTで意図した時間帯に該当するデータがあるかを確認するため)を表示するようにしてみました。

YOUR_SECRET_KEY=***YOUR_SECRET_KEY***
SUBSCRIPTION_LIMIT=10
START=`date -j -f "%Y-%m-%d %H:%M:%S" "2021-02-18 02:00:00" "+%s"`
END=`date -j -f "%Y-%m-%d %H:%M:%S" "2021-02-18 02:35:00" "+%s"`
date -r ${END}
RES=$(curl -s --globoff https://api.stripe.com/v1/subscriptions?limit=${SUBSCRIPTION_LIMIT}\&current_period_end[lt]=${END}\&current_period_end[gte]=${START} \
  -u ${YOUR_SECRET_KEY}: \
  -G)
END=`echo ${RES} | jq '.data[] | .current_period_end' | sort`
for TIME in ${END}
do
  date -r ${TIME}
done
RESULT=`echo ${RES} | jq -r '.data[] | .id'`
for ID in ${RESULT}
do
  echo ${ID}
done

結果

該当するデータはありませんでした!

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
0
Help us understand the problem. What are the problem?