Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Next.jsでStripe Identityによる本人確認を実装した話

Next.jsでStripe Identityによる本人確認を実装した話

「JP_Stripe in 金沢 #2 - 事例に学ぶ、オンラインビジネス / DXの始め方」で登壇した資料です。
https://jpstripes.connpass.com/event/327630/

Makoto Kurihara

October 07, 2024
Tweet

Other Decks in Programming

Transcript

  1. 【話すこと】  ‧Next.js App Router + Vercel の構成で Stripe Identity を実装するサンプル

     ‧Stripe Identity の動作デモ 【話さないこと】  ‧Stripe Identity の具体的な活⽤‧使⽤例  ‧Next.js App Router の基本的な使い⽅ 3 今回のテーマ
  2. Next.js とは Next.jsはReactの機能を拡張し たフレームワーク。 State of JavaScript 2023 のメ タフレームワーク部⾨におい

    て使⽤率56%と⾼く、Reactを 使った開発において最も⼈気 なフレームワークの1つ。 5
  3. Stripe API について 9 Stripe API には混合しやすい以下の2種類がある。 Stripe Identity の実装にはこの両⽅を使⽤する。

    【Stripe API】https://docs.stripe.com/api  ‧バックエンド環境で動作させることを前提にした API  ‧JavaScript だと Node.js と AWS Lambda で作るイメージ  ‧Next.js App Router の場合、 API Routes という機能で実⾏する 【Stripe JS】https://docs.stripe.com/js  ‧フロントエンド環境で動作させることを前提にしたパッケージ  ‧代表的な使⽤⽤途としては Stripe Elements
  4. Stripe API 利⽤の下準備 - APIキーの発⾏ 1. Stripe管理画⾯ヘッダー部分にある「開発者」をクリック 2. API キータブ内にある「公開可能キー」と「シークレットキー」をコピー

    3. 環境変数として設定 【公開可能キー】  ‧主に「Stripe JS」で使⽤するAPIキー  ‧「pk_test_」もしくは「pk_live_」から始まる  ‧Next.jsで設定する場合、クライアント(ブラウザ)で呼び出すため   環境変数名の頭に「NEXT_PUBLIC_」をつける必要がある 【シークレットキー】  ‧主に「Stripe API」で使⽤するAPIキー  ‧「sk_test_」もしくは「sk_live_」から始まる 10
  5. VerificationSession を作成 VerificationSession は、 Stripe Identity の本⼈認証を 「起動する」というようなイ メージ。 1ユーザーに対して何個でも

    作成可能だが、実⾏する度に ID は変わる。 12 1. API Routes で identity.verificationSessions.create を実⾏する API を作成
  6. 確認ページの表⽰とIDの送信 1. Stripe Identity の ID が発⾏されたら、 useState 等を使って確認ページを表 ⽰する

    2. 最後に取得した ID を CRM や DB に繋ぎこむ 本⼈確認の結果は送信した ID を使ってダッシュボードか確認⽤ API で状況を確認 15
  7. まとめ • Stripe Identity を使えばオンラインで簡単に本⼈確認が完了する • 開発環境でもスマホ実機を使ったテストができる • Next.js で実装するときは

    API Routes を使おう • ドキュメントがわかりやすいので実装⼯数が少なく済む ◦ すでに Next.js で Stripe Elements などを構築済みの場合、3hほどで実装完了 16