I’m using the Checkout API via “Order”, not “QuickPay”.
The “Subtotal” on my Square Checkout page is showing as inclusive of tax. As you can see, the line item prices on the left as listed multiplied by their quantities are indeed exclusive of tax, but after the multiplication, i.e. the result on the right for each item, is inclusive of tax, and it is those values which are being added together to produce the subtotal.
Is it possible to stop tax showing as inclusive for line items for the result of the multiplication, thereby making the subtotal also not inclusive of tax? (this would then match my website)
According to all Google searches that I’ve made, tax should not be included in the subtotal.
P.S. This is working live for my shopping cart… I can show my code and developer explorer settings if that helps.
I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:
If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.
Also, in the following screenshot you can see that I’ve just selected “taxes, type, INCLUSIVE” (just as an experiment, i.e. I’m actually using “ADDITIVE” AKA exclusive)
Indeed, now the item price as shown on the left has been automatically reduced to account for tax being inclusive, but that doesn’t change the fact that the subtotal is inclusive of tax.
Additionally, the £2.87 tax is stated to be… “Taxes included in item price”, but it’s not! It’s the total tax cost, i.e. item price tax + shipping price tax.
Thank you, Gary.
P.S. I’m not using this inclusive option but it is all part of the same functionality and so I thought it was worth pointing out about the incorrect tax note.
So ultimately I just need the subtotal to not include tax?
It seems like the issue you’re experiencing is related to how taxes are being applied and displayed in the Square Checkout page. When using the Checkout API with an “Order” setup, the subtotal calculation can include taxes if they are applied at the item level and not explicitly separated.
To address this, you can ensure that taxes are applied separately from the line items in your order configuration. Here are a few steps you can take:
Check Tax Configuration: Ensure that taxes are configured to be applied at the order level rather than the item level. This way, the subtotal will reflect the sum of the item prices before taxes are added.
Use Pricing Options: When creating the order, you can specify pricing options to automatically apply preconfigured taxes. However, make sure that these taxes are not included in the line item prices. This can be done by setting the auto_apply_taxes option in the pricing_options of your order request.
Review Order Setup: Double-check your order setup to ensure that taxes are not being included in the line item prices. You might need to adjust how taxes are defined in your catalog or how they are applied in the order.
Update Order Display: If necessary, update the display settings in your Square account to ensure that the checkout page reflects the desired tax and subtotal presentation.
By ensuring that taxes are applied at the order level and not included in the line item prices, the subtotal should reflect the pre-tax total, aligning with your website’s checkout page. If you continue to experience issues, reviewing your order configuration and tax settings in the Square Dashboard might provide further insights.
The following request is directly from Square explorer. Please if you can play around inside explorer, testing by copy/paste the URL into the browser address bar, click Preview Link, and you’ll see what I mean.
Square-Dev-AI, regarding…
taxes, scope, was already set to ORDER
I’ve just set, pricing_options, auto_apply_taxes, to True, but it made no difference
I’m feeding in my prices from the server-side of my shopping cart, i.e. I’m not using a catalogue. And of course the prices I’m feeding in are exclusive of tax. (this is irrelevant though, simply because we only need to test the explorer example)
I believe my square account isn’t relevant because it’s just a matter of generating the response inside Square explorer and then copy/pasting the URL into the browser to test
Please kindly test and let me know if you can get line items listed to not include tax as they appear on the right, i.e. the subtotal not inclusive of tax? If you manage it, then please just copy/paste the request for me to try?
You have auto_apply_taxes set to true. Any additional tax configuration on the account that applies to all payments will be added to the order since this is true. That could be causing your issue.
I only just added auto_apply_taxes a few minutes ago, and as I said it made no difference.
Please can you try in your own test account maybe, and then if you manage it, copy/paste the request for me to try?
Right now, I’m struggling to believe that the Checkout API is capable of stating line item prices to not include tax, i.e. simply list the tax separately after the subtotal but not in the line item prices on the right as I’ve explained?
The figures do add up so it makes sense in that respect, but the subtotal shouldn’t include tax. I can see how the various options make their differences, but I guess the Checkout API itself needs updating.
Update: okay, so I’ve read that various other payment platforms do include tax in the subtotal, but for many situations it makes much more sense to not have tax included in the subtotal. Having this as an option would be a good thing!
Surely though, with reference to Square Checkout pages such as shown in the screenshot below, we at least need it to state something like "Including tax" or (tax incl) above the line items prices on the right, and "Excluding tax" or (tax excl) above the line item prices on the left…
Because as it is now, the result of the multiplication of the item price by its quantity is the wrong answer, but it wouldn’t be if they were labelled accordingly.
Here’s that screenshot, which I also posted in my opening post…