Checkout で限られた在庫を管理する
Checkout セッションを期限切れにすることで、顧客がカートに在庫を保有したままになるのを防ぎます。
在庫に限りのある一部のビジネスでは、顧客が購入を完了せずに長時間アイテムを確保したままになるのを防ぐ必要があります。たとえば、イベントのチケット販売者は、顧客が選択したチケットを購入できる有効期限を数分間のみに制限して、期限後は購入をキャンセルしてチケットをまた販売できるようにしたいと考えます。Checkout セッションを期限切れにすることで、保留中の販売をキャンセルすることができます。
Checkout セッションを期限切れにすると、そのステータスプロパティは expired
に変わります。
Checkout は、手動と時間指定のどちらのセッション期限切れにも対応しています。
手動の有効期限
未処理の Checkout セッションをただちに期限切れにし、保留中の購入をキャンセルするには、expire エンドポイントを使用します。
有効期限を設定する
Checkout セッションの作成時に、有効期限のタイムスタンプを expires_at
パラメーターで指定します。この値は、現在時刻から 30 分後以降、24 時間以内で指定する必要があります。expires_at
を指定しなかった場合、デフォルト値は 24 時間後になります。
アイテムを在庫に戻す
Checkout セッションの期限が切れると、checkout.session.expired
イベントがトリガーされます。このイベントをリッスンするように Webhook エンドポイントを設定して、Webhook ハンドラが期限切れのセッションで予約されていたアイテムを在庫に戻せるようにします。詳細については、Expire a Session (セッションを期限切れにする) をご覧ください。