事前決済チェックアウトを作成
/events/:eventId/tickets/:ticketId/prepaid-checkoutアンケート回答を先に保存したうえで Stripe Checkout を作成します。在庫は一定時間だけ確保され、期限内に決済されなければ解放されます。
| 認証 | 要ログイン |
|---|
パスパラメータ
eventIdstring必須イベント ID または slug。
ticketIdstring必須チケット種別 ID。チケットが設定されているイベントでは必須。
リクエストボディ
アンケート回答の配列。各要素は questionId(必須)と answer(文字列配列・1 要素以上、各要素 1000 文字以内)を持つ。必須設問はすべて回答すること。
参加登録時に収集するプロフィール項目。イベントの entryProfileFields で指定された項目に対応する。
invitationCodestring任意招待コード。8 文字ちょうど。招待制チケットの場合に指定する。
faceImageUrlstring任意顔写真 URL。有効な URL 形式であること。requiresFacePhoto が有効なイベントでは必須。
successUrlstring任意決済完了後に戻るリダイレクト先 URL。省略すると 4S のチケット購入完了ページに戻ります。https(ローカル開発のみ http)の絶対 URL・フラグメント(#...)不可・2048 文字以内で、OAuth クライアントに登録済みの redirect URI と同じオリジンである必要があります。
cancelUrlstring任意決済をキャンセルしたときに戻るリダイレクト先 URL。省略すると Stripe の Checkout 画面に留まります。形式・オリジンの条件は successUrl と同じです。
補足
successUrl に指定した URL には、リダイレクトの際に Stripe Checkout セッション ID が session_id クエリパラメータ(例: ?session_id=cs_test_...)として付加されます。指定した URL に元々含まれているクエリパラメータはそのまま保持され、既に session_id を含む場合は付加されません。
cancelUrl にはクエリパラメータは付加されず、指定した URL にそのまま戻ります。どの購入のキャンセルかを判別したい場合は、あらかじめ自前のクエリパラメータ(例: ?orderId=...)を含めた URL を指定してください。
successUrl への到達は決済完了の保証ではありません。参加登録の確定は Stripe の Webhook で行われるため、戻ってきた session_id をレスポンスの sessionId と突き合わせたうえで、参加登録の状態は API で確認してください。
successUrl / cancelUrl が URL 形式として不正な場合、または登録済み redirect URI と異なるオリジンの場合は 400 を返します(それぞれ errorCode 10020 / 60002)。
レスポンス
| フィールド | 型 | 説明 |
|---|---|---|
url | string | Stripe Checkout の URL。ここへ遷移して決済する。 |
sessionId | string | Stripe Checkout セッション ID。 |
curl https://api.4s.link/events/EVENT_ID/tickets/TICKET_ID/prepaid-checkout \-X POST \-H "Authorization: Bearer 4s_at_..." \-H "Content-Type: application/json" \-d '{"questionAnswers": [{ "questionId": "q1a2b3c4-...", "answer": "情報収集のため" }],"successUrl": "https://example.com/tickets/complete","cancelUrl": "https://example.com/tickets/canceled"}'
{"url": "https://checkout.stripe.com/c/pay/cs_test_...","sessionId": "cs_test_..."}