Glossary

Stripe Tax

Stripe Tax is Stripe’s built-in tax engine: it calculates sales tax, VAT, and GST on your transactions based on what you sell and where your customer is, tracks when you cross registration thresholds, and produces the reports you file from.

Also called: automatic tax, automatic_tax, Stripe sales tax, Stripe VAT

Definition

Stripe describes the product in one line: "Automate sales tax, VAT, and GST compliance on all your transactions." The useful way to think about it is as three separate jobs that happen to ship together.

The first is **calculation**. Stripe Tax determines the right rate for each line item from the product’s tax code and the customer’s and your business’s location, across multiple countries and cross-border sales. This is the part that runs automatically once you switch it on.

The second is **threshold monitoring**. Stripe tracks your sales against local registration thresholds and alerts you when you might have an obligation somewhere new. That is the job most businesses do not know they are failing until a letter arrives.

The third is **reporting**, and eventually filing. Stripe Tax produces itemized exports, summarized exports, and location reports for the US and Canada. Stripe positions the whole thing as an "end-to-end compliance solution" that "helps you manage tax calculations, registrations, and filings directly or through integrated partners."

That last phrase deserves attention. Calculation is automatic. Registration and filing involve either you or a partner, so "Stripe Tax handles my taxes" is not quite the right mental model. It handles the arithmetic and tells you what you owe and where.

Key points

  • +Calculates sales tax, VAT, and GST per line item from product tax code plus customer and business location.
  • +Monitors your sales against registration thresholds and warns you when a new obligation appears.
  • +Produces itemized, summarized, and location-based reports you file from.
  • +Tax is recorded when an invoice finalizes, not when it is paid, and Stripe does not recalculate afterwards.
  • +Voiding an invoice, marking it uncollectible, issuing a credit note, and refunding all reduce your reported tax.
  • +Upheld disputes do not reduce reported tax, which is a real reconciliation gap to watch.
  • +For QuickBooks, the tax Stripe calculates has to be mapped to something: a liability product or a QuickBooks tax code.

When tax is actually recorded

The timing catches people out, especially anyone reconciling against cash.

Stripe records tax at **finalization**, not at payment. Its reporting documentation lists "finalizing an invoice" as an operation that increases the balance of total tax reported, and spells out that this "transition happens *before* the invoice is paid." An invoice that finalizes in March and gets paid in May put its tax into March.

Stripe is equally direct about what happens next: "We consider transactions effective on the date they finalize and we don’t recalculate taxes afterwards." The rate that applied on the day is the rate that stands.

Several later events reduce that reported balance. Voiding an invoice, marking an invoice uncollectible, creating a credit note, refunding a charge tied to an invoice or Checkout Session, and reversing a tax transaction through the Tax API all decrease total reported tax. Paying an invoice that was previously marked uncollectible increases it again.

One gap is worth committing to memory because it is silent. Upheld disputes are not reflected in tax reports at all. Stripe states that for a disputed transaction the reports "still reflect the total tax collected," so a chargeback you lost leaves the tax on that sale sitting in your reported figures.

What Stripe Tax does not decide

Stripe Tax tells you what tax applies. It does not tell your accounting system where to put it, and that is the gap every Stripe-to-QuickBooks workflow has to close.

QuickBooks needs the tax to land somewhere specific: either as an amount sitting in a liability account, or attached to a QuickBooks tax code that its own tax module understands. Stripe has no opinion about which, because from Stripe’s side the tax is simply a calculated line on a transaction.

There is also a structural mismatch between the two products in the US. QuickBooks Online’s Sales Tax Center does not let third-party applications create official QBO tax rates. So the clean approach of mapping each Stripe rate to a matching QuickBooks rate, which works well outside the US, is largely unavailable to US filers regardless of which integration you use.

Stripe’s own reports are unbothered by all of this and remain the thing you file from. The QuickBooks side is about your books balancing and your liability being visible, not about producing the return.

Inclusive versus exclusive, and why it changes your revenue

Every tax line is either inclusive or exclusive, and the choice is not cosmetic.

With **exclusive** tax, the listed price is net and tax is added on top. A 100 dollar item with 10 percent tax bills at 110. With **inclusive** tax, the price already contains the tax, so that same 110 dollar sale is 100 of revenue and 10 of tax that were always inside the number.

Neither treatment counts the tax portion as revenue. The trap is getting the setting wrong: treat an inclusive price as exclusive and you have inflated both revenue and liability on every transaction.

Inclusive tax is also the harder case computationally, because the tax has to be extracted from a total rather than added to a base, and rounding at the line level does not always reproduce the total exactly. It is common in VAT and GST countries, which is why non-US setups run into it far more often than US ones.

How Acodei gets Stripe Tax into QuickBooks

Acodei reads the tax lines Stripe produced and maps them into QuickBooks. Stripe Tax is what calculates; Acodei decides where the resulting amounts land.

There are two main approaches, chosen under Stripe Tax in the Account Mapping section of the dashboard.

**Tax Product** is the aggregation method, and the one most US companies end up on. You create a non-inventory product in QuickBooks, typically called something like "Sales Tax," mapped to a liability account. Acodei rolls all Stripe tax amounts into that single line on your QuickBooks invoices and receipts. Your liability accrues in one place and you file from Stripe’s reports. This exists because QuickBooks Online’s US Sales Tax Center does not allow third-party creation of official tax rates, so a liability product is the workable path.

**QuickBooks Tax Rate (Advanced)** is the mapping method, aimed at non-US companies that want to use QuickBooks’ own tax module. Acodei pulls the Stripe tax rate IDs available to it, and you map each `txr_` ID to the corresponding QuickBooks tax code, such as GST 5 percent or VAT 20 percent. Each product line then syncs with the correct QBO rate attached. Where a single Stripe line carries more than one rate, for example GST plus PST, Acodei detects that and lets you map the combination to a QuickBooks group tax code so the total still matches Stripe exactly.

A third path exists for non-US companies that do **not** use Stripe Tax but still need tax on every line for QuickBooks reporting. Admin QBO Tax Mapping applies a chosen rate after the fact, with separate settings for product and fee tax, and it is usually set to inclusive so QuickBooks does not inflate revenue.

Outside those options, tax tracking from Stripe to QuickBooks is not possible. Either Stripe Tax is enabled so the rates and amounts can be retrieved, or tax is applied after the fact in QuickBooks.

A few operational details that matter in practice. Choosing inclusive in the Acodei dashboard automatically activates manual inclusive tax calculation behind the scenes, so QuickBooks totals line up with Stripe’s; partial and daily-summary scenarios can still produce rounding differences. Default product and fee tax rates are normally set to Exempt so only your mapped rates apply. On daily summaries, lines are split by product and tax rate rather than lumped together. If a Stripe tax rate has been archived but still appears on older invoices, you may need to add that `txr_` ID manually to map it. And refunds are cleanest through credit notes, because a payment-level refund without line detail does not always reveal how much of it was tax.

One current limitation to know about: zero-decimal currencies such as JPY are not yet supported.

Want to see this on your own Stripe data?

Start a free trial

Frequently asked questions

What is Stripe Tax?

Stripe Tax is Stripe’s built-in tax engine. It calculates sales tax, VAT, and GST on your transactions based on the product’s tax code and the customer’s and your business’s location, monitors your sales against registration thresholds, and produces the reports you file from.

Does Stripe Tax file and remit my taxes for me?

Calculation is the automatic part. Stripe describes the product as helping you manage "calculations, registrations, and filings directly or through integrated partners," and you can use Stripe to register for sales tax on your behalf. Filing is not simply handled invisibly in the background, so check what your setup actually covers.

When does Stripe record the tax on an invoice?

At finalization, not at payment. Stripe lists finalizing an invoice as an operation that increases reported tax and notes the transition "happens before the invoice is paid." Stripe also does not recalculate tax after the fact, treating transactions as effective on the date they finalize.

Do refunds and voided invoices reduce my reported tax?

Yes. Voiding an invoice, marking an invoice uncollectible, creating a credit note, refunding a charge tied to an invoice or Checkout Session, and reversing a tax transaction all decrease the balance of total tax reported. Upheld disputes are the exception and do not reduce it.

How does Stripe Tax get into QuickBooks Online?

Through mapping. Acodei reads the tax lines Stripe calculated and either rolls them into a single liability-mapped product in QuickBooks, or maps each Stripe `txr_` tax rate ID to a matching QuickBooks tax code. Which approach fits depends largely on whether your QuickBooks company is US-based.

Why can’t I map Stripe tax rates to QuickBooks tax rates in the US?

QuickBooks Online’s US Sales Tax Center does not allow third-party creation of official QBO tax rates. That is a QuickBooks restriction rather than an integration limitation, which is why US companies generally aggregate tax into a liability product instead.

Does Acodei calculate the tax?

No. Stripe Tax calculates it. Acodei reads the tax lines Stripe produced and maps them into the right place in QuickBooks. If Stripe Tax is not enabled, there is nothing for Acodei to read, and tax has to be applied in QuickBooks after the fact instead.

What customers say about running Stripe through Acodei

Stripe Verified Partner BadgeQuickBooks Intuit Badge
If you're testing out all the different Stripe/QuickBooks integration apps right now, let me save you some time. This one is the best one by far.
RyanOwner at Indie Music Academy
Works well and is really helpful for massive transactions. The support is really fast and helpful. 100% recommended.
AndresCo-founder and CEO at Kanguro Collections and Reinsurance

Ready to try Acodei?

Connect Stripe to QuickBooks Online in minutes and let the fees, refunds, and payouts land where your accountant expects them.