# Collecter les numéros fiscaux des clients avec Checkout Découvrez comment collecter les numéros de TVA et autres numéros fiscaux des clients avec Checkout. # Page hébergée > This is a Page hébergée for when payment-ui is stripe-hosted. View the full page at https://docs.stripe.com/tax/checkout/tax-ids?payment-ui=stripe-hosted. L’affichage du numéro fiscal et de la dénomination sociale de l’entreprise d’un client sur les *factures* (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) et le traitement des remboursements de TVA sont des exigences courantes auxquelles vous pouvez répondre en activant la collecte du numéro fiscal dans Checkout. Dans ce guide, nous partons du principe que vous avez déjà intégré Checkout. Si ce n’est pas le cas, consultez le [guide Accepter un paiement](https://docs.stripe.com/payments/accept-a-payment.md). ## Activer la collecte du numéro fiscal Lorsque la collecte des numéros fiscaux est activée, Checkout affiche ou masque le formulaire de recueil du numéro fiscal en fonction de la localisation de votre client. Si la collecte du numéro fiscal est prise en charge dans le pays où se trouve votre client, Checkout affiche une case à cocher permettant au client d’indiquer s’il est une entreprise. Quand la case est cochée, Checkout affiche des champs supplémentaires pour la saisie du numéro fiscal et de la dénomination sociale de l’entreprise. Checkout détermine la localisation du client à l’aide de son adresse de livraison lorsqu’elle est disponible. Sinon, la localisation est basée sur l’adresse de facturation du client. Chaque client ne peut saisir qu’un seul numéro fiscal. ### Nouveaux clients Pour activer le recueil de numéros fiscaux pour les nouveaux clients, définissez le paramètre [tax_id_collection[enabled]](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-tax_id_collection-enabled) sur `true` lors de la création d’une session Checkout. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` Cet exemple crée une session en mode `payment` avec collecte des numéros fiscaux activée. Pour les abonnements, faites les mêmes changements avec le [mode](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-mode) défini sur `subscription`. Vous pouvez également configurer Checkout afin de créer un nouvel [Client](https://docs.stripe.com/api/customers/object.md) à l’aide de [customer_creation](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_creation). Si vous le faites, Checkout enregistre toute information relative au numéro fiscal collecté pendant une session sur ce nouvel client Dans le cas contraire, les informations relatives au numéro fiscal restent disponibles à l’emplacement [customer_details.tax_ids](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-customer_details-tax_ids). ### Clients existants #### Customer v1 Si vous transmettez un objet Customer existant lors de la création d’une session, Checkout met à jour cet objet Customer en remplaçant les informations fiscales existantes par celles qui sont recueillies lors de la session. Checkout enregistre la dénomination sociale recueillie sous la propriété [nom](https://docs.stripe.com/api/customers/object.md#customer_object-name) et le numéro fiscal recueilli dans le tableau [customer.tax_ids](https://docs.stripe.com/api/customers/object.md#customer_object-tax_ids) de l’objet Customer. Puisque la collecte de la dénomination sociale peut effacer le [nom](https://docs.stripe.com/api/customers/object.md#customer_object-name) existant de l’objet Customer, vous devez définir le paramètre [customer_update.name](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-name) sur `auto` lors de la création de la session. > Checkout collecte uniquement les numéros fiscaux des objets Customer qui n’en disposent pas encore. Si un objet Customer est déjà associé à un ou plusieurs numéros fiscaux, Checkout n’affichera pas le formulaire de collecte du numéro fiscal, même si la collecte du numéro fiscal est activée. Lorsque vous collectez des numéros fiscaux de clients existants, vous pouvez baser leur localisation sur les adresses existantes de ces clients ou sur les adresses saisies lors du règlement. Checkout recherche par défaut l’adresse existante des clients pour déterminer leur localisation : ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` Si les adresses de vos clients existants ne sont pas enregistrées, vous pouvez baser leur localisation sur l’adresse de facturation ou de livraison saisie lors du règlement. Pour indiquer que vous souhaitez déterminer la localisation du client à l’aide de l’adresse de facturation saisie lors du règlement, vous devez définir le paramètre [customer_update.address](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-address) sur `auto`. Lorsque [customer_update.address](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-address) est réglé sur `auto`, Checkout remplace toutes les adresses précédemment enregistrées sur le client par l’adresse saisie pendant la session. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d "customer_update[address]=auto" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` Si vous recueillez les adresses de livraison de clients existants, vous devez baser leur localisation sur l’adresse de livraison saisie lors du règlement. Pour ce faire, définissez le paramètre [customer_update.shipping](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-shipping) sur `auto`. Lorsque [customer_update.shipping](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-shipping) est réglé sur `auto`, Checkout remplace toutes les adresses de livraison précédemment enregistrées sur le client par l’adresse de livraison saisie lors de la session. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d "customer_update[shipping]=auto" \ -d "shipping_address_collection[allowed_countries][0]=DE" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` L’exemple de code ci-dessus crée une session en mode `payment` avec la collecte du numéro fiscal activée. Pour les abonnements, effectuez les mêmes modifications en définissant le [mode](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-mode) sur `subscription`. ## Optional: Exiger la collecte du numéro fiscal Vous pouvez éventuellement configurer Checkout pour qu’il exige la collecte des numéros fiscaux en définissant le paramètre [tax_id_collection[required]](https://docs.stripe.com/api/.md#create_checkout_session-tax_id_collection-required). Lorsqu’il est défini sur `if_supported`, Checkout exigera des informations sur le numéro fiscal pour le paiement des clients dans les [pays de facturation pris en charge](https://docs.stripe.com/tax/checkout/tax-ids.md#supported-types). ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "tax_id_collection[required]=if_supported" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` ## Récupérer le numéro fiscal d'un client après une session Checkout inclut les numéros fiscaux fournis dans l’objet [Session](https://docs.stripe.com/api/checkout/sessions/object.md) correspondant. Lorsqu’une session est finalisée, Checkout génère un événement [checkout.session.completed](https://docs.stripe.com/api/events/types.md#event_types-checkout.session.completed) que vous pouvez écouter à l’aide d’un endpoint de *webhook* (A webhook is a real-time push notification sent to your application as a JSON payload through HTTPS requests). Si vous souhaitez récupérer le numéro fiscal collecté par un objet Session, vous pouvez le trouver dans le tableau [customer_details.tax_ids](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-customer_details-tax_ids) de la session : ```json { "object": { "id": "cs_test_a1dJwt0TCJTBsDkbK7RcoyJ91vJxe2Y", "object": "checkout.session", ... "customer": {{CUSTOMER_ID}}, "customer_details": { ..."tax_ids": [ { "type": "eu_vat", "value": "FRAB123456789" } ] }, ..."tax_id_collection": { "enabled": true }, ... } } ``` Checkout enregistre les numéros fiscaux et le nom de l’entreprise collectés sur l’objet [Customer](https://docs.stripe.com/api/customers/object.md) lorsque vous associez la Session Checkout à un client. Checkout enregistre un numéro fiscal collecté dans le tableau [customer.tax_ids](https://docs.stripe.com/api/customers/object.md#customer_object-tax_ids) du client. Vous pouvez récupérer tous les numéros fiscaux enregistrés sur un client à l’aide de la ressource [Tax IDs](https://docs.stripe.com/api/tax_ids/list.md) en définissant [owner.type](https://docs.stripe.com/api/tax_ids/list.md#list_tax_ids-owner-type) sur `customer` et [owner.customer](https://docs.stripe.com/api/tax_ids/list.md#list_tax_ids-owner-customer) sur l’identifiant du client. Checkout enregistre le nom de l’entreprise dans les propriétés [name](https://docs.stripe.com/api/customers/object.md#customer_object-name) et [business_name](https://docs.stripe.com/api/customers/object.md#customer_object-business_name) du client. Vos factures d’abonnement affichent toujours le nom juridique de l’entreprise collecté. ## Tester votre intégration Dans les environnements de test, vous pouvez saisir n’importe quelle chaîne de caractères alphanumériques correspondant au format d’un type de numéro fiscal pris en charge (par exemple, `DE123456789` pour `eu_vat`). Vous trouverez une liste complète d’exemples de numéros fiscaux dans notre [guide sur les numéros fiscaux des clients](https://docs.stripe.com/billing/customer/tax-ids.md#supported-tax-id). Vous pouvez également utiliser nos [numéros fiscaux de test](https://docs.stripe.com/connect/testing.md#test-business-tax-ids) pour tester différents flux d’état de vérification. ## Validation Lors de la Checkout Session, Stripe vérifie que les numéros fiscaux fournis sont correctement formatés, mais pas qu’ils sont valides. C’est à vous qu’il incombe de garantir la validité des informations clients collectées lors du paiement. Pour vous aider, Stripe effectue automatiquement une validation asynchrone sur les bases de données gouvernementales pour les [Numéros d’identification australiens (ABN)](https://docs.stripe.com/tax/invoicing/tax-ids.md#australian-business-numbers-abn), la [Taxe sur la valeur ajoutée en Europe](https://docs.stripe.com/tax/invoicing/tax-ids.md#european-value-added-tax-eu-vat-numbers) (TVA UE) et la [Taxe sur la valeur ajoutée du Royaume-Uni](https://docs.stripe.com/tax/invoicing/tax-ids.md#united-kingdom-value-added-tax-gb-vat-numbers) (GB TVA). En savoir plus sur les [validations que nous effectuons](https://docs.stripe.com/tax/invoicing/tax-ids.md#validation), et l’utilisation de l’état de ces vérifications. Si vous utilisez Stripe Tax et que votre client fournit un numéro fiscal, Stripe Tax applique l’autoliquidation ou le taux zéro conformément aux lois applicables, à condition que le numéro fiscal soit conforme au format numérique nécessaire, quelle que soit sa validité. ## Types de numéros fiscaux pris en charge Checkout collecte les types de numéros fiscaux suivants dans les régions indiquées : | 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. # Page intégrée > This is a Page intégrée for when payment-ui is embedded-form. View the full page at https://docs.stripe.com/tax/checkout/tax-ids?payment-ui=embedded-form. L’affichage du numéro fiscal et de la dénomination sociale d’un client sur les *factures* (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) est une exigence courante à laquelle vous pouvez répondre en activant la collecte du numéro fiscal dans Checkout. Dans ce guide, nous partons du principe que vous avez déjà intégré Checkout. Si ce n’est pas le cas, consultez le [guide Accepter un paiement](https://docs.stripe.com/payments/accept-a-payment.md). ## Activer la collecte du numéro fiscal Lorsque la collecte des numéros fiscaux est activée, Checkout affiche ou masque le formulaire de recueil du numéro fiscal en fonction de la localisation de votre client. Si la collecte du numéro fiscal est prise en charge dans le pays où se trouve votre client, Checkout affiche une case à cocher permettant au client d’indiquer s’il est une entreprise. Quand la case est cochée, Checkout affiche des champs supplémentaires pour la saisie du numéro fiscal et de la dénomination sociale de l’entreprise. Checkout détermine la localisation du client à l’aide de son adresse de livraison lorsqu’elle est disponible. Sinon, la localisation est basée sur l’adresse de facturation du client. Chaque client ne peut saisir qu’un seul numéro fiscal. ### Nouveaux clients Pour activer le recueil de numéros fiscaux pour les nouveaux clients, définissez le paramètre [tax_id_collection[enabled]](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-tax_id_collection-enabled) sur `true` lors de la création d’une session Checkout. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` Cet exemple crée une session en mode `payment` avec collecte des numéros fiscaux activée. Pour les abonnements, faites les mêmes changements avec le [mode](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-mode) défini sur `subscription`. Vous pouvez également configurer Checkout afin de créer un nouvel [Client](https://docs.stripe.com/api/customers/object.md) à l’aide de [customer_creation](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_creation). Si vous le faites, Checkout enregistre toute information relative au numéro fiscal collecté pendant une session sur ce nouvel client Dans le cas contraire, les informations relatives au numéro fiscal restent disponibles à l’emplacement [customer_details.tax_ids](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-customer_details-tax_ids). ### Clients existants #### Customer v1 Si vous transmettez un objet Customer existant lors de la création d’une session, Checkout met à jour cet objet Customer en remplaçant les informations fiscales existantes par celles qui sont recueillies lors de la session. Checkout enregistre la dénomination sociale recueillie sous la propriété [nom](https://docs.stripe.com/api/customers/object.md#customer_object-name) et le numéro fiscal recueilli dans le tableau [customer.tax_ids](https://docs.stripe.com/api/customers/object.md#customer_object-tax_ids) de l’objet Customer. Puisque la collecte de la dénomination sociale peut effacer le [nom](https://docs.stripe.com/api/customers/object.md#customer_object-name) existant de l’objet Customer, vous devez définir le paramètre [customer_update.name](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-name) sur `auto` lors de la création de la session. > Checkout collecte uniquement les numéros fiscaux des objets Customer qui n’en disposent pas encore. Si un objet Customer est déjà associé à un ou plusieurs numéros fiscaux, Checkout n’affichera pas le formulaire de collecte du numéro fiscal, même si la collecte du numéro fiscal est activée. Lorsque vous collectez des numéros fiscaux de clients existants, vous pouvez baser leur localisation sur les adresses existantes de ces clients ou sur les adresses saisies lors du règlement. Checkout recherche par défaut l’adresse existante des clients pour déterminer leur localisation : ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` Si les adresses de vos clients existants ne sont pas enregistrées, vous pouvez baser leur localisation sur l’adresse de facturation ou de livraison saisie lors du règlement. Pour indiquer que vous souhaitez déterminer la localisation du client à l’aide de l’adresse de facturation saisie lors du règlement, vous devez définir le paramètre [customer_update.address](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-address) sur `auto`. Lorsque [customer_update.address](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-address) est réglé sur `auto`, Checkout remplace toutes les adresses précédemment enregistrées sur le client par l’adresse saisie pendant la session. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d "customer_update[address]=auto" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` Si vous recueillez les adresses de livraison de clients existants, vous devez baser leur localisation sur l’adresse de livraison saisie lors du règlement. Pour ce faire, définissez le paramètre [customer_update.shipping](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-shipping) sur `auto`. Lorsque [customer_update.shipping](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-shipping) est réglé sur `auto`, Checkout remplace toutes les adresses de livraison précédemment enregistrées sur le client par l’adresse de livraison saisie lors de la session. ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "customer_update[name]=auto" \ -d "customer_update[shipping]=auto" \ -d "shipping_address_collection[allowed_countries][0]=DE" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` Cet exemple crée une session en mode `payment` avec collecte des numéros fiscaux activée. Pour les abonnements, faites les mêmes changements avec le [mode](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-mode) défini sur `subscription`. ## Optional: Exiger la collecte du numéro fiscal Vous pouvez éventuellement configurer Checkout pour qu’il exige la collecte des numéros fiscaux en définissant le paramètre [tax_id_collection[required]](https://docs.stripe.com/api/.md#create_checkout_session-tax_id_collection-required). Lorsqu’il est défini sur `if_supported`, Checkout exigera des informations sur le numéro fiscal pour le paiement des clients dans les [pays de facturation pris en charge](https://docs.stripe.com/tax/checkout/tax-ids.md#supported-types). ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][unit_amount]=1000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][currency]=eur" \ -d "line_items[0][quantity]=2" \ -d "tax_id_collection[enabled]=true" \ -d "tax_id_collection[required]=if_supported" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` ## Récupérer le numéro fiscal d'un client après une session Checkout inclut les numéros fiscaux fournis dans l’objet [Session](https://docs.stripe.com/api/checkout/sessions/object.md) correspondant. Lorsqu’une session est finalisée, Checkout génère un événement [checkout.session.completed](https://docs.stripe.com/api/events/types.md#event_types-checkout.session.completed) que vous pouvez écouter à l’aide d’un endpoint de *webhook* (A webhook is a real-time push notification sent to your application as a JSON payload through HTTPS requests). Si vous souhaitez récupérer le numéro fiscal collecté par un objet Session, vous pouvez le trouver dans le tableau [customer_details.tax_ids](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-customer_details-tax_ids) de la session : ```json { "object": { "id": "cs_test_a1dJwt0TCJTBsDkbK7RcoyJ91vJxe2Y", "object": "checkout.session", ... "customer": {{CUSTOMER_ID}}, "customer_details": { ..."tax_ids": [ { "type": "eu_vat", "value": "FRAB123456789" } ] }, ..."tax_id_collection": { "enabled": true }, ... } } ``` Checkout enregistre les numéros fiscaux et le nom de l’entreprise collectés sur l’objet [Customer](https://docs.stripe.com/api/customers/object.md) lorsque vous associez la Session Checkout à un client. Checkout enregistre un numéro fiscal collecté dans le tableau [customer.tax_ids](https://docs.stripe.com/api/customers/object.md#customer_object-tax_ids) du client. Vous pouvez récupérer tous les numéros fiscaux enregistrés sur un client à l’aide de la ressource [Tax IDs](https://docs.stripe.com/api/tax_ids/list.md) en définissant [owner.type](https://docs.stripe.com/api/tax_ids/list.md#list_tax_ids-owner-type) sur `customer` et [owner.customer](https://docs.stripe.com/api/tax_ids/list.md#list_tax_ids-owner-customer) sur l’identifiant du client. Checkout enregistre le nom de l’entreprise dans les propriétés [name](https://docs.stripe.com/api/customers/object.md#customer_object-name) et [business_name](https://docs.stripe.com/api/customers/object.md#customer_object-business_name) du client. Vos factures d’abonnement affichent toujours le nom juridique de l’entreprise collecté. ## Tester votre intégration Dans les environnements de test, vous pouvez saisir n’importe quelle chaîne de caractères alphanumériques correspondant au format d’un type de numéro fiscal pris en charge (par exemple, `DE123456789` pour `eu_vat`). Vous trouverez une liste complète d’exemples de numéros fiscaux dans notre [guide sur les numéros fiscaux des clients](https://docs.stripe.com/billing/customer/tax-ids.md#supported-tax-id). Vous pouvez également utiliser nos [numéros fiscaux de test](https://docs.stripe.com/connect/testing.md#test-business-tax-ids) pour tester différents flux d’état de vérification. ## Validation Lors de la Checkout Session, Stripe vérifie que les numéros fiscaux fournis sont correctement formatés, mais pas qu’ils sont valides. C’est à vous qu’il incombe de garantir la validité des informations clients collectées lors du paiement. Pour vous aider, Stripe effectue automatiquement une validation asynchrone sur les bases de données gouvernementales pour les [Numéros d’identification australiens (ABN)](https://docs.stripe.com/tax/invoicing/tax-ids.md#australian-business-numbers-abn), la [Taxe sur la valeur ajoutée en Europe](https://docs.stripe.com/tax/invoicing/tax-ids.md#european-value-added-tax-eu-vat-numbers) (TVA UE) et la [Taxe sur la valeur ajoutée du Royaume-Uni](https://docs.stripe.com/tax/invoicing/tax-ids.md#united-kingdom-value-added-tax-gb-vat-numbers) (GB TVA). En savoir plus sur les [validations que nous effectuons](https://docs.stripe.com/tax/invoicing/tax-ids.md#validation), et l’utilisation de l’état de ces vérifications. Si vous utilisez Stripe Tax et que votre client fournit un numéro fiscal, Stripe Tax applique l’autoliquidation ou le taux zéro conformément aux lois applicables, à condition que le numéro fiscal soit conforme au format numérique nécessaire, quelle que soit sa validité. ## Types de numéros fiscaux pris en charge Checkout collecte les types de numéros fiscaux suivants dans les régions indiquées : | 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.