Collect taxes
Learn how to collect taxes with Stripe Tax.
Stripe Tax allows you to calculate the tax on your one-time and recurring payments when you use Checkout. You can enable Stripe Tax to automatically compute taxes on all of your Checkout purchases and subscriptions.
Transfer tax liability to Stripe
If you sell digital products, Managed Payments allows you to offload tax liability to Stripe so we’re directly responsible for handling sales tax, VAT, or GST globally. As a merchant of record solution, Managed Payments also handles fraud prevention, dispute management, and customer support on all transactions.
Create a Checkout Session
You can create Checkout sessions for one-time and recurring purchases.
To calculate tax for new customers, Checkout validates and uses the provided shipping or billing address. For existing customers, Checkout calculates tax by validating and using the attached customer shipping or billing address. If you capture a new billing or shipping address for an existing customer, Checkout doesn’t automatically override the previous billing or shipping information. You must explicitly request customer address changes.
Apple Pay and Google Pay
To ensure that Google Pay is offered as a payment method while using Stripe Tax in Checkout, you must either require collecting a shipping address, or provide an existing customer with a saved shipping address. Apple Pay with Stripe Tax displays only when the customer’s browser supports Apple Pay version 12 or greater.
Calculate tax for new customers
If you don’t pass in an existing customer when creating a Checkout session, Checkout creates a new customer and automatically saves the billing address and shipping information. Checkout uses the shipping address entered during the session to determine the customer’s location for calculating tax. If you don’t collect shipping information, Checkout uses the billing address.
curl https://api.stripe.com/v1/checkout/sessions \ -u ":" \ -d "line_items[0][price]=sk_test_BQokikJOvBiI2HlWgH4olfQ2" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success"{{PRICE_ID}}