The price you set is the price your customer pays. Session never adds tax on top at checkout, doesn't send tax to Stripe, and doesn't collect or file tax for you. Instead it works out the tax included in what each customer actually paid, so your receipts and exports match your takings.
Set your tax details
- 1Open Settings → Company and scroll to Regional settings.
- 2Set Tax label to your country's word for it, such as VAT, GST or Sales tax. It's used on emails and export column headers.
- 3Set Tax rate to your standard rate as a percentage. Leave it at 0 if you're not registered or still checking.
- 4If you're registered, add your tax number in the number field, named after your label (VAT number, GST number). Leave it blank if you're not.
- 5Select Save changes.
Set prices that include tax
Set each price at the amount you want customers to pay, tax included. For a $30 session at 8% sales tax, set the price to $30, not $27.78. The customer pays $30 and $2.22 of it is tax.
Because tax always comes out of the amount paid, discounts take their tax with them. A 10% discount code on that session means the customer pays $27 and the tax is $2.00, worked out from the $27 actually paid. You never account for tax on money you didn't collect, and customers never see an odd total like $32.40 at checkout.
Receipts for customers
Once your tax number is set, booking and membership confirmation emails show a line such as "Includes VAT at 20%: £5.00" under the total, plus your number, so customers can use the email as a receipt.
- No number, no tax line. Without a tax number, emails show no tax at all.
- Membership emails use the first payment. If a discount lowered it, the email shows what was paid and the tax on that amount.
- Nothing paid, number only. A booking covered by a membership, bundle or voucher shows your number but no tax amount.
- Gift vouchers never show tax. Tax on a gift voucher is usually due when it's spent, not when it's bought.
- Stripe's own receipts never show tax, because Session doesn't send tax to Stripe.
Tax in your exports
The bookings ledger and session attendance CSV exports split takings into gross, tax and net, and the ledger splits refunds the same way. Your Tax rate is the default, and you can pick Exempt / 0% or a custom rate for any one export.
The exports cover bookings only. Membership, bundle and gift voucher sales are in your Stripe dashboard, and gift voucher money spent on a booking shows under Voucher redeemed, not Gross. Give your accountant both when working out the tax you owe.
Common questions
-
Can Session add tax on top at checkout instead? No. Every price includes tax, and the customer pays exactly the price shown.
-
I run venues in more than one US state. Session holds one tax rate per venue, which works when all your sales are taxed at one rate. Handle multi-state or mixed-rate sales tax outside Session.
-
Do I need to change my prices if my tax rate changes? Only if you want customers to pay a different amount. Changing Tax rate changes how exports split takings and the tax line on new confirmation emails, not what anyone pays. Re-export older periods with the old rate using a custom rate.
-
A customer needs a receipt for a booking made before I added my number. Emails already sent aren't changed by a new number, label or rate. Issue that receipt from your accounting software.
-
Some of my sessions are taxed at a different rate. Each export splits all takings at one rate. Split mixed-rate figures in your accounting software, using the gross amounts from the ledger.