We're a merchant about to transition from an older ecommerce/cart package to Magento CE 2.x. In doing so, we're setting up a test environment to ensure we properly can understand and configure the myriad options in our new store. We've uncovered an issue with tax-rate/tax-rule setup, find a functionality gap in M-CE, and then also have a question & can use some confirmation on our intended set-up in light of the identified gap.
First, the issue: in M-CE, as I understand it, when you set up a tax rule, you could select multiple tax rates to be a part of the rule. This could be done easily by scrolling through a long list of rates by (1) holding down the CTRL key, then (2) holding the SHIFT key while using the DOWN-ARROW to run through the list. This allowed you to quickly get a whole range of rates added to the rule. In M-CE 2.x, you have to manually tick each rate with no way to quickly grab multiple rates from a (very) long list (1000+ zip-code rates for our state). It's tedious (to say the least) to tick these off one at a time.
The functional gap is that, in North Carolina at least, tax rates can vary within a zip-code, while M-CE seems only to allow granularity to the zip-code level. Specifically, our sales-tax rate can be made up of 3 components: (a) the state rate (always 4.75% for non-food items); (b) a county rate (either 2% or 2.25%, and (c) an optional public-transit tax-rate (either 0% or 0.5%). So the rate to be charged on any order will be [a+b+c]. Thankfully we don't sell food items, else we'd also have to accommodate a different structure for that too. Resolving only to a zip-code level doesn't seem sufficient, as some zip-codes straddle county lines (in some instances, 3 counties): we could have rates on purchases ranging from 6.75% to 7.5%, depending on actual address within a zip-code's boundaries.
To get as close to correct as we can in M-CE (without extensions), we're setting up 3 tax rules: Rule 1 is a state-level tax of 4.75% (applies to any ship-to address in NC); Rule 2 is a county general-tax rate (when there are multiple counties in a single zip, have a zip-code tax-rate only once with the tax-rate set as the highest of the counties in that zip); Rule 3 is the mass-transit rate, again with a single tax-rate per zip, and set to the highest among any counties with that zip. My expectation and assumption is that, by employing 3 rules, the tax calculation on any order will be the sum of Tax-Rule 1 + 2 + 3, but wanted confirmation that this is how M-CE works when there is a layering of rates, as above. Also, I wanted to see if there are any practical considerations to loading up a single tax-rule with so many tax-rates (zip-codes) - our relatively small state has 1000+ zip-codes to consider. Will this break M-CE or cause performance issues?
Finally, and again assuming we're correctly understanding M-CE's basic tax-rate/tax-rule functionality, I also wanted to confirm that the only way to determine the exactly correct rate is to have street-address resolution, which would then only be available through a third-party extension.
Thanks in advance for any guidance and assistance.