The legacy sales tax docs have moved to this page: Legacy Sales Tax. If you are still using the old tax engine, please consult those pages. |
UltraCart provides four ways to manage sales tax. They are listed below with their pros and cons.
Method | Pros | Cons |
---|---|---|
UltraCart Managed |
|
|
Self Managed |
|
|
Avalara |
| |
TaxJar |
| |
Sovos |
|
|
The default and easiest way to collect sales tax for U.S. merchants is to allow UltraCart to manage tax collection.
UltraCart Managed Rates is the defaulted selection unless another Sales Tax integration is selected.
UltraCart Managed Rates: The rates are provided by Avalara and are only accurate to the zip code level. There can be addresses within those zip codes that may have a higher rate, but to get that higher rate you will have to use an API style integration like Avalara or TaxJar service which can calculate that. The free UltraCart Managed rates are simply the import of the free tax tables from Avalara. We can't modify those rates or guarantee perfect accuracy. |
The "UltraCart" managed sales tax configuration pertains to the United States only.
As of 06/19/2019, the UC managed tax provider will populate the tax county automatically. This information can be backfilled upon request. |
Required Steps:
UltraCart Managed
as your tax provider.Click the Settings button for UltraCart Managed. On the settings screen, select a state and click the plus button to add it to the list of states where tax is collected. When finished, click the Save button.
You can edit the configured states to modify the state level options, by clicking the "pencil" icon:
Select the options you wish to enable or disable:
Then click the OK button to save the changes.
.
Self Managed State Editor Settings
Field | Description |
---|---|
Tax Shipping | When enabled, Tax will be applied to Shipping cost for the selected shipping method. |
Tax Gift Charge | When enabled, Tax will be applied to any configured Gift Charge configured in the gift giving configuration page. |
Tax Gift Wrap | When enabled, Tax will be applied to any configured Gift Wrapping fee's configured in the in the gift giving configuration page. |
Self managed sales tax collection allows merchants to configure every level of sales tax collection for both domestic and international sales.
Required Steps:
Self Managed
as your tax provider.Self Managed
as your tax providerWIthin the settings for Self Managed, select a U.S. state from the drop down and click the plus button. This will add it to your taxable states.
To add all 50 states, simply continue to click the plus button, as the drop-down list will automatically populate with the next unconfigured state, in alphabetical order. |
For self managed, you must either supply the tax rate for the state and local jurisdictions OR select the "Use UltraCart Managed Rates".
The dialog window displays the following following settings:
Field | Description |
---|---|
Quickbooks Code | Self managed tax states may provide a custom QuickBooks Code for assigning a tax rate within QuickBooks. All other tax providers merely send down the actual state, county, and city names to QuickBooks and the tax jurisdictions are automatically created. |
Use UltraCart Managed Rates | Allow UltraCart to manage the Tax rates, eliminating the need to manually configure the rates for the State/County/City & Postal Code levels. |
Tax Shipping | If active, shipping is added to the taxable subtotal amount |
Tax Gift Wrap | If active, any gift wrap is added to the taxable subtotal amount |
Don't collect state tax | If active, the state tax rate is not collected, while the other jurisdictions may (or may not) be collected |
Don't collect county tax | If active, the county tax rate is not collected, while the other jurisdictions may (or may not) be collected |
Don't collect city tax | If active, the city tax rate is not collected, while the other jurisdictions may (or may not) be collected |
Don't collect postal code tax | If active, the postal code tax rate is not collected, while the other jurisdictions may (or may not) be collected |
After saving, the state will appear in the list of states configured for taxation.
Click the plus button at the right of the state to add county tax rates. The process is the same as the state tax rates.
Once the county is saved, click the plus sign next to the county to add city rates.
The Add City dialog contains the same fields as the state and county. Repeat this process for as many states, counties, and cities needed.
If you need to add postal code tax rates to a city, click the plus sign at the right of the city and follow the same process as the other jurisdictions.
Other countries are located to the right of the screen. The process for other countries is the same except it begins at the country level.
For tax exempt customers you will need to utilize UltraCart's customer profiles functionality. Customer profiles can be marked as tax exempt. Typically merchants will allow tax exempt customer profiles to signup as wholesale customers and upload their tax exemption certificate (link available under Operations → Customer Profiles → Settings). Please note that if you're utilizing TaxJar and Avalara you will also need to perform additional setup to link the UltraCart customer profile to the tax exempt profile within their tax management system.
If you need to verify or troubleshoot a tax calculation for an order, please first compare the rate using this simple sales tax look up tool: https://www.taxjar.com/sales-tax-calculator/ If you see a discrepancy between the recorded sales tax in an order compared to the tax displayed in the look up tool, then you can further troubleshoot the issue by reviewing the logs for either Avalara or TaxJar. |
Avalara and TaxJar record important communications for review. Shopping cart tax calculations are not stored to logs, but any operation against an order is logged. This means the final tax calculation is stored, as well as any transaction notifications (order placed and order refunded).
Within the Avalara and TaxJar settings screens are log buttons. Clicking either button will display a log history.
The log files will contain the request and response make to the tax service.
Here is an example. If the logs fail to assist you in solving any problems, notify UltraCart support and involve them.
estimateTax for order [START] ===== estimate tax request start ===== { "lines": [ { "number": "1", "quantity": 3, "amount": 58.5, "itemCode": "Bone", "description": "TJ\u0027s DOGGIE BONES (6 lbs.)\nCode: 4W5S41JXG4\nCode: B2BJZVM1PF\nCode: JMK9XQRRRZ" } ], "type": "SalesOrder", "companyCode": "", "date": "Nov 8, 2018 1:57:19 PM", "customerCode": "GuestCustomer", "purchaseOrderNo": "", "addresses": { "singleLocation": { "line1": "30 Pryor Street", "line2": "", "city": "Atlanta", "region": "GA", "country": "US", "postalCode": "30303" } }, "description": "DEMO-0009104135", "email": "joe@somewhere.com" } ===== estimate tax request end ===== ===== estimate tax response start ===== { "id": 0, "code": "dfaf643b-d866-407b-a1a4-3f3499e7fd1d", "companyId": 0, "date": "Nov 8, 2018 12:00:00 AM", "paymentDate": "Nov 8, 2018 12:00:00 AM", "status": "Temporary", "type": "SalesOrder", "customerVendorCode": "GuestCustomer", "reconciled": false, "purchaseOrderNo": "", "totalAmount": 58.5, "totalExempt": 0.0, "totalDiscount": 0.0, "totalTax": 5.21, "totalTaxable": 58.5, "totalTaxCalculated": 5.21, "adjustmentReason": "NotAdjusted", "locked": false, "version": 1, "exchangeRateEffectiveDate": "Nov 8, 2018 12:00:00 AM", "exchangeRate": 1.0, "description": "DEMO-0009104135", "email": "joe@somewhere.com", "modifiedDate": "Nov 8, 2018 6:57:17 PM", "modifiedUserId": 1152574, "taxDate": "Nov 8, 2018 12:00:00 AM", "lines": [ { "id": 0, "transactionId": 0, "lineNumber": "1", "description": "TJ\u0027s DOGGIE BONES (6 lbs.)\nCode: 4W5S41JXG4\nCode: B2BJZVM1PF\nCode: JMK9XQRRRZ", "discountAmount": 0.0, "exemptAmount": 0.0, "exemptCertId": 0, "isItemTaxable": true, "itemCode": "Bone", "lineAmount": 58.5, "quantity": 3.0, "reportingDate": "Nov 8, 2018 12:00:00 AM", "tax": 5.21, "taxableAmount": 58.5, "taxCalculated": 5.21, "taxCode": "PP051195", "taxCodeId": 38011, "taxDate": "Nov 8, 2018 12:00:00 AM", "taxIncluded": false, "details": [ { "id": 0, "transactionLineId": 0, "transactionId": 0, "country": "US", "region": "GA", "exemptAmount": 0.0, "jurisCode": "13", "jurisName": "GEORGIA", "stateAssignedNo": "", "jurisType": "STA", "nonTaxableAmount": 0.0, "rate": 0.040000, "tax": 2.34, "taxableAmount": 58.5, "taxType": "Sales", "taxName": "GA STATE TAX", "taxAuthorityTypeId": 45, "taxCalculated": 2.34, "rateType": "General", "rateTypeCode": "G" }, { "id": 0, "transactionLineId": 0, "transactionId": 0, "country": "US", "region": "GA", "exemptAmount": 0.0, "jurisCode": "121", "jurisName": "FULTON", "stateAssignedNo": "060A", "jurisType": "CTY", "nonTaxableAmount": 0.0, "rate": 0.030000, "tax": 1.76, "taxableAmount": 58.5, "taxType": "Sales", "taxName": "GA COUNTY TAX", "taxAuthorityTypeId": 45, "taxCalculated": 1.76, "rateType": "General", "rateTypeCode": "G" }, { "id": 0, "transactionLineId": 0, "transactionId": 0, "country": "US", "region": "GA", "exemptAmount": 0.0, "jurisCode": "04000", "jurisName": "ATLANTA", "stateAssignedNo": "060A", "jurisType": "CIT", "nonTaxableAmount": 0.0, "rate": 0.015000, "tax": 0.88, "taxableAmount": 58.5, "taxType": "Sales", "taxName": "GA CITY TAX", "taxAuthorityTypeId": 45, "taxCalculated": 0.88, "rateType": "General", "rateTypeCode": "G" }, { "id": 0, "transactionLineId": 0, "transactionId": 0, "country": "US", "region": "GA", "exemptAmount": 0.0, "jurisCode": "ENVK0", "jurisName": "ATLANTA TSPLOST TL", "stateAssignedNo": "060A", "jurisType": "STJ", "nonTaxableAmount": 0.0, "rate": 0.004000, "tax": 0.23, "taxableAmount": 58.5, "taxType": "Sales", "taxName": "GA SPECIAL TAX", "taxAuthorityTypeId": 45, "taxCalculated": 0.23, "rateType": "General", "rateTypeCode": "G" } ] } ], "addresses": [ { "id": 0, "transactionId": 0, "boundaryLevel": "Address", "line1": "30 Pryor Street", "line2": "", "line3": "", "city": "Atlanta", "region": "GA", "postalCode": "30303", "country": "US", "taxRegionId": 2131921, "latitude": "33.753427", "longitude": "-84.389125" } ], "summary": [ { "country": "US", "region": "GA", "jurisType": "State", "jurisCode": "13", "jurisName": "GEORGIA", "taxAuthorityType": 45, "stateAssignedNo": "", "taxType": "Sales", "taxName": "GA STATE TAX", "rateType": "General", "taxable": 58.5, "rate": 0.040000, "tax": 2.34, "taxCalculated": 2.34, "nonTaxable": 0.0, "exemption": 0.0 }, { "country": "US", "region": "GA", "jurisType": "County", "jurisCode": "121", "jurisName": "FULTON", "taxAuthorityType": 45, "stateAssignedNo": "060A", "taxType": "Sales", "taxName": "GA COUNTY TAX", "rateType": "General", "taxable": 58.5, "rate": 0.030000, "tax": 1.76, "taxCalculated": 1.76, "nonTaxable": 0.0, "exemption": 0.0 }, { "country": "US", "region": "GA", "jurisType": "City", "jurisCode": "04000", "jurisName": "ATLANTA", "taxAuthorityType": 45, "stateAssignedNo": "060A", "taxType": "Sales", "taxName": "GA CITY TAX", "rateType": "General", "taxable": 58.5, "rate": 0.015000, "tax": 0.88, "taxCalculated": 0.88, "nonTaxable": 0.0, "exemption": 0.0 }, { "country": "US", "region": "GA", "jurisType": "Special", "jurisCode": "ENVK0", "jurisName": "ATLANTA TSPLOST TL", "taxAuthorityType": 45, "stateAssignedNo": "060A", "taxType": "Sales", "taxName": "GA SPECIAL TAX", "rateType": "General", "taxable": 58.5, "rate": 0.004000, "tax": 0.23, "taxCalculated": 0.23, "nonTaxable": 0.0, "exemption": 0.0 } ] } ===== estimate tax response end ===== estimateTax for order [END] |
The "Custom Period Sales" report contains sections pertaining to the Sales Tax collected for the orders during the reporting period.
To run the Custom Period Sales Report, navigate:
MAIN MENU → OPERATIONS → REPORTING → (REPORTS SECTION) CUSTOM PERIOD SALES
Q: What is the best option for collecting V.A.T. for orders shipped to the E.U.?
A: The best Sales tax integration option for merchants that will be processing orders where V.A.T. (Value Added Tax) are collected, is the TaxJar integration.
Q: Where can I review a summary regarding the recent changes to the laws and regulations pertaining to Sales Tax collection for online merchants?
A: A great place to start is here: https://www.avalara.com/us/en/learn/sales-tax/south-dakota-wayfair.html
(*Please make sure to consult your CPA/Tax Professional to ensure that your business is in compliance with all tax jurisdictions, as this is outside the scope of the UltraCart service.)
Q: How can I determine the number of sales and revenue per state for a particular time period?
A: The custom period sales report (located under Operations > Reporting) has a section for Sales by US State which will provide those details.
Q: How is Sales Tax calculated if the item being sold is not shippable?
A: The sales tax calculation will use the customer billing address to calculate sales tax, if tax is being collected.
Q: How can I investigate the sales tax calculation in an order?
A: Please review the troubleshooting section earlier in this document. You can use the tax rate calculation tool to compare the recorded sales tax in an order. If a discrepancy is observed, then you can further troubleshoot the calculation by viewing the logs to see the underlying calculation details.