# 顧客の住所を収集

税金を計算するための、顧客の住所情報の収集についてご紹介します。

Stripe Tax で税金を自動計算するには、顧客の所在地情報を指定してください。この要件は、有効な登録がない場合にも適用されます。顧客の所在地での登録がない場合、計算される税額はゼロになります。詳細については、[税額ゼロについて](https://docs.stripe.com/tax/zero-tax.md) をご覧ください。このガイドでは、顧客から住所を収集する方法について説明します。

## 使用される顧客の住所

Stripe Tax は、税金を計算する際に、1 つの住所を顧客の住所として使用します。販売する商品のタイプにより、住所の選択方法が変わることはありません。

ダッシュボードの取引の詳細ページにある **Tax calculation** セクションで、その自動課税済み決済で使用された場所を確認できます。

顧客 API オブジェクトの [tax.location.source](https://docs.stripe.com/api/customers/object.md#customer_object-tax-location-source) フィールドも確認できます。

### Checkout と Payment Links

Checkout と Payment Links は、セッション中に収集された住所を使用します。

### 請求処理、 サブスクリプション、およびカスタムの支払いの組み込み

#### Customer v1

以下のリストで最初に実行可能なアイテムを使用して、顧客の場所を判定します。

1. 存在する場合は、顧客の[配送先住所](https://docs.stripe.com/api/customers/object.md#customer_object-shipping)が使用されます。

- 配送先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、`customer_tax_location_invalid` エラーが発生します。

1. 存在する場合は、顧客の [請求先住所](https://docs.stripe.com/api/customers/object.md#customer_object-address)が使用されます。

- 請求先住所が存在していても無効な場合、このリスト内の次の住所を試行する代わりに、`customer_tax_location_invalid` エラーが発生します。

1. 最も具体的な決済手段が存在する場合は、その[請求先情報](https://docs.stripe.com/api/payment_methods/object.md#payment_method_object-billing_details)が使用されます。
   1. 請求書の[デフォルトの支払い方法](https://docs.stripe.com/api/invoices/object.md#invoice_object-default_payment_method) (存在する場合)。
   2. サブスクリプションの[デフォルトの支払い方法](https://docs.stripe.com/api/subscriptions/object.md#subscription_object-default_payment_method) (存在する場合)。
   3. 顧客の[デフォルトの支払い方法](https://docs.stripe.com/api/customers/object.md#customer_object-invoice_settings-default_payment_method) (存在する場合)。
2. 存在する場合は、顧客の [IP アドレス](https://docs.stripe.com/api/customers/object.md#customer_object-tax-ip_address)が使用されます。

Stripe Tax が使用する顧客の住所の優先順位の表示。 (See full diagram at https://docs.stripe.com/tax/customer-locations)

```text
+-------------------------------------------------+
| Customer オブジェクト                                 |
+-------------------------------------------------+
| id: cus_1234                                    |
| 配送先住所: 住所 #1                                    |
| 請求先住所: 住所 #2                                    |
| invoice_settings.default_payment_method: pm_qux |
| tax.ip_address: 住所 #6                           |
+-------------------------------------------------+

+--------------------------------+
| サブスクリプションオブジェクト                |
+--------------------------------+
| id: sub_1234                   |
| 顧客: cus_1234                   |
| default_payment_method: pm_bar |
+--------------------------------+

+--------------------------------+
| Invoice オブジェクト                 |
+--------------------------------+
| id: in_1234                    |
| サブスクリプション: sub_1234            |
| default_payment_method: pm_foo |
+--------------------------------+

+--------------------------------+
| PaymentMethod オブジェクト           |
+--------------------------------+
| id: pm_foo                     |
| タイプ: カード                       |
| billing_details.address: 住所 #3 |
+--------------------------------+

+--------------------------------+
| PaymentMethod オブジェクト           |
+--------------------------------+
| id: pm_bar                     |
| タイプ: カード                       |
| billing_details.address: 住所 #4 |
+--------------------------------+

+--------------------------------+
| PaymentMethod オブジェクト           |
+--------------------------------+
| id: pm_qux                     |
| タイプ: カード                       |
| billing_details.address: 住所 #5 |
+--------------------------------+

[サブスクリプションオブジェクト.顧客] --> [Customer オブジェクト]
[Invoice オブジェクト.サブスクリプション] --> [サブスクリプションオブジェクト]
[Invoice オブジェクト.default_payment_method] --> [PaymentMethod オブジェクト]
[サブスクリプションオブジェクト.default_payment_method] --> [PaymentMethod オブジェクト]
[Customer オブジェクト.invoice_settings.default_payment_method] --> [PaymentMethod オブジェクト]
```

支払い方法に関連付けられた請求先詳細が不完全であるか、欠落している場合、Stripe はより完全になるよう請求先住所の収集を試みます。たとえば、カード発行会社の国がわかっている場合は、それを請求先詳細の郵便番号と組み合わせます。

### Tax API

Tax API の場合、住所階層は簡略化されたアプローチに従います。

- API リクエストで指定された住所は、税額計算に直接使用されます。
- 配送先住所、請求先住所、支払い方法、IP アドレスなど、他の住所ソースへのフォールバックはありません。

> Tax API を使用する場合は、API リクエストで有効かつ完全な住所を指定する必要があり、そうしないとエラーが返されます。国と、該当する場合は郵便番号と都道府県を含めます。

## 最小限の住所収集

請求先住所と配送先住所にはそれぞれ、`line1`、`line2`、`city`、`state`、`postal_code`、`country` のフィールドがあります。`country` は [2 文字の ISO 3166-1 コード](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)である必要があります。

#### アメリカ

| 住所のサンプル | 説明 | サポート対象 |
| --- | --- | --- |
| - `line1`: 27 Fredrick Ave
- `city`: Brothers
- `state`: OR
- `postal_code`: 97712
- `country`: US | **完全な住所**

完全な住所には最低でも line1 (番地または私書箱)、市区町村、郵便番号、国が含まれます。

この住所は、アメリカ郵政公社の住所データベースで最も近い住所または街区と照合されます。一致するものが見つからない場合は、5 桁の郵便番号の地理的な中央位置 (住所の平均的な場所) がフォールバックとして使用されます。 | ✓ サポート対象 |
| 9 桁の郵便番号:

- `postal_code`: 97712-4918
- `country`: US

5 桁の郵便番号:

- `postal_code`: 97712
- `country`: US | **国と郵便番号**

5 桁または 9 桁の郵便番号を指定すると、Stripe のシステムでは最初の 5 桁のみが税金の計算に使用されます。税金は地理的な中央位置で計算され、5 桁の郵便番号区域内の住所の平均的な場所が反映されます。これが[お客様の事業に適している](https://docs.stripe.com/tax/customer-locations.md#us-postal-codes)かどうかをご確認ください。 | ✓ サポート対象 |
| - `state`: OR
- `country`: US | **国と州**

Stripe は、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と[州コード](https://en.wikipedia.org/wiki/ISO_3166-2)のみを使用してアメリカの顧客の税金を計算することはできません。 | ✗ サポート対象外 |
| - `country`: US | **国**

Stripe は、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)のみを使用してアメリカの顧客の税金を計算することはできません。 | ✗ サポート対象外 |

#### カナダ

| 住所のサンプル | 説明 | サポート対象 |
| --- | --- | --- |
| - `line1`: 1 Rocky Road
- `city`: Vancouver
- `province`: BC
- `postal_code`: V1X 1X1
- `country`: CA | **完全な住所**

完全な住所には最低でも line1 (番地)、都市名、州、国が含まれます。

Stripe では、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)および州から税金を計算します。その他のフィールドは、税金の計算には使用されません。 | ✓ サポート対象 |
| 6 桁の郵便番号:

- `postal_code`: V1X 1X1
- `country`: CA | **国と郵便番号**

Stripe では、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)、および郵便番号から判断できる州を基に税金を計算します。 | ✓ サポート対象 |
| - `province`: BC
- `country`: CA | **国と州**

Stripe は [ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)および州から、カナダの顧客に対する税金を計算します。 | ✓ サポート対象 |
| - `country`: CA | **国**

Stripe は、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)のみを使用してカナダの顧客の税金を計算することはできません。 | ✗ サポート対象外 |

#### インド

| 住所のサンプル | 説明 | サポート対象 |
| --- | --- | --- |
| - `line1`:Rafi Marg, 118
- `city`:デリー
- `province`:デリー首都直轄地域 (NCT) (連邦直轄領)
- `postal_code`:110001
- `country`:IN | **完全な住所**

完全な住所には最低でも line1 (番地)、都市名、州、国が含まれます。

Stripe では、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と、郵便番号または州名から税金を計算します。 | ✓ サポート対象 |
| 6 桁の郵便番号:

- `postal_code`:110001
- `country`:IN | **国と郵便番号**

Stripe では、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と、郵便番号または州名から税金を計算します。 | ✓ サポート対象 |
| - `province`:デリー首都直轄地域 (NCT) (連邦直轄領)
- `country`:IN | **国と州**

Stripe では、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と、郵便番号または州名から税金を計算します。 | ✓ サポート対象 |
| - `country`:IN | **国**

インドの顧客の税金は、[ISO 国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)のみでは計算できません。 | ✗ サポート対象外 |

#### その他の場所

| 住所のサンプル | 説明 | サポート対象 |
| --- | --- | --- |
| - `line1`: 1 Grand Canal St
- `city`: Dublin
- `postal_code`: D02 H210
- `country`: IE | **完全な住所**

完全な住所に含まれるフィールドは国によって異なりますが、通常は line1 (番地)、市区町村、郵便番号、国が含まれます。

Stripe では、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と、[州コード](https://en.wikipedia.org/wiki/ISO_3166-2)または郵便番号 (提供された場合) から税金を計算します。その他のフィールドは、税金の計算には使用されません。 | ✓ サポート対象 |
| - `postal_code`: 51001
- `country`: ES | **国と郵便番号**

Stripe では、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)から税金を計算し、郵便番号を使用して顧客が[適用除外地域](https://docs.stripe.com/tax/customer-locations.md#europe-excluded-territories)に所在するかどうかを判断します。 | ✓ サポート対象 |
| - `state`: CE
- `country`: ES | **国と州**

Stripe では、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)と[州コード](https://en.wikipedia.org/wiki/ISO_3166-2)から税金を計算します。Stripe では、州コードを使用して顧客が[適用除外地域](https://docs.stripe.com/tax/customer-locations.md#europe-excluded-territories)にいるかどうかを判断します。 | ✓ サポート対象 |
| - `country`: ES | **国**

Stripe では、ISO [国コード](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)から税金を計算します。顧客が[適用除外地域](https://docs.stripe.com/tax/customer-locations.md#europe-excluded-territories)にいる場合には、国の税率を支払います。 | ✓ サポート対象 |

上記のいずれかの住所形式を使用し、顧客の住所が一貫して認識されるようにしてください。

## 地域的な考慮事項

### アメリカ

アメリカでは、売上税の規則と税率は州によって異なり、州によっては数百の区域で独自の税率が設定されています。完全な住所 ([line1](https://docs.stripe.com/api/customers/object.md#customer_object-address-line1)、[city](https://docs.stripe.com/api/customers/object.md#customer_object-address-city)、[state](https://docs.stripe.com/api/customers/object.md#customer_object-address-state) を含む) をアメリカの顧客から収集することをお勧めします。

#### IP アドレスの精度

ほとんどの場合、Stripe では IP アドレスを物理的な地域に解決できますが、その精度はさまざまで、顧客の実際の場所を反映しないことがあります。アメリカでは地方税が課されるため、顧客の住所を判別するために IP アドレスを使用することはお勧めしません。

#### 正確な住所検索

Stripe Tax は、アメリカの顧客の住所についてルーフトップレベルの精度の住所検索に対応しているため、特定の家屋または建物まで顧客の場所を正確に特定できます。アメリカでは複雑な管轄区域の境界が原因で同じ通りに税率の異なる 2 つの家屋が並んでいる場合がありますが、この方法なら検索精度が向上します。

アメリカ以外の住所の場合、Stripe は、納税義務を判断するために、国、州、郵便番号のフィールドを使用しますが、包括的な住所データベースと比較しません。州と郵便番号が使用される状況について詳しくは、「[特別な管轄区域および除外対象地域](https://docs.stripe.com/tax/zero-tax.md#excluded-territories)」をご覧ください。

> 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 がサポートする[除外対象地域のリスト](https://docs.stripe.com/tax/zero-tax.md#excluded-territories)をご覧ください。

## 顧客の住所収集のベストプラクティス

> #### 保存前に住所を検証する
> 
> [住所解決 API](https://docs.stripe.com/tax/address-resolution.md) を使用すると、Stripe Tax が住所に適用される税率をどの程度正確に判断できるか、また精度を高めるためにどのフィールドを収集すべきかを確認できます。

### Checkout と Payment Links

Checkout は、Payment Links で作成されたものを含め、顧客の住所の収集を処理します。

### 請求処理、 サブスクリプション、およびカスタムの支払いの組み込み

Payment Links または Checkout を使用していない場合、顧客の住所の収集はユーザー側で行う必要があります。

#### Customer v1

- `顧客`の[country](https://docs.stripe.com/api/customers/object.md#customer_object-address-country) および [postal_code](https://docs.stripe.com/api/customers/object.md#customer_object-address-postal_code) フィールド双方の情報を収集して入力します。
- `顧客`を作成または更新する際、[tax.validate_location](https://docs.stripe.com/api/customers/create.md#create_customer-tax-validate_location) を `immediately` に設定してください。これにより [customer_tax_location_invalid](https://docs.stripe.com/error-codes.md#customer-tax-location-invalid) エラーの発生を防ぐことができます。

- 2 文字の国コード ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)) を使用します。
- ほとんどのアクティビティーは非同期で発生するため、[サブスクリプションの Webhook イベント](https://docs.stripe.com/billing/subscriptions/webhooks.md)をリッスンします。

## 請求書確定エラーを処理する

Stripe Tax を利用して請求書を確定するには、認識済みの顧客の所在地情報が必要です。顧客の初期設定の決済手段を更新したり削除したりした場合、または`顧客`の作成・更新時に `tax[validate_location]="immediately"` を指定しなかった場合、所在地の詳細が失われたり無効になったりする場合があります。

顧客の所在地を確認していない場合、`サブスクリプション`の請求書は引き続き[自動で確定](https://docs.stripe.com/invoicing/integration/automatic-advancement-collection.md)されますが、税金は計算されません。これにより次のような影響があります。

- [Subscription (サブスクリプション)](https://docs.stripe.com/api/subscriptions/object.md#subscription_object-automatic_tax-enabled) と [Invoice (請求書)](https://docs.stripe.com/api/invoices/object.md#invoice_object-automatic_tax-enabled) の `automatic_tax[enabled]` パラメーターが `false` に変わります。
- `Invoice[automatic_tax][disabled_reason]` パラメーターが `finalization_requires_location_inputs` に変わります。
- `Subscription[automatic_tax][disabled_reason]` が `requires_location_inputs` に変わります。
- `サブスクリプション`の[スケジュール](https://docs.stripe.com/billing/subscriptions/subscription-schedules.md)が設定されている場合、Stripe は現段階および `default_settings` においては `automatic_tax[enabled]` を `false` に設定します。`requires_location_inputs` 双方については `disabled_reason` を設定します。
- `invoice.updated` と `customer.subscription.updated` [イベント](https://docs.stripe.com/billing/subscriptions/webhooks.md#events)を送信して、これらの変更をシステムに通知します。
  - スケジュールが設定されている場合、`subscription_schedule.updated` Webhook も送信されます。
- `請求書`は税金の計算や徴収を行わずに確定されます。税額は記載されません。
- Stripe は `請求書`の[回収方法](https://docs.stripe.com/billing/collection-method.md)に従い、通常どおり決済を行います。

Stripe ダッシュボードで税金の自動計算が設定されていないサブスクリプションを確認するには、Subscription ページにアクセスし、**税金の自動計算が無効**のオプションで表示を絞り込みます。今後これらのサブスクリプションの自動税金計算を有効にするには、有効な顧客の場所が少なくとも 1 つあることを確認し、[Stripe Tax ダッシュボード](https://dashboard.stripe.com/tax/migrations)で税金の自動計算を有効にします。

### 税金が自動的に無効になる例外

顧客の有効な所在地が指定されずに [API](https://docs.stripe.com/api/invoices/finalize.md) やダッシュボードで請求書が確定された場合、Stripe はエラーを返し、その`請求書`を`下書き`の状態で維持します。API では、`customer_tax_location_invalid` の `コード`を持つ HTTP 400 エラーが返されます。

同様に、`サブスクリプション`が含まれない単発の請求書を自動確定する際にも、顧客の所在地が有効でない場合、その`請求書`は下書きの状態で維持されます。`請求書`の [last_finalization_error[code]](https://docs.stripe.com/api/invoices/object.md#invoice_object-last_finalization_error-code) が `customer_tax_location_invalid` である場合、[invoice.finalization_failed](https://docs.stripe.com/api/events/types.md#event_types-invoice.finalization_failed) イベントが送信されます。

`customer_tax_location_invalid` エラーの解消方法は、 `顧客`の住所をすでに保持しているか、あるいは新たに収集可能かによって異なります。

 `顧客`の住所をすでに保持している場合、あるいは新たに収集可能な場合は、 `顧客`情報を更新し、手動で`請求書`を確定してください。

#### Customer v1

1. 新しい住所が有効であることを確認するために、[tax.validate_location](https://docs.stripe.com/api/customers/create.md#create_customer-tax-validate_location) を `immediately` に更新してください。
2. `請求書`を[確定](https://docs.stripe.com/api/invoices/finalize.md)します。

顧客の住所がわからない場合、または収集できない場合には、その`請求書`と`サブスクリプション`に対して Stripe Tax を無効にし、`請求書`を手動で確定します。

1. 影響を受ける [Invoice](https://docs.stripe.com/api/invoices/update.md#update_invoice-automatic_tax) を `automatic_tax[enabled]=false` で更新します。
2. 影響を受ける [Subscription](https://docs.stripe.com/api/subscriptions/update.md#update_subscription-automatic_tax-enabled) を `automatic_tax[enabled]=false` で更新します。
3. [Invoice](https://docs.stripe.com/api/invoices/finalize.md) を確定します。

## See also

- [税額ゼロについて](https://docs.stripe.com/tax/zero-tax.md)
- [使用できる税コード](https://docs.stripe.com/tax/tax-codes.md)
- [税金の計算方法](https://docs.stripe.com/tax/calculating.md)
