# 顧客の納税者番号を収集 Tax ID Element を使用して、PaymentIntents 実装で顧客からビジネスの納税者番号を収集します。 ## 顧客の Tax ID を収集する *請求書* (Invoices are statements of amounts owed by a customer. They track the status of payments from draft through paid or otherwise finalized. Subscriptions automatically generate invoices, or you can manually create a one-off invoice) に顧客の納税者番号と法務ビジネス名を表示することは、一般的な要件です。[納税者番号 Element](https://docs.stripe.com/elements/tax-id-element.md) を使用して、この情報を回収することができます。この機能は[公開プレビュー](https://docs.stripe.com/release-phases.md)です。 > #### 免責条項 > > Payment Intents API は事業の Tax ID を収集するように設計されています。これは、特定の管轄区域では個人の Tax ID に似た形式になる場合があります。この機能を使用する際には、このフィールドに指定された事業の Tax ID のみを提供する必要があります。 ### ベータを有効にする Payment Intents API を使用する納税者番号 Element では、`elements_tax_id_1` ベータを有効にする必要があります。Stripe.js の初期化にベータを追加します。 ```javascript const stripe = Stripe('<>', { betas: ['elements_tax_id_1'], }); ``` ### CustomerSession を作成する (オプション) 税務 ID を保存してリピーターの顧客に再表示するには、[CustomerSession](https://docs.stripe.com/api/customer_sessions.md) を作成します。これにより、シークレット API キーをクライアントに公開することなく、顧客データへの安全で一時的なアクセスを提供します。 `CustomerSession` を使用しなくても、納税者番号 Element は機能しますが、保存と再表示の機能はありません。[getValue](https://docs.stripe.com/js/elements_object/get_value_tax_id_element) を使用して、納税者番号の値を Element から読み取り、手動で処理できます。 #### Customer v1 *Customer* (Customer objects represent customers of your business. They let you reuse payment methods and give you the ability to track multiple payments) を作成または取得します。 ```curl curl https://api.stripe.com/v1/customers \ -u "<>:" \ --data-urlencode "email=customer@example.com" \ -d "name=Jenny Rosen" ``` 納税者番号 Element コンポーネントを有効にして `CustomerSession` を作成します。 ```curl curl https://api.stripe.com/v1/customer_sessions \ -u "<>:" \ -H "Stripe-Version: 2026-04-22.preview" \ -d "customer={{CUSTOMER_ID}}" \ -d "components[tax_id_element][enabled]=true" \ -d "components[tax_id_element][features][tax_id_redisplay]=enabled" \ -d "components[tax_id_element][features][tax_id_save]=enabled" ``` `CustomerSession` は `client_secret` を返します。これをクライアント側に渡します。 ### PaymentIntent または SetupIntent を作成する サーバーで [PaymentIntent](https://docs.stripe.com/api/payment_intents.md) または [SetupIntent](https://docs.stripe.com/api/setup_intents.md) を作成します。`CustomerSession` を使用する場合は、税務 ID の保存および再表示機能を有効にするために、顧客参照パラメータを含めてください。 #### Customer v1 ```curl curl https://api.stripe.com/v1/payment_intents \ -u "<>:" \ -d amount=1099 \ -d currency=usd \ -d "customer={{CUSTOMER_ID}}" ``` > PaymentIntent または SetupIntent を作成する際に、税務 ID 固有のパラメータを含める必要はありません。Tax ID Element は、適切な権限を持つ CustomerSession を使用する場合、税務 ID の収集を自動的に処理し、*Customer* (Customer objects represent customers of your business. They let you reuse payment methods and give you the ability to track multiple payments) に保存します。 ### Elements を初期化 PaymentIntent または SetupIntent の `clientSecret` を使用して Elements インスタンスを作成します。 顧客に納税者番号を保存し、リピート顧客に再表示できるようにするには、`customerSessionClientSecret` を含めます。 ```javascript const stripe = Stripe('<>', { betas: ['elements_tax_id_1'], }); // Fetch the clientSecret from your server const {clientSecret} = await fetch('/create-payment-intent', { method: 'POST', headers: { 'Content-Type': 'application/json' }, }).then((res) => res.json()); // Fetch the customerSessionClientSecret from your server const {customerSessionClientSecret} = await fetch('/create-customer-session', { method: 'POST', headers: { 'Content-Type': 'application/json' }, }).then((res) => res.json()); const elements = stripe.elements({ clientSecret,customerSessionClientSecret, appearance: { /* ... */ } }); ``` ### 納税者番号 Element の作成とマウント 納税者番号 Element のインスタンスを作成し、ページにマウントします。 ```html
``` ```javascript const taxIdElement = elements.create('taxId', { visibility: 'auto', // 'auto' | 'always' | 'never' }); taxIdElement.mount('#tax-id-element'); ``` 納税者番号 Element は `visibility`、`fields`、`validation` などのオプションを使用してカスタマイズできます。詳細については、[納税者番号 Element の作成](https://docs.stripe.com/js/elements_object/create_tax_id_element)を参照してください。 ### Address Element とともに使用する (オプション) 納税者番号 Element を [Address Element](https://docs.stripe.com/elements/address-element.md) とともに使用すると、Stripe は顧客の住所に基づいて納税者番号の種類と Element の表示範囲を自動的に判別します。 ### 支払いを完了する 顧客が支払いフォームを送信したら、[confirmPayment](https://docs.stripe.com/js/payment_intents/confirm_payment) または [confirmSetup](https://docs.stripe.com/js/setup_intents/confirm_setup) を呼び出します。Stripe は納税者番号情報を自動的に含め、支払いが成功すると顧客に保存します。 ```javascript const form = document.getElementById('payment-form'); form.addEventListener('submit', async (event) => { event.preventDefault(); const {error} = await stripe.confirmPayment({ elements, confirmParams: { return_url: 'https://example.com/order/complete', }, }); if (error) { // Handle error console.error(error.message); } // Customer gets redirected to return_url if successful }); ``` また、クライアント側で [getValue](https://docs.stripe.com/js/elements_object/get_value_tax_id_element) を使用して、支払いを送信する前に納税者番号の値を読み取ることもできます。 ### 実装内容をテストする テスト環境では、サポートされている納税者番号タイプの正しい形式で英数字の文字列を入力できます (`eu_vat` の場合は `DE123456789` など)。納税者番号のサンプルの一覧については、Stripe の[顧客の納税者番号に関するガイド](https://docs.stripe.com/billing/customer/tax-ids.md#supported-tax-id)をご覧ください。また、[テスト用納税者番号](https://docs.stripe.com/connect/testing.md#test-business-tax-ids)を使用して、さまざまな確認ステータスのフローをテストすることもできます。 ### 非同期の納税者番号の検証 決済または設定の確認時に、Stripe は指定された納税者番号の形式が正しいことを確認しますが、有効かどうかは確認しません。顧客情報の有効性を確認する責任はお客様にあります。これを支援するため、Stripe は[オーストラリア事業者登録番号 (ABN)](https://docs.stripe.com/tax/invoicing/tax-ids.md#australian-business-numbers-abn)、[欧州付加価値税 (EU VAT)](https://docs.stripe.com/tax/invoicing/tax-ids.md#european-value-added-tax-eu-vat-numbers)、および[イギリス付加価値税 (GB VAT)](https://docs.stripe.com/tax/invoicing/tax-ids.md#united-kingdom-value-added-tax-gb-vat-numbers) の番号を政府のデータベースに対して非同期で自動的に照合します。Stripe が[実施する検証](https://docs.stripe.com/tax/invoicing/tax-ids.md#validation)と、これらのチェックのステータスの使用方法の詳細をご確認ください。 ### リアルタイムの納税者番号の検証 (Preview) 上記の非同期の検証に加えて、納税者番号 Element で直接、同期的でリアルタイムの納税者番号検証を有効にすることもできます。有効にすると、Stripe は顧客の入力に応じて政府のデータベースと照合して納税者番号を確認し、支払いを送信する前に結果をインラインで表示します。Stripe は現在、[オーストラリア事業者登録番号 (ABN)](https://docs.stripe.com/tax/invoicing/tax-ids.md#australian-business-numbers-abn)、[ヨーロッパの付加価値税 (EU VAT)](https://docs.stripe.com/tax/invoicing/tax-ids.md#european-value-added-tax-eu-vat-numbers)、[イギリスの付加価値税 (GB VAT)](https://docs.stripe.com/tax/invoicing/tax-ids.md#united-kingdom-value-added-tax-gb-vat-numbers) 番号のリアルタイム検証をサポートしています。政府のデータベースが利用できない場合、Stripe はまず同期形式の検証を行い、完全な検証は後で非同期で実施されます。この機能は [公開プレビュー](https://docs.stripe.com/release-phases.md) であり、`elements_tax_id_verification_1` ベータが必要です。 ```javascript const taxIdElement = elements.create('taxId', { ... verification: { taxId: { mode: 'if_supported', }, }, }); ``` 確認を有効にすると、`change` イベントには `verification.taxId.status` フィールドが含まれるようになります。この値は、`pending`、`verified`、`unverified`、または `unavailable` のいずれかになります。要素の `complete` ステータスには確認結果が反映されます。詳細については、[納税者番号 Element の作成](https://docs.stripe.com/js/elements_object/create_tax_id_element#tax_id_element_create-options-verification)と[納税者番号 Element の変更時](https://docs.stripe.com/js/element/events/on_change?type=taxIdElement#element_on_change-handler-verification) を参照してください。 ### サポートされる納税番号の種類 納税者番号 Element は、次の国と地域での納税者番号回収をサポートしています。 | Country | Enum | Description | Example | Impact in Tax Calculation* | | ------- | ---------- | --------------------------------------------------------------------------- | -------------------- | -------------------------- | | AE | ae_trn | United Arab Emirates TRN | 123456789012345 | Yes | | AL | al_tin | Albania Tax Identification Number | J12345678N | Yes | | AM | am_tin | Armenia Tax Identification Number | 02538904 | Yes | | AO | ao_tin | Angola Tax Identification Number | 5123456789 | No | | AT | eu_vat | European VAT number | ATU12345678 | Yes | | AU | au_abn | Australian Business Number (AU ABN) | 12345678912 | Yes | | AW | aw_tin | Aruba Tax Identification Number | 12345678 | Yes | | AZ | az_tin | Azerbaijan Tax Identification Number | 0123456789 | Yes | | BA | ba_tin | Bosnia and Herzegovina Tax Identification Number | 123456789012 | Yes | | BB | bb_tin | Barbados Tax Identification Number | 1123456789012 | No | | BD | bd_bin | Bangladesh Business Identification Number | 123456789-0123 | Yes | | BE | eu_vat | European VAT number | BE0123456789 | Yes | | BF | bf_ifu | Burkina Faso Tax Identification Number (Numéro d'Identifiant Fiscal Unique) | 12345678A | Yes | | BG | eu_vat | European VAT number | BG0123456789 | Yes | | BH | bh_vat | Bahraini VAT Number | 123456789012345 | Yes | | BJ | bj_ifu | Benin Tax Identification Number (Identifiant Fiscal Unique) | 1234567890123 | Yes | | BS | bs_tin | Bahamas Tax Identification Number | 123.456.789 | No | | BY | by_tin | Belarus TIN Number | 123456789 | Yes | | CA | ca_bn | Canadian BN | 123456789 | No | | CA | ca_gst_hst | Canadian GST/HST number | 123456789RT0002 | Yes | | CA | ca_pst_bc | Canadian PST number (British Columbia) | PST-1234-5678 | No | | CA | ca_pst_mb | Canadian PST number (Manitoba) | 123456-7 | No | | CA | ca_pst_sk | Canadian PST number (Saskatchewan) | 1234567 | No | | CA | ca_qst | Canadian QST number (Québec) | 1234567890TQ1234 | Yes | | CD | cd_nif | Congo (DR) Tax Identification Number (Número de Identificação Fiscal) | A0123456M | No | | CH | ch_vat | Switzerland VAT number | CHE-123.456.789 MWST | Yes | | CL | cl_tin | Chilean TIN | 12.345.678-K | Yes | | CM | cm_niu | Cameroon Tax Identification Number (Numéro d'Identifiant fiscal Unique) | M123456789000L | No | | CR | cr_tin | Costa Rican tax ID | 1-234-567890 | No | | CV | cv_nif | Cape Verde Tax Identification Number (Número de Identificação Fiscal) | 213456789 | No | | CY | eu_vat | European VAT number | CY12345678Z | Yes | | CZ | eu_vat | European VAT number | CZ1234567890 | Yes | | DE | eu_vat | European VAT number | DE123456789 | Yes | | DK | eu_vat | European VAT number | DK12345678 | Yes | | EC | ec_ruc | Ecuadorian RUC number | 1234567890001 | No | | EE | eu_vat | European VAT number | EE123456789 | Yes | | EG | eg_tin | Egyptian Tax Identification Number | 123456789 | Yes | | ES | es_cif | Spanish NIF number (previously Spanish CIF number) | A12345678 | No | | ES | eu_vat | European VAT number | ESA1234567Z | Yes | | ET | et_tin | Ethiopia Tax Identification Number | 1234567890 | Yes | | FI | eu_vat | European VAT number | FI12345678 | Yes | | FR | eu_vat | European VAT number | FRAB123456789 | Yes | | GB | eu_vat | Northern Ireland VAT number | XI123456789 | Yes | | GB | gb_vat | United Kingdom VAT number | GB123456789 | Yes | | GE | ge_vat | Georgian VAT | 123456789 | Yes | | GN | gn_nif | Guinea Tax Identification Number (Número de Identificação Fiscal) | 123456789 | Yes | | GR | eu_vat | European VAT number | EL123456789 | Yes | | HR | eu_vat | European VAT number | HR12345678912 | Yes | | HU | eu_vat | European VAT number | HU12345678 | Yes | | HU | hu_tin | Hungary tax number (adószám) | 12345678-1-23 | No | | IE | eu_vat | European VAT number | IE1234567AB | Yes | | IN | in_gst | Indian GST number | 12ABCDE3456FGZH | Yes | | IS | is_vat | Icelandic VAT | 123456 | Yes | | IT | eu_vat | European VAT number | IT12345678912 | Yes | | KE | ke_pin | Kenya Revenue Authority Personal Identification Number | P000111111A | No | | KG | kg_tin | Kyrgyzstan Tax Identification Number | 12345678901234 | No | | KH | kh_tin | Cambodia Tax Identification Number | 1001-123456789 | Yes | | KR | kr_brn | Korean BRN | 123-45-67890 | Yes | | KZ | kz_bin | Kazakhstani Business Identification Number | 123456789012 | Yes | | LA | la_tin | Laos Tax Identification Number | 123456789-000 | No | | LI | li_vat | Liechtensteinian VAT number | 12345 | Yes | | LK | lk_vat | Sri Lanka VAT number | 123456789-1234 | Yes | | LT | eu_vat | European VAT number | LT123456789123 | Yes | | LU | eu_vat | European VAT number | LU12345678 | Yes | | LV | eu_vat | European VAT number | LV12345678912 | Yes | | MA | ma_vat | Morocco VAT Number | 12345678 | Yes | | MD | md_vat | Moldova VAT Number | 1234567 | Yes | | ME | me_pib | Montenegro PIB Number | 12345678 | No | | MK | mk_vat | North Macedonia VAT Number | MK1234567890123 | Yes | | MR | mr_nif | Mauritania Tax Identification Number (Número de Identificação Fiscal) | 12345678 | No | | MT | eu_vat | European VAT number | MT12345678 | Yes | | MX | mx_rfc | Mexican RFC number | ABC010203AB9 | No | | NG | ng_tin | Nigerian Tax Identification Number | 12345678-0001 | No | | NL | eu_vat | European VAT number | NL123456789B12 | Yes | | NO | no_vat | Norwegian VAT number | 123456789MVA | Yes | | NP | np_pan | Nepal PAN Number | 123456789 | Yes | | NZ | nz_gst | New Zealand GST number | 123456789 | Yes | | OM | om_vat | Omani VAT Number | OM1234567890 | Yes | | PE | pe_ruc | Peruvian RUC number | 12345678901 | Yes | | PH | ph_tin | Philippines Tax Identification Number | 123456789012 | Yes | | PL | eu_vat | European VAT number | PL1234567890 | Yes | | PL | pl_nip | Polish NIP number | 1234567890 | No | | PT | eu_vat | European VAT number | PT123456789 | Yes | | RO | eu_vat | European VAT number | RO1234567891 | Yes | | RS | rs_pib | Serbian PIB number | 123456789 | No | | RU | ru_inn | Russian INN | 1234567891 | Yes | | RU | ru_kpp | Russian KPP | 123456789 | Yes | | SA | sa_vat | Saudi Arabia VAT | 123456789012345 | Yes | | SE | eu_vat | European VAT number | SE123456789123 | Yes | | SG | sg_gst | Singaporean GST | M12345678X | Yes | | SI | eu_vat | European VAT number | SI12345678 | Yes | | SK | eu_vat | European VAT number | SK1234567891 | Yes | | SN | sn_ninea | Senegal NINEA Number | 12345672A2 | No | | SR | sr_fin | Suriname FIN Number | 1234567890 | Yes | | TH | th_vat | Thai VAT | 1234567891234 | Yes | | TJ | tj_tin | Tajikistan Tax Identification Number | 123456789 | Yes | | TR | tr_tin | Turkish Tax Identification Number | 0123456789 | Yes | | TW | tw_vat | Taiwanese VAT | 12345678 | Yes | | TZ | tz_vat | Tanzania VAT Number | 12345678A | Yes | | UA | ua_vat | Ukrainian VAT | 123456789 | Yes | | UG | ug_tin | Uganda Tax Identification Number | 1014751879 | Yes | | UY | uy_ruc | Uruguayan RUC number | 123456789012 | Yes | | UZ | uz_tin | Uzbekistan TIN Number | 123456789 | No | | UZ | uz_vat | Uzbekistan VAT Number | 123456789012 | Yes | | ZA | za_vat | South African VAT number | 4123456789 | Yes | | ZM | zm_tin | Zambia Tax Identification Number | 1004751879 | No | | ZW | zw_tin | Zimbabwe Tax Identification Number | 1234567890 | No | \*Stripe Tax won't apply tax if this tax ID is provided, in line with the relevant laws. ### 計算に ID を使用する (オプション) 国外へのサービスの提供など、顧客に[リバースチャージ](https://docs.stripe.com/tax/zero-tax.md#reverse-charges)に基づく税金の必要が生じる場合があります。税金を回収せず、代わりに「リバースチャージで支払われる税金」という文言を指定して請求書を発行する必要があります。 顧客の[納税者番号](https://docs.stripe.com/api/tax/calculations/create.md#calculate_tax-customer_details-tax_ids)をStripe Tax に提供すると、リバースチャージが適用される状況が自動的に判別されます。 ```curl curl https://api.stripe.com/v1/tax/calculations \ -u "<>:" \ -d currency=usd \ -d "line_items[0][amount]=1000" \ -d "line_items[0][reference]=L1" \ -d "customer_details[address][country]=IE" \ -d "customer_details[address_source]=billing" \ -d "customer_details[tax_ids][0][type]=eu_vat" \ -d "customer_details[tax_ids][0][value]=DE123456789" ``` 無効な形式の納税者番号を指定すると、計算で `tax_id_invalid` エラーコードが返されます。 ## See also - [PaymentIntents を使用した Stripe Tax](https://docs.stripe.com/tax/payment-intent.md) - [顧客の納税者番号の検証](https://docs.stripe.com/billing/customer/tax-ids.md) - [リバースチャージ](https://docs.stripe.com/tax/zero-tax.md#reverse-charges)