Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer resources
Overview
Billing
OverviewAbout the Billing APIs
Subscriptions
Invoicing
Usage-based billing
Quotes
Customer management
Billing with other products
Revenue recovery
Automations
Test your integration
Tax
Overview
Use Stripe tax
    How Tax works
    Set up collection
      Settings API
      Specify product tax codes and tax behaviour
      Collect customer addresses
      Zero tax and reverse charges
      Define customisations
      Use third-party tax calculations
    Configure behaviour
    Testing
    Find your payment type
    Find your business type
    Supported countries
Manage compliance
Reporting
Overview
Select a report
Configure reports
Reports API
Reports for multiple accounts
Revenue recognition
Data
OverviewSchema
Custom reports
Data Pipeline
Data management
HomeRevenueUse Stripe tax

Calculate tax

Learn how to calculate tax with Stripe Tax.

The most common forms of indirect taxes for your business are sales tax, VAT, and GST. These taxes apply on the sale of physical goods, digital goods, and services.

Stripe calculates tax on a transaction taking into account some or all of the following factors:

  • The location of the seller
  • The location of the customer
  • The type of the product sold
  • Whether the transaction involves a reverse-charge
  • The status of the customer (for example, whether they’re a VAT-registered business, private person or an exempt organisation)

How Stripe uses addresses

Stripe uses a single address as the customer’s location, or transaction destination, when calculating taxes. For more information, see which customer address we use.

In certain scenarios, it’s important to identify the origin of a transaction. Stripe generally uses the address where your business is located as the origin of a transaction. This address is defined as your origin address in the Dashboard or as head_office if using the tax settings object.

How to use ship-from addresses

You can add ship-from addresses that differ from your business address for tax calculation. To add them, use the ship_from_address transaction object. You can add ship-from locations only using the Stripe Tax API. They aren’t available in integrations of Stripe Tax with Payment Links, Checkout, or Billing and Invoicing. If you enter an unrecognised ship-from address, Stripe returns a shipping_address_invalid error.

Stripe Tax can designate only one address as the origin of a transaction even though in some countries the determination of origin can vary by product type. If you provide the ship-from address, Stripe Tax uses it to calculate tax for both services and physical goods. If you don’t provide a ship-from address, Stripe Tax assumes that the origin of the transaction is the address where your business is located. When selling a combination of products that require different origin locations, consider splitting the transaction accordingly.

Discounts and tax calculations

Stripe Tax calculates tax after applying discounts to the subtotal. This ensures tax calculation on the actual amount paid by the customer.

For example, with a product priced at 150 USD and a 20 USD discount:

  1. The subtotal after discount is 130 USD.
  2. Tax is calculated on the 130 USD amount.
  3. The final total is the discounted subtotal plus the calculated tax.

Discounts don’t affect the tax rates themselves, only the amount on which tax is calculated. When using the Tax API, calculate the discount before sending the request.

Tax breakdowns

Stripe Tax provides detailed tax breakdowns for each transaction. These breakdowns aren’t sorted in any specific order. All applicable taxes are calculated and applied simultaneously. The order of items in the breakdown doesn’t indicate priority or application sequence.

Specify product tax codes and tax behaviour

Learn how to set up products and prices to automatically calculate tax.

Collect customer addresses

Learn how to collect customer addresses to automatically calculate tax.

Zero tax amounts and reverse charges

Learn about cases when Stripe calculates zero tax.

Customise tax behaviour

Set up Tax to fit your business needs with tax customisations.

Countries supported by Stripe Tax

Learn how to use Stripe to calculate, collect, and report tax in different countries

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc
Related Guides
Calculate tax using APIs
Products Used
Tax