Accéder directement au contenu
Créez un compte ou connectez-vous
Le logo de la documentation Stripe
/
Demander à l’IA
Créer un compteConnectez-vous
Commencer
Paiements
Revenus
Plateformes et places de marché
Gestion des fonds
Ressources de développement
API et trousse SDKAide
Aperçu
À propos des paiements avec Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
AperçuTrouver votre cas d'usageUtiliser Managed Payments
Utiliser Payment Links
Utiliser une page de paiement préconfiguré
    Aperçu
    Guides QuickStart
    Fonctionnement de Checkout
    Personnaliser l'apparence
    Collecter des informations supplémentaires
    Percevoir des taxes
      Utiliser des taux de taxe manuels
      Recueillir les numéros d'identification fiscale
    Mise à jour dynamique du paiement
    Gérer votre catalogue de produits
    Abonnements
    Gérer les moyens de paiement
    Offrir aux clients la possibilité de payer dans leur devise locale
    Ajoutez des réductions, des ventes incitatives et des articles facultatifs
    Configurer les paiements futurs
    Enregistrer les informations de paiement lors du paiement
    Après le paiement
    Migrer depuis l'ancienne version de Checkout
    Migrer vers Checkout pour utiliser l'API Prices
Créer une intégration personnalisée avec Elements
Développer une intégration dans l'application
Paiements en personne
Terminal
Moyens de paiement
Ajout de moyens de paiement
Gérer les moyens de paiement
Payer plus rapidement avec Link
Scénarios de paiement
Gérez plusieurs devises
Flux de paiement personnalisés
Acquisition flexible
Orchestration
Au-delà des paiements
Constituer son entreprise
Cryptomonnaie
Commerce agentique
Financial Connections
Climate
Comprendre la fraude
Radar pour la protection contre la fraude
Gérer les litiges
Vérifier l'identité
États-Unis
Français (Canada)
AccueilPaiementsUse a prebuilt checkout pageCollect taxes

Collect customer tax IDs with Checkout

Learn how to collect VAT and other customer tax IDs with Checkout.

Displaying a customer’s tax ID and legal business name on invoices and processing VAT refunds are common requirements that you can satisfy by enabling tax ID collection in Checkout. This guide assumes that you’ve already integrated Checkout. If you haven’t, see the Accept a payment guide.

Enable Tax ID collection

With tax ID collection enabled, Checkout shows and hides the tax ID collection form depending on your customer’s location. If your customer is in a location supported by tax ID collection, Checkout shows a checkbox allowing the customer to indicate that they’re purchasing as a business. When a customer checks the box, Checkout displays fields for them to enter the tax ID and legal entity name for the business. If available, Checkout uses the customer’s shipping address to determine their location, otherwise Checkout uses the customer’s billing address. Customers can only enter one tax ID.

New Customers

To enable tax ID collection for new customers, set tax_id_collection[enabled] to true when creating a Checkout session.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -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"

This example creates a Session in payment mode with tax ID collection enabled. For subscriptions, make the same changes with the mode set to subscription.

You can additionally configure Checkout to create a new Customer for you using customer_creation. If you do, Checkout saves any tax ID information collected during a Session to that new Customer. If not, the tax ID information will still be available at customer_details.tax_ids.

Existing Customers

If you pass an existing Customer when creating a Session, Checkout updates the Customer with any tax ID information collected during the Session. Checkout saves the collected business name onto the Customer’s name property, and adds the collected tax ID to the Customer’s customer.tax_ids array. Since the collection of a business name could result in the Customer’s existing name being overridden, you must set customer_update.name to auto when creating the Session.

Avertissement

Checkout only collects tax IDs on Customers that don’t already have an existing tax ID. If a Customer has one or more tax IDs saved, Checkout doesn’t display the tax ID collection form even if tax ID collection is enabled.

When collecting tax IDs for existing customers you can either base their location on existing addresses on the customer or the addresses entered during checkout. By default, Checkout looks for existing addresses on the customer to assess their location:

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -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"

If you don’t have the addresses of your existing customers saved, you can base their location on the billing or shipping address entered during Checkout. To specify that you want to use the billing address entered during Checkout to assess the customer’s location, you must set customer_update.address to auto. When setting customer_update.address to auto, Checkout replaces any previously saved addresses on the customer with the address entered during the session.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -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"

If you’re collecting shipping addresses for existing customers, you must base their location on the shipping address entered during checkout. To do so, set customer_update.shipping to auto. When setting customer_update.shipping to auto, Checkout replaces any previously saved shipping addresses on the customer with the shipping address entered during the session.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=cus_HQmikpKnGHkNwW \ -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"

The above code example creates a Session in payment mode with tax ID collection enabled. For subscriptions, make the same changes with the mode set to subscription.

FacultatifRequire tax ID collection

You can optionally configure Checkout to require tax ID collection by setting the tax_id_collection[required] parameter. When set to if_supported, Checkout will require tax ID information for payment for customers in supported billing countries.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -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"

Retrieve Customer Tax ID details after a Session

Checkout includes provided tax IDs on the resulting Session object. After each completed Session, Checkout emits a checkout.session.completed event that you can listen for in a webhook endpoint. If you want to retrieve the collected tax ID from the Session object, it’s available under the Session’s customer_details.tax_ids array:

{ "object": { "id": "cs_test_a1dJwt0TCJTBsDkbK7RcoyJ91vJxe2Y", "object": "checkout.session", ... "customer": "cus_id_of_new_customer", "customer_details": { ... "tax_ids": [ { "type": "eu_vat", "value": "FRAB123456789" } ] }, ... "tax_id_collection": { "enabled": true }, ... } }

Checkout also saves collected tax IDs and business names to the Customer object if one is associated with the Session. A tax ID collected during checkout is accessible under the Customer’s customer.tax_ids array. You can also retrieve all tax IDs saved to a Customer with the Tax IDs resource by specifying the owner.type parameter to customer and owner.customer to the Customer’s ID. Every new tax ID includes an associated legal business name, which Checkout saves to the Customer’s name property. In doing so, the collected legal business name is always visible on any subscription invoices for that Customer.

Test your integration

In testing environments, you can enter any alphanumeric string that is in the correct format of a supported tax ID type (for example, DE123456789 for eu_vat). For a full list of example tax IDs you can reference our Customer Tax ID guide. You can also use our test tax IDs to test various verification state flows.

Validation

During the Checkout Session, Stripe verifies that the provided tax IDs are formatted correctly, but not that they’re valid. You’re responsible for ensuring the validity of customer information collected during checkout. To help, Stripe automatically performs asynchronous validation against government databases for European Value Added Tax (EU VAT) and United Kingdom Value Added Tax (GB VAT) numbers. Learn more about the validation we perform, and how to consume the status of those checks.

If you use Stripe Tax and your customer provides a tax ID, Stripe Tax applies the reverse charge or zero rate according to applicable laws, as long as the tax ID conforms to the necessary number format, regardless of its validity.

Supported Tax ID types

Checkout collects the following tax ID types in the given regions:

PaysEnumDescriptionExemple
Impact sur le calcul des taxes
Afrique du Sudza_vatSouth African VAT number4123456789Oui
Albanieal_tinAlbania Tax Identification NumberJ12345678NOui
Allemagneeu_vatEuropean VAT numberDE123456789Oui
Angolaao_tinAngola Tax Identification Number5123456789Non
Arabie saouditesa_vatSaudi Arabia VAT123456789012345Oui
Arménieam_tinArmenia Tax Identification Number02538904Oui
Arubaaw_tinAruba Tax Identification Number12345678Oui
Australieau_abnAustralian Business Number (AU ABN)12345678912Oui
Autricheeu_vatEuropean VAT numberATU12345678Oui
Azerbaïdjanaz_tinAzerbaijan Tax Identification Number0123456789Oui
Bahamasbs_tinBahamas Tax Identification Number123.456.789Non
Bahreïnbh_vatBahraini VAT Number123456789012345Oui
Bangladeshbd_binBangladesh Business Identification Number123456789-0123Oui
Barbadebb_tinBarbados Tax Identification Number1123456789012Non
Belgiqueeu_vatEuropean VAT numberBE0123456789Oui
Béninbj_ifuBenin Tax Identification Number (Identifiant Fiscal Unique)1234567890123Oui
Biélorussieby_tinBelarus TIN Number123456789Oui
Bosnie-Herzégovineba_tinBosnia and Herzegovina Tax Identification Number123456789012Oui
Bulgarieeu_vatEuropean VAT numberBG0123456789Oui
Burkina Fasobf_ifuBurkina Faso Tax Identification Number (Numéro d'Identifiant Fiscal Unique)12345678AOui
Cambodgekh_tinCambodia Tax Identification Number1001-123456789Oui
Camerouncm_niuCameroon Tax Identification Number (Numéro d'Identifiant fiscal Unique)M123456789000LNon
Canadaca_bnCanadian BN123456789Non
Canadaca_gst_hstCanadian GST/HST number123456789RT0002Oui
Canadaca_pst_bcCanadian PST number (British Columbia)PST-1234-5678Non
Canadaca_pst_mbCanadian PST number (Manitoba)123456-7Non
Canadaca_pst_skCanadian PST number (Saskatchewan)1234567Non
Canadaca_qstCanadian QST number (Québec)1234567890TQ1234Oui
Cap-Vertcv_nifCape Verde Tax Identification Number (Número de Identificação Fiscal)213456789Non
Chilicl_tinChilean TIN12.345.678-KOui
Chypreeu_vatEuropean VAT numberCY12345678ZOui
Congo-Kinshasacd_nifCongo (DR) Tax Identification Number (Número de Identificação Fiscal)A0123456MNon
Corée du Sudkr_brnKorean BRN123-45-67890Oui
Costa Ricacr_tinCosta Rican tax ID1-234-567890Non
Croatieeu_vatEuropean VAT numberHR12345678912Oui
Danemarkeu_vatEuropean VAT numberDK12345678Oui
Égypteeg_tinEgyptian Tax Identification Number123456789Oui
Émirats arabes unisae_trnUnited Arab Emirates TRN123456789012345Oui
Équateurec_rucEcuadorian RUC number1234567890001Non
Espagnees_cifSpanish NIF number (previously Spanish CIF number)A12345678Non
Espagneeu_vatEuropean VAT numberESA1234567ZOui
Estonieeu_vatEuropean VAT numberEE123456789Oui
Éthiopieet_tinEthiopia Tax Identification Number1234567890Oui
Finlandeeu_vatEuropean VAT numberFI12345678Oui
Franceeu_vatEuropean VAT numberFRAB123456789Oui
Géorgiege_vatGeorgian VAT123456789Oui
Grèceeu_vatEuropean VAT numberEL123456789Oui
Guinéegn_nifGuinea Tax Identification Number (Número de Identificação Fiscal)123456789Oui
Hongrieeu_vatEuropean VAT numberHU12345678Oui
Indein_gstIndian GST number12ABCDE3456FGZHOui
Irlandeeu_vatEuropean VAT numberIE1234567ABOui
Islandeis_vatIcelandic VAT123456Oui
Italieeu_vatEuropean VAT numberIT12345678912Oui
Kazakhstankz_binKazakhstani Business Identification Number123456789012Oui
Kenyake_pinKenya Revenue Authority Personal Identification NumberP000111111ANon
Kirghizistankg_tinKyrgyzstan Tax Identification Number12345678901234Non
Laosla_tinLaos Tax Identification Number123456789-000Non
Lettonieeu_vatEuropean VAT numberLV12345678912Oui
Liechtensteinli_vatLiechtensteinian VAT number12345Oui
Lituanieeu_vatEuropean VAT numberLT123456789123Oui
Luxembourgeu_vatEuropean VAT numberLU12345678Oui
Macédoine du Nordmk_vatNorth Macedonia VAT NumberMK1234567890123Oui
Malteeu_vatEuropean VAT numberMT12345678Oui
Marocma_vatMorocco VAT Number12345678Oui
Mauritaniemr_nifMauritania Tax Identification Number (Número de Identificação Fiscal)12345678Non
Mexiquemx_rfcMexican RFC numberABC010203AB9Non
Moldaviemd_vatMoldova VAT Number1234567Oui
Monténégrome_pibMontenegro PIB Number12345678Non
Népalnp_panNepal PAN Number123456789Oui
Nigériang_tinNigerian Tax Identification Number12345678-0001Non
Norvègeno_vatNorwegian VAT number123456789MVAOui
Nouvelle-Zélandenz_gstNew Zealand GST number123456789Oui
Omanom_vatOmani VAT NumberOM1234567890Oui
Ougandaug_tinUganda Tax Identification Number1014751879Oui
Ouzbékistanuz_tinUzbekistan TIN Number123456789Non
Ouzbékistanuz_vatUzbekistan VAT Number123456789012Oui
Pays-Baseu_vatEuropean VAT numberNL123456789B12Oui
Péroupe_rucPeruvian RUC number12345678901Oui
Philippinesph_tinPhilippines Tax Identification Number123456789012Oui
Pologneeu_vatEuropean VAT numberPL1234567890Oui
Portugaleu_vatEuropean VAT numberPT123456789Oui
République tchèqueeu_vatEuropean VAT numberCZ1234567890Oui
Roumanieeu_vatEuropean VAT numberRO1234567891Oui
Royaume-Unieu_vatNorthern Ireland VAT numberXI123456789Oui
Royaume-Unigb_vatUnited Kingdom VAT numberGB123456789Oui
Russieru_innRussian INN1234567891Oui
Russieru_kppRussian KPP123456789Oui
Sénégalsn_nineaSenegal NINEA Number12345672A2Non
Serbiers_pibSerbian PIB number123456789Non
Singapoursg_gstSingaporean GSTM12345678XOui
Slovaquieeu_vatEuropean VAT numberSK1234567891Oui
Slovénieeu_vatEuropean VAT numberSI12345678Oui
Suèdeeu_vatEuropean VAT numberSE123456789123Oui
Suissech_vatSwitzerland VAT numberCHE-123.456.789 MWSTOui
Surinamesr_finSuriname FIN Number1234567890Oui
Tadjikistantj_tinTajikistan Tax Identification Number123456789Oui
Taïwantw_vatTaiwanese VAT12345678Oui
Tanzanietz_vatTanzania VAT Number12345678AOui
Thaïlandeth_vatThai VAT1234567891234Oui
Turquietr_tinTurkish Tax Identification Number0123456789Oui
Ukraineua_vatUkrainian VAT123456789Oui
Uruguayuy_rucUruguayan RUC number123456789012Oui
Zambiezm_tinZambia Tax Identification Number1004751879Non
Zimbabwezw_tinZimbabwe Tax Identification Number1234567890Non
Cette page vous a-t-elle été utile?
OuiNon
  • Besoin d'aide? Contactez le service d'assistance.
  • Consultez notre journal des modifications.
  • Des questions? Contactez l'équipe commerciale.
  • GML? Lire llms.txt.
  • Optimisé par Markdoc