My WooCommere installation is not adding local taxes after the user is entering the US Zipcode. The backend seems to have all the zipcodes and tax rates. How do I fix the problem?
I was having this same issue. It may not be the same for you, but I finally figured out that the country code was wrong. I was using USA instead of US... and it requires the 2 letter code instead. And I couldn't just change it, I actually had to create a new tax instance with the same info, but with the US code instead.
Hope this helps!
You can download the raw data from http://www.taxrates.com/state-rates
Then adapt it to WooCommerce format, following their example here:
[your wordpress folder / site]/wp-content/plugins/woocommerce/dummy-data/sample_tax_rates.csv
Make sure to multiply the tax rate by 100 (woo commerce expects tax in %) - you can use excel etc, just make sure to leave saved as .csv.
Having said that, the tax isn't always calculated in Woo (e.g. if the city is different - "New York, New York" doesn't have an entry, but "New York City, New York" does. I recommend you remove the city names altogether and just rely on zip codes (as inaccurate as they can potentially be).
Remember also that you're only required to collect Sales tax where you have a "Nexus" too https://www.sba.gov/content/collecting-sales-tax-over-internet
WooCommerce would not able to handle tax table that has a lot of entries. I had this problem with California sales tax which has more than 2000 entries. If this the case, you could try download table for your state from wwww.woosalestax.com. It should fix that problem.
-reply to Parixit
Tax table from their website is one of the solutions I am using right now. If you have too many rows of tax records in your WooCommerce tax table, the tax will not calculate at check out and good luck trying to edit the tax table. Instead of putting thousands rows of tax record in the table, they have consolidated the table into a lot fewer rows, formatted and ready for import. I don't have any performance issues after using their table on my site. I am just trying to help people that are going through what I went through. Hope this will save their valuable time and frustrations.
Related
I hope someone can help me with this :)
I will be selling a product that has 10 variables, but all the choices need to be the same for all, how can I add and reuse the values once instead of copying and pasting values 10 times?
What I will be selling is a 10 meal bulk package and each meal needs the
same choice values.
Picture of what I'm trying to achieve here
Thanks for any help in advance :) Scott
I have 3 different products, 5 meals, 7 meals and 10 meals in which the customer can choose their own meals, the attribute values will also be changing weekly. which at the moment I am pasting in new values 22 times in the edit product.
If I delete and duplicate the product I lose the URL
When I go to Products > attributes still the same making 10 attributes like meal 1, meal 2, meal 3 etc I can't duplicate them and have to do it all manually up to 40 times with new values.
[Picture Front end here]
(https://dl.dropboxusercontent.com/u/61411490/Screen%20Shot%202015-09-17%20at%2009.33.32.png).
This is a very late answer, but I have encountered the same issue and my solution might be of interest to the next person who happens on this question.
I am using WP All Import and the Woocommerce extension (both free, but variable products require a license) to maintain product details in excel. Updating data on the website is as easy as uploading a new CSV. Keeping data in sync in an excel file, with references, formulas, etc. becomes much easier, and you can often completely factor out duplicate data.
Instead of using Woocommerce's variable products, I created each version as a simple product and linked between them.
The NopCommerce 3.6 Tax By Country & State & Zip plugin always returns zero tax for one of my stores. I have the same results locally and remotely, but the database was not copied from local machine. I performed the steps locally and then again remotely to help eliminate the particular environment as a factor.
What might be wrong?
Here are some screen shots to demonstrate.
Tax provider marked primary :
Test customer address contains example zip code.
No roles are marked exempt.
Set tax based on shipping address, etc.
Tax rates were imported via SSMS.
Customer is not exempt.
General tax category has been added.
CountryID of 1 is present.
Specific tax rate for test shipping address is identified.
I also attempted a test with a specific StoreId of 1, though there is only 1 store. Also the field is not nullable, zero acts as the wildcard.
All products are taxable and assigned to General tax category.
No tax displayed in the cart.
No tax displayed in checkout.
No relevant errors in the log.
As much as I wanted to avoid thinking it was true, this problem was created by a third party plugin. A vendor's alternate "One Page Checkout" was clearing the tax for the cart once the Checkout page was hit, and preventing that user from ever obtaining tax calculations in the cart afterward. Removing the plugin corrected the problem, and I've reached out to the vendor for support.
Thanks for anyone who took the time to look at this!
EDIT: To be clearer, what's occurring is that the Real One Page Checkout plugin creates NULL fields in the Address table and associates them with the customer. Therefore, any subsequent orders put in the cart by that customer will never calculate taxation again. I didn't investigate what else might be happening as a result.
I've downloaded the latest copy of the plugin and tested with the same results. All orders placed without the plugin installed work fine, with the plugin installed there are blank records added to the Address table and associated with the Customer.
Here is how the One Page Checkout plugin for nopCommerce works:
When the customers open the checkout page they start with blank addresses (that is why initially you see two empty addresses in the database - one for the billing address and another one for the shipping address) and that is why your taxes are 0 since there is still no any country selected.
Once the customer selects a country then the address in the database will be updated with the country id and all the tax calculations will be based on the newly selected country. The order total will also be updated and the customers will see the new taxes. If the customer changes the country again then the order total will again be updated again with the new taxes based on the new country.
By looking at the provided screenshots, your customer already has an address in his address book and you expect him to use the same address for any new orders.
In that case you can simply check these settings in the administration of the One Page Checkout plugin - Preselect Last Customer Billing Address and/or Preselect Last Customer Shipping Address.
This way when the customer starts the checkout it will not start with a blank address but with the address he has used to make his latest order.
Since the preselected address should already has a country selected then your taxes will automatically be shown for that country right from the start of the checkout.
I have been searching for this all over the internet, but haven't came up with the solution just yet.
On my Drupal 7 installation I've happily used Ubercart for a while now, but I'm going to sell software from now on.
I'd like to use attributes to change the price based on the amount of computers and licence experiation date (years from now).
The prices don't always rise the same way, so I can't set an increase of 10% with every year.
I'd like to fill out a price table and when the user makes his choice, he gets the price right.
This is the website I'm talking about (example product): https://www.xsbyte.com/catalog/73
It seems not possible to do this, you could fill out a new price for a new object, or could just make a new product, but that was not what I was looking for.
I ended up using WooCommerce (Wordpress) and integrated both systems, so customers get features like single-logon and shared customer address and payment details (if applicatable).
I have two database tables
this is a sample database of a Ticketing system.
Figure 1: Sample table of air ticket.
Figure 2: Sample table of tax.
Requirement:
When ticket is made from the interface, it has multiple taxes of different names every time.
How can I store this information i.e. 'n' number of taxes for each ticket with different names every time.
I have tried to make many to many relationship but the problem is:
For each ticket if the tax is not setup, then need to add the tax first.
Any optimal solution for this?
"the problem is: For each ticket if the tax is not setup, then need to
add the tax first."
This is not a real-life problem. In real life governments declare taxes well in advance of collecting them, This gives organizations sufficient time to amend their systems which need to handle taxes. Tax is never a surprise.
"But this is very tiring solution for the end user.... to make bunch
of tax setup for each ticket"
This sort of thing is reference data, and is the duty of the system developer (hint: that's you) to populate the reference data tables. Or at least provide a screen where the user can create or amend various taxes. This is a different function from defining a ticket type.
The Ticket Creation screen should have a drop-down list (or similar widget) displaying all the existing taxes, which allows the user to pick the relevant one(s). If you reall think it's necessary you can include a link to the Create Tax screen, but that really is a very confusing workflow.
If the commentators are correct, and this is a ticket purchasing function, then your design is seriously wrong. Sales taxes must be included automatically to the cost of the purcahse as part of the transaction. Otherwise nobody would pay any tax.
I usually create conditional rules with shipping to assign different costs for:
national shipping (a specific country is selected)
and international shipping (the same country is selected but a NOT is added to the condition)
I have now to assign different shipping costs according to Europe / Not Europe. A solution would be to select all countries in Europe, but I was wondering if there is a faster way
thanks
For the sanity of your users just do it the way everybody else does!
Have a country pull down with a list of all supported countries in it. Defaulting to you "home" nation.
If you are sending stuff there are a lot more considerations than just shipping costs, you may need to fill in specific tax forms for some countries and depending on what your site is selling you may need special processing for some countries (try sending coffee to Thailand -- you need to obtain permission from thier ministry of agriculture!).
Create the different shipping methods at admin/store/settings/quotes (one for Europe, one for non-Europe).
Add a Rule by editing the new shipping method and adding a condition
or go to the Rules config at admin/workflow/rules
Use a text comparison condition with a order:delivery-address:country data selector
In the value field place the regular expression to match any of the desired country names, for example the list of EU member states below.
Maybe it could be done with postal codes too, but I do not know how they are structured. Everyone keeps their sanity.
(\W|^)(Austria|Belgium|Bulgaria|Croatia|Cyprus|Czech|Republic|Denmark|Estonia|Finland|France|Germany|Greece|Hungary|Ireland|Italy|Latvia|Lithuania|Luxembourg|Malta|Netherlands|Poland|Portugal|Romania|Slovakia|Slovenia|Spain|Sweden|United\sKingdom)(\W|$)