Calculating US and Canadian Tax {#tax-request-calculating-us-and-canadian-tax}
==============================================================================

To receive the most accurate tax calculation, you will need specific information for the field values. Follow these steps to determine the values for the fields.
One tax service request should not include more than 50 line items. When you send a request with more than 50 line items, the request could time out.  
The Tax Calculation Service uses line-level rounding. Tax amounts for each jurisdictional detail will be rounded and then aggregated to the line. For example, 8.5% total tax that includes 1.25% city tax, 1.25% county tax, and 6% state tax, levied on a 10.00 item would result in a total tax of 0.86 based on amounts of 0.13 city tax, 0.13 county tax, and 0.60 state tax.

Step 1: Nexus {#tax-request-calculating-us-and-canadian-tax_step-one-nexus}
---------------------------------------------------------------------------

Identify the location of your company's nexus. Products are taxable only when the customer's shipTo_state field value matches a state or province in which your company has nexus. If the ship to fields are not included in the request, the service will use the bill to fields to determine the tax amount. Use the taxService_nexus field to list the states or provinces in which your company has nexus. Alternatively, you can use the taxService_noNexus field to list states that should not be taxed.
You cannot combine the taxService_nexus and taxService_noNexus fields in the same request.  
When you do not specify your nexus locations, the tax calculation service processes your request as if every state or province is taxable.

* When you do not specify your nexus locations, or when a value of the nexus field matches the value for the shipTo_state field, the service calculates the applicable tax for the product.
* When the value for the shipTo_state field does not match any state or province where you have nexus, the service assigns zero tax.

For more information, see [Tax Nexus](/docs/cybs/en-us/tax-calculation/developer/all/so/tax-calculation/tax-overview/tax-plan-planning-for-tax-calculation/tax-plan-nexus.md "").

Step 2: Product Codes {#tax-request-calculating-us-and-canadian-tax_step-two-codes}
-----------------------------------------------------------------------------------

If the product has special tax considerations, you can provide the appropriate tax product code in the item_#_productCode field in the request.  
For more information, see [Product Codes](/docs/cybs/en-us/tax-calculation/developer/all/so/tax-calculation/tax-overview/tax-plan-planning-for-tax-calculation/tax-plan-product-codes.md "").

Step 3: Addresses {#tax-request-calculating-us-and-canadian-tax_address}
------------------------------------------------------------------------

To receive the most accurate tax calculation possible, include the following address information in the request:

* Ship-to address, in fields in the shipTo fields group. When multiple cities are within a postal code area, the optional request field shipTo_city value improves the accuracy of the calculated tax.
* Product code, in the item_#_productCode field.
* Nexus, in the taxService_nexus field---or if it is easier, you can use the taxService_noNexus field to provide a list of states in which you do not have nexus.

When the tax calculation service succeeds, the response includes the taxReply_grandTotalAmount field.

For more address-related information, see [Address Requirement](/docs/cybs/en-us/tax-calculation/developer/all/so/tax-calculation/tax-overview/tax-plan-planning-for-tax-calculation/tax-plan-address-intro.md "").

Step 4: When to Calculate Tax {#tax-request-calculating-us-and-canadian-tax_step-four-when}
-------------------------------------------------------------------------------------------

Determine when you will provide tax calculations during the customer transaction. Tax calculation can occur before or after determining the final order total. See Tax Reporting to know how this service can impact when you would want to request the tax service.  
For more information, see [When to Calculate Taxes](/docs/cybs/en-us/tax-calculation/developer/all/so/tax-calculation/tax-overview/tax-plan-planning-for-tax-calculation/tax-plan-when-to-calculate-taxes.md "").

Endpoint {#tax-request-calculating-us-and-canadian-tax_tax-endpoint}
--------------------------------------------------------------------

Set the `taxService` field to `true`.  
Send the request to `https://ics2ws.ic3.com/commerce/1.x/transactionProcessor`.
