このエンドポイントには customer 側の session-token フローもあります:サブスクリプションのキャンセル(Customer) を参照。
キャンセル動作
- pending: 直接キャンセルされ、ステータスは
canceledになります(cancelingを経由しません) - pending のプラン変更サブスクリプション: 同じく直接
canceledになりますが、その予約済みサブスクリプションに対する PSP キャンセルが即時送信されるため、予定の切替時刻に有効化も課金もされません。元のサブスクリプションは一切変更されず、cancelingのままでactiveには戻りません - キャンセル中に終了済み(冪等な収束): 読み取り時は
pendingだった注文が、キャンセルの書き込み前に終了状態になった場合 —— 例えば同じサブスクリプションに対してプラン変更候補が 2 件同時に作成され、PSP が譲った側をクローズして先にクローズ通知を返した場合や、並行する別のキャンセルが先に反映された場合 —— はキャンセル済みとして収束します。まだ保持されている割引の予約を解放し(解放済みのものを二重に解放することはありません)、200 と現在の終了状態(例:closed)を返します。この場合キャンセル理由は保存されません - active: PSP キャンセルがトリガーされます(請求期間の終了時に有効)。ローカルステータスは
cancelingになり、期間終了時に Webhook 経由でcanceledに更新されます - past_due: PSP キャンセルは期間終了を待たず即時に送信されます。ローカルステータスは
cancelingになり、PSP の確認後に Webhook 経由でcanceledに更新されます。請求期間は既に終了しているため、この経路では「キャンセル予定・X 日まで利用可能」のメールは送信されません
リクエストボディ
リクエスト例
成功レスポンス (200) — 有効なサブスクリプション
成功レスポンス (200) — 保留中のサブスクリプション
レスポンスフィールド
エラー
リトライポリシー:4xx は一切リトライしない — リクエストを修正してから再送信。5xx は指数バックオフでリトライ(5s 開始、最大 3 回)。