物理カードの住所の確認
物理カードの住所の確認機能を有効化および管理する方法をご紹介します。
Stripe Issuing では、対象の受取人に物理カードが正しく配送されるようにするために、適切な形式の正確な配送先住所が必要です。無効な住所に送付されたカードは Stripe に返送されますが、配送の試行と最終的な返送が完了するまでに 2 週間以上かかる場合があります。また、カードの返送によって業務負荷の追加、全体的なコストの増加、カード保有者の物理カードの受け取りの遅延が発生することもあります。
配送に成功する可能性を最大化するために、Stripe の Cards API には構築済みの住所の正規化と確認が含まれています。Stripe は指定された配送先住所をサードパーティーの住所データベースと比較して、住所の問題を特定または修正します。
住所の正規化
正規化では、住所が配送先の国の基準に従っていることを確認しながら、明らかな住所の誤りを修正します。
以下に正規化の例を示します。
確実に正しくフォーマット設定するための住所の正規化
// Before "shipping": { "address": { "line1": "354 Oyster Point Blvd South San Francisco, CA 94080", // incorrectly formatted line1 "city": "South San Francisco", "postal_code": "94080", "state": "CA", "country": "US" } } // After "shipping": { "address": { "line1": "354 OYSTER POINT BLVD", "city": "SOUTH SAN FRANCISCO", "postal_code": "94080", "state": "CA", "country": "US" } }
既存の確認済み住所との照合で見つかった修正を適用するための住所の修正
// Before "shipping": { "address": { "line1": "354 Oyster Point", "city": "South San Francisco", "postal_code": "94080", "state": "NM", // incorrect state with an available correction "country": "US" } } // After "shipping": { "address": { "line1": "354 OYSTER POINT BLVD", // added BLVD suffix "city": "SOUTH SAN FRANCISCO", "postal_code": "94080", "state": "CA", // corrected state "country": "US" } }
正規化された住所は address validation ハッシュに含まれます。このハッシュは、住所の正規化を有効にして法人カードの作成またはカードの配送先住所の更新に成功した後で返されます。
住所検証のサンプル
"shipping": { // address supplied during card creation "address": { "line1": "354 Oyster Point Blvd South San Francisco, TX 94080", "city": "South San Francisco", "postal_code": "94080", "state": "TX", "country": "US" }, // address validation hash "address_validation": { // the normalized address "normalized_address": { "line1": "354 OYSTER POINT BLVD", "city": "SOUTH SAN FRANCISCO", "state": "CA", "postal_code": "94080", "country": "US" }, "mode": "validation_and_normalization", "result": "likely_deliverable" } }
住所の確認
確認では、既存の確認済みの住所と照合することで、その住所が配達可能であるかが判断されます。確認は正規化の適用後に行われます。
この確認結果は住所確認ハッシュに含まれます。使用された住所確認モードによっては、API エラーが発生する場合があります。
結果 | 説明 |
---|---|
likely_ | サードパーティーのデータベースで一部または完全に一致する住所が見つかる場合、住所は配送できる可能性が高いと見なされます。 |
likely_ | サードパーティーのデータベースで一致または部分的に一致する住所が見つからない場合、住所は配送できない可能性が高いと見なされます。 |
indeterminate | 住所が配送可能であるかを確認できませんでした。 |
たとえば、前の例では likely_
の確認結果が示されています。
"address_validation": { // the normalized address "normalized_address": { "line1": "354 OYSTER POINT BLVD", "city": "SOUTH SAN FRANCISCO", "state": "CA", "postal_code": "94080", "country": "US" }, "mode": "validation_and_normalization", // the result showing that address was validated to be likely deliverable "result": "likely_deliverable" }
住所確認モードを指定して住所確認機能を管理する
Cards API は 3 つの住所確認モードに対応しており、これは法人カードの作成時またはカードの配送の更新時に、必要に応じて address_validation パラメーターで指定できます。
モード | 説明 |
---|---|
validation_ | フルフィルメントの実行に送り出す前にカードの配送先住所の確認と正規化を行います。Stripe は住所に対して適切な修正の自動適用とフォーマット設定を試行してから、配送可能であるかどうかを判定します。カードの配送先住所が配送可能ではないと見込まれる場合は API リクエストのエラーが発生します。 |
normalization_ | フルフィルメントの実行に送り出す前にカードの配送先住所の正規化を行い、必要に応じて住所に修正を加えてフォーマット設定を適用します。住所が配送可能であるかどうかの確認は行われず、API リクエストのエラーも発生しません。 |
disabled | 正規化や配送可能であるかどうかの確認を行うことなく、指定どおりの住所を使用してカードを配送します。これは、住所が正しいことを認識しているか、他の方法で確認している場合にのみ推奨されます。 |
住所確認のモードには validation_
を使用します。シナリオに応じて、代替のモードも用意されています。
disabled
: カードが誤ってブロックされたと思われる場合。normalization only
: API エラーを最小限に抑えながら正規化のメリットを活用したい場合。指定がない場合、デフォルトはnormalization_
になります。only
確認と正規化
カードは確認済みの正規化された住所を使用して配送されます。住所が配送可能であるかどうかの確認が行われ、配送できない可能性が高い場合は API エラーが発生します。Stripe では、このモードを使用して、住所が配送可能であるかを確認することを強くお勧めします。
"error": { "message": { "The address is undeliverable based on given inputs. Please ensure that the address was inputted correctly and can be delivered to." } }
正規化のみ
カードは正規化された住所を使用して配送されます。住所が配送可能であるかどうかの確認は行われず、配送できない可能性が高い場合でも API リクエストのエラーは発生しません。
# Example response { "id": "ic_test1CDR9auHsQKan42gGK34", "object": "issuing.card", "shipping": { // address supplied during card creation "address": { "line1": "1234 Fake Street", "city": "Fake city", "postal_code": "94111", "state": "NY", "country": "US" }, // address validation information "address_validation": { // the card will be shipped with this address "normalized_address": { "line1": "1234 FAKE ST", "city": "FAKE CITY", "state": "NY", "postal_code": "94111", "country": "US" }, "mode": "normalization_only", "result": "likely_undeliverable" }, // other fields... }, // other fields... }
無効
このモードでは、正規化や配送可能であるかどうかの確認を行うことなく、指定どおりの住所を使用してカードを配送します。正規化された住所と確認結果は返されません。これは、住所が正しいことを認識しているか、他の方法で確認している場合にのみ推奨されます。
// Example response { "id": "ic_test1CDR9auHsQKan42gGK34", "object": "issuing.card", "shipping": { // address supplied during card creation "address": { "line1": "1234 Fake Street", "city": "Fake city", "postal_code": "94111", "state": "NY", "country": "US" }, // address validation information "address_validation": { "mode": "disabled" }, // other fields... }, // other fields... }
住所確認をカード作成フローと連携させる
以下に、フローを住所確認機能と連携する方法の例をいくつか紹介します。これらの例は、すべてを網羅したものではなく、導入時に利用できるアイデアとして提供されています。
住所の確認をテストする
テスト環境で line1
に magic value (マジック値) を指定して一定の確認条件をトリガーします。city
、state
、postal_
の引数には正当な値を渡す必要があります。
値 | タイプ |
---|---|
address_ | 配送可能な配送先住所を使用して、テスト環境でリクエストを送信します。 |
address_ | 配送が可能ではない配送先住所を使用して、テスト環境でリクエストを送信します。 |