顧客の住所を収集
税金を計算するための、顧客の住所情報の収集についてご紹介します。
Stripe Tax では、税金を自動的に計算するために顧客の場所が必要とされます。この要件は、有効な登録がない場合にも適用されます。このガイドでは、顧客から住所を収集する方法について説明します。
Checkout と Payment Links
Checkout は、Payment Links で作成された住所を含む、顧客の住所の収集を処理します。
請求処理、 サブスクリプション、およびカスタムの支払いの組み込み
Payment Links または Checkout を使用していない場合、顧客の住所を収集する責任はお客様にあります。
- Customer オブジェクトの country フィールドと postal_code の両方のフィールドを収集し設定します。
- 2 文字の国コード (ISO 3166-1 alpha-2) を使用します。
- 顧客を作成または更新の際に、tax[validate_location]=“immediately” を設定して、後の customer_tax_location_invalid エラーを防ぎます。
- ほとんどのアクティビティーは非同期で発生するため、サブスクリプションの Webhook イベントをリッスンします。
地域的な考慮事項アメリカ
請求書の確定エラー
Stripe Tax で請求書を確定するには、顧客の場所を認識しておく必要があります。顧客のデフォルトの支払い方法を更新 / 削除した場合、あるいは顧客を作成 / 更新する際に tax[validate_
を指定しなかった場合、場所の詳細が不足または無効になる可能性があります。
顧客の場所が認識されていない場合、サブスクリプションの請求書は引き続き自動的に確定されますが、税金は計算されません。これにより、以下の影響が生じます。
- Subscription (サブスクリプション) と Invoice (請求書) の
automatic_
パラメーターがtax[enabled] false
に変わります。 Invoice[automatic_
パラメーターがtax][disabled_ reason] finalization_
に変わります。requires_ location_ inputs Subscription[automatic_
がtax][disabled_ reason] requires_
に変わります。location_ inputs - サブスクリプションにスケジュールが設定されている場合、現在のフェーズと
default_
のsettings automatic_
をtax[enabled] false
に設定します。また、両方のdisabled_
をreason requires_
に設定します。location_ inputs invoice.
とupdated customer.
イベントを送信して、これらの変更をシステムに通知します。subscription. updated - スケジュールが設定されている場合、
subscription_
Webhook も送信されます。schedule. updated
- スケジュールが設定されている場合、
- 請求書は税金の計算や徴収を行わずに確定されます。税額は記載されません。
- Stripe は通常どおり、請求書の回収方法に従って支払いを回収します。
Stripe ダッシュボードで税金の自動計算が設定されていないサブスクリプションを確認するには、Subscription ページにアクセスし、税金の自動計算が無効のオプションで表示を絞り込みます。今後これらのサブスクリプションの自動税金計算を有効にするには、有効な顧客の場所が少なくとも 1 つあることを確認し、Stripe Tax ダッシュボードで税金の自動計算を有効にします。
税金が自動的に無効になる例外
有効な顧客の場所を指定せずに API またはダッシュボードで確定すると、Stripe はエラーを返し、請求書を draft
ステータスのまま維持します。API には、code
が customer_
の HTTP 400 エラーが返されます。
同様に、サブスクリプションのないスタンドアロンの請求書を自動確定する際に、顧客の場所が有効でなければ請求書は下書きのままになります。Stripe は請求書の last_finalization_error[code] を customer_
に指定して、invoice.finalization_failed イベントを送信します。
customer_
エラーから回復する方法は、顧客の住所を収集しているかどうかによって異なります。
- 顧客の住所がわかる場合、または収集できる場合は、顧客を更新して請求書を手動で確定します。
- Update the customer に tax[validate_location]=“immediately” を指定して、新しい住所が有効であることを確認します。
- 請求書を確定します。
- 顧客の住所がわからない場合、または収集できない場合は、請求書とそのサブスクリプションに対して Stripe Tax を無効にし、請求書を手動で確定します。
- 影響を受ける請求書を更新して、
automatic_
に指定します。tax[enabled]=false - 影響を受けるサブスクリプションを更新して、
automatic_
に設定します。tax[enabled]=false - 請求書を確定する。
- 影響を受ける請求書を更新して、
オプション使用される顧客の住所
Stripe Tax は、税金を計算する際に、1 つの住所を顧客の住所として使用します。販売する商品のタイプにより、住所の選択方法が変わることはありません。
自動税金計算の支払いが適用された場所は、ダッシュボードの取引詳細ページにある自動税金計算セクションで確認できます。tax-location-source を確認するには、Customer API オブジェクトの税金パラメーターを確認します。
Checkout と Payment Links
Checkout と Payment Links は、セッション中に収集された住所を使用します。
請求処理、 サブスクリプション、およびカスタムの支払いの組み込み
以下のリストで最初に実行可能なアイテムを使用して、顧客の場所を判定します。
- 存在する場合は、顧客の配送先住所が使用されます。
- 配送先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、
customer_
エラーが発生します。tax_ location_ invalid
- 配送先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、
- 存在する場合は、顧客の 請求先住所が使用されます。
- 請求先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、
customer_
エラーが発生します。tax_ location_ invalid
- 請求先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、
- 存在する場合は、最も具体的な支払い方法の請求書の詳細を使用します。
- 請求書のデフォルトの支払い方法 (存在する場合)。
- サブスクリプションのデフォルトの支払い方法 (存在する場合)。
- 顧客のデフォルトの支払い方法 (存在する場合)。
- 存在する場合は、顧客の IP アドレスが使用されます。
注
支払い方法に関連付けられた請求先詳細が不完全であるか、欠落している場合、Stripe はより完全になるよう請求先住所の収集を試みます。たとえば、カード発行会社の国がわかっている場合は、それを請求先詳細の郵便番号と組み合わせます。
Tax API
Tax API の場合、住所階層は簡略化されたアプローチに従います。
- API リクエストで指定された住所は、税額計算に直接使用されます。
- 配送先住所、請求先住所、支払い方法、IP アドレスなど、他の住所ソースへのフォールバックはありません。
警告
Tax API を使用する場合は、API リクエストで有効かつ完全な住所を指定する必要があり、そうしないとエラーが返されます。国と、該当する場合は郵便番号と都道府県を含めます。
オプション最小限の住所収集
請求先住所と配送先住所にはそれぞれ、line1
、line2
、city
、state
、postal_
、country
のフィールドがあります。country
は 2 文字の ISO 3166-1 コードである必要があります。
上記のいずれかの住所形式を使用し、顧客の住所が一貫して認識されるようにしてください。
オプション地域的な考慮事項
アメリカ
IP アドレスの精度
ほとんどの場合、Stripe では IP アドレスを物理的な地域に解決できますが、その精度はさまざまで、顧客の実際の場所を反映しないことがあります。アメリカでは地方税が課されるため、顧客の住所を判別するために IP アドレスを使用することはお勧めしません。
正確な住所検索
Stripe Tax は、アメリカの顧客の住所についてルーフトップレベルの精度の住所検索に対応しているため、特定の家屋または建物まで顧客の場所を正確に特定できます。アメリカでは複雑な管轄区域の境界が原因で同じ通りに税率の異なる 2 つの家屋が並んでいる場合がありますが、この方法なら検索精度が向上します。
アメリカ以外の住所の場合、Stripe は、納税義務を判断するために、国、州、郵便番号のフィールドを使用しますが、包括的な住所データベースと比較しません。州と郵便番号が使用される状況について詳しくは、「特別な管轄区域および除外対象地域」をご覧ください。
注
Stripe Tax は、住所の情報が足りない場合や不一致がある場合、またはアメリカ郵政公社の住所データベースの住所と一致しない場合に、5 桁のアメリカの郵便番号を使用します。
アメリカの群および外交用の住所
Stripe Tax は、海外に送付されるアメリカの軍事および外交用の郵便に対して税金を計算しません。海外の軍事施設および外交施設の住所には、APO、FPO、または DPO の郵便番号が割り当てられます。USPS は、この郵便番号を国内郵便扱いとした上で、在外軍事施設に転送します。これらの特別な郵便番号への売上は国外に送金されるため、売上税は適用されません。
郵便番号
アメリカでは、 Stripe Tax は、基本的な 5 桁のアメリカの郵便番号のみによる売上税計算をサポートしています。5 桁の郵便番号地域の地理的な中心地を顧客の場所として使用します。この時点の税率は、顧客の完全な住所の税率とは異なる場合があります。郵便番号だけで、課税する正しい税率を特定できるかどうかは、州によって異なります。
以下の州で郵便番号のみを使用することは、お勧めいたしません。
- アラバマ州
- アラスカ州
- アリゾナ州
- アーカンソー州
- カリフォルニア州
- コロラド州
- イリノイ州
- カンザス州
- ルイジアナ州
- ミズーリ州
- ネブラスカ州
- ニューメキシコ州
- ノースダコタ州
- オクラホマ州
- サウスダコタ州
- テキサス州
- ユタ州
- ワシントン州
- ウエストヴァージニア州
注
Stripe Tax は 9 桁の ZIP+4 コードもサポートしていますが、追加の 4 桁は使用しません。
ヨーロッパ
IP アドレスの信頼性
EU など、地方税が課されない地域では、IP アドレスが正確な住所に解決される可能性が高くなります。
除外対象地域
ヨーロッパでは、州や地域の当局ではなく、各国の税務当局が税金を課します。課税対象の国の中に位置していても、国の税率が適用されない地域が少数ながら存在します。たとえば、イタリアの郵便番号である「00120」はバチカン市国を示し、イタリアの VAT は適用されません。
顧客の郵便番号や州を収集し、顧客が適用除外地域に位置する場合に Stripe Tax がそれを判断できるようにします。
Stripe Tax でサポートされている適用除外地域のリストをご覧ください。