プランを更新する

定期課金について、次サイクルから適用プランを更新する方法について説明します。

まず、「定期課金を行う」の案内に沿ってテスト用の定期課金を作成しましょう。 定期課金は前払い式なので、作成と同時に課金が行われます。

curl "https://api.pay.jp/v1/subscriptions" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "plan=normal" \
-d "customer=cus_test"

サイクル途中でプランを更新したい

API「定期課金を更新」にて、引数 plan を指定することでプランを更新できます。

curl "https://api.pay.jp/v1/subscriptions/定期課金ID" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "plan=更新したいプランID"

この際、以下の挙動にご注意下さい。

  • 更新時点で新しいプランでの課金が実行され、サイクルも更新されます
  • プランに設定されているトライアル期間は無視されます

課金を行わないためには、引数 trial_end が利用できます。 課金したい時刻のタイムスタンプを指定することで、その時刻までがトライアル期間となり、その時刻を過ぎてから課金が行われます。

次サイクルからプランを更新したい

trial_endを利用

trial_end に現在のサイクル終了日 current_period_end を指定することで、プランを更新しつつ、課金を次サイクルから行うようにできます。

curl "https://api.pay.jp/v1/subscriptions/定期課金ID" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "plan=次サイクルから適用したいプランID" \
-d "trial_end=現在の定期課金のcurrent_period_end"

next_cycle_planを利用

next_cycle_plan を利用することでも、次サイクルからのプラン適用を切り替えることが可能です。

curl "https://api.pay.jp/v1/subscriptions/定期課金ID" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "next_cycle_plan=次サイクルから適用したいプランID"

プラン適用を解除したい場合は、空文字列でリクエスト下さい。

curl "https://api.pay.jp/v1/subscriptions/定期課金ID" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "next_cycle_plan="

next_cycle_planの挙動を確認する

引数 trial_end を設定するとサイクルも変更されることを利用し、 next_cycle_plan の挙動をすぐに確かめることが可能です。

curl "https://api.pay.jp/v1/subscriptions/next_cycle_planが適用された定期課金ID" \
-u "sk_test_c62fade9d045b54cd76d7036": \
-d "trial_end=1分後など確認したい時刻のタイムスタンプ"

trial_end で指定した時刻を過ぎて一定時間経過後、定期課金のプランが next_cycle_plan で設定したプランに変更されていることを確認ください。