自撮り写真チェックを追加する
書類チェックでは、不正な本人確認書類の使用を未然に防ぐことができますが、不正行為者は盗んだ本物の書類を使用する可能性があります。これを防ぐために、Stripe Identity はユーザに対して自撮り写真チェックを行うことができます。
自撮り写真チェックでは、写真付き身分証明書とユーザの顔写真から、顔の形などの生物学的特徴を検出します。その後、Stripe では高度な機械学習アルゴリズムを使用して、その顔写真が同一人物のものであることを確認します。
アプリケーションに自撮り写真チェックを追加するには、まずガイドに従って本人確認書類を収集し確認します。
VerificationSessions に自撮り写真チェックを追加する
VerificationSession を作成する際、options.document.require_matching_selfie
パラメータを使用して自撮り写真チェックを有効にします。
これにより認証フローが設定され、ユーザは写真付き身分証明書と顔写真を求められます。
自撮り写真チェックの結果にアクセスする
送信と処理が終わると、VerificationSession ステータスは、チェックの結果によって変化します。
verified
— 書類と自撮り写真の両方のチェックが成功しました。セッションのverified_outputs
には、書類から抽出された情報が含まれます。requires_input
— 書類または自撮り写真チェックのうち、少なくとも一方が失敗しました。
キャプチャされた自撮り写真と書類の画像にアクセスするには、関連する VerificationReport を取得する必要があります。このためには、セッションで last_verification_report
フィールドを展開します。
VerificationReport には、書類と自撮り写真のチェック結果を含む document
および selfie
のフィールドがあります。以下は、書類と自撮り写真のチェックに成功した VerificationReport の例です。
{ "id": "vr_58ubMEgjkiLfqNcdmYHi7qAd", "object": "identity.verification_report", "type": "document", "verification_session": "vs_iN7LbV4y1iM1HlNIl8FbMprt", "created": 1611776872, "livemode": true, "options": { "document": { "require_matching_selfie": true } }, "document": { "status": "verified", "error": null, "first_name": "Jenny", "last_name": "Rosen", "address": { "line1": "1234 Main St.", "city": "San Francisco", "state": "CA", "postal_code": "94111", "country": "US" }, "document_type": "id_card", "expiration_date": { "day": 17, "month": 7, "year": 2024 }, "files": ["file_qyjnyvqBZ1vk7m7ScYSNSSFJ", "file_T5jx4OPLZ7W78G83sTpKdW2e"], "issued_date": { "day": 4, "month": 27, "year": 2021 }, "issuing_country": "US" }, "selfie": { "status": "verified", "error": null, "document": "file_ND4VIA1pMacc7inhw3vVGgND", "selfie": "file_JA5rrypPc0QuFNTi0VIHfGel", } }
収集された書類と顔の画像にアクセスするには、確認結果へのアクセスをご覧ください。
自撮り写真チェックの失敗について
VerificationReport の document
および selfie
のフィールドには、収集されたデータに加え、チェックが成功したか失敗したかを知るのに役立つ status
と error
のフィールドが含まれます。
status
フィールドで、各チェックが成功したかどうかが分かります。表示される可能性のある値は以下のとおりです。
verified
- 本人確認チェックは成功し、収集されたデータは確認されました。unverified
- 本人確認チェックは失敗しました。詳細については、error
ハッシュを参照してください。
本人確認チェックが失敗すると、error
フィールドに、確認失敗の理由を説明する code
と reason
の値が含まれます。error.code
フィールドを使用して、確認の失敗をプログラムで処理することができます。reason
フィールドには失敗の理由を説明するメッセ―ジが含まれ、ユーザーに提示できます。
書類チェックの失敗
失敗の詳細はレポートの document.error
フィールドにあります。
エラーコード | 説明 |
---|---|
document_expired | 提供された身分証明書の有効期限が切れています。 |
document_unverified_other | Stripe は、提供された身分証明書を確認できませんでした。サポートされている書類タイプのリストをご覧ください。 |
document_type_not_supported | 提供された身分証明書は、セッションで許可されている書類のタイプではありません。 |
自撮り写真チェックの失敗
失敗の詳細はレポートの selfie.error
フィールドにあります。
エラーコード | 説明 |
---|---|
selfie_document_missing_photo | 提供された身分証明書に顔写真が含まれていませんでした。 |
selfie_face_mismatch | 撮影された顔の画像が書類の顔と一致しませんでした。 |
selfie_unverified_other | Stripeは、提供された自撮り写真を確認できませんでした。 |
selfie_manipulated | 撮影された顔の画像が加工処理されていました。 |