イベント

事前決済チェックアウトを作成

POST/events/:eventId/tickets/:ticketId/prepaid-checkout

アンケート回答を先に保存したうえで Stripe Checkout を作成します。在庫は一定時間だけ確保され、期限内に決済されなければ解放されます。

認証要ログイン

パスパラメータ

eventIdstring必須

イベント ID または slug。

ticketIdstring必須

チケット種別 ID。チケットが設定されているイベントでは必須。

リクエストボディ

questionAnswersQuestionAnswer[]任意

アンケート回答の配列。各要素は questionId(必須)と answer(文字列配列・1 要素以上、各要素 1000 文字以内)を持つ。必須設問はすべて回答すること。

profileAnswersEntryProfileAnswers任意

参加登録時に収集するプロフィール項目。イベントの 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)。

レスポンス

フィールド型説明
urlstringStripe Checkout の URL。ここへ遷移して決済する。
sessionIdstringStripe 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_..."
}