Sales Tax for In-Store Pickup Orders
Understand how sales tax is calculated when customers choose in-store pickup at checkout, and what options are available when your tax compliance requires using the pickup location's address
Overview
When customers choose in-store pickup, sales tax is calculated by your tax provider — not ShipperHQ. Whether that calculation uses the store's pickup address or the customer's shipping address depends on your ecommerce platform. On Magento and Adobe Commerce, the pickup location's address is passed to your tax provider automatically. On BigCommerce and Shopify, tax is calculated based on the customer's entered shipping address.
For most merchants, the default behavior is sufficient. If your business has sourcing rules or compliance requirements that require tax to be based on the point-of-transfer location, this article explains your options.
Table of Contents
How It Works
ShipperHQ determines which pickup locations to display at checkout and presents them to the customer. However, ShipperHQ does not modify the shipping address stored in the checkout session. Your tax provider receives the address that your ecommerce platform passes to it — which is typically the customer's entered shipping address, not the selected pickup location's address.
The result is that, on most platforms, sales tax is calculated based on the customer's shipping address rather than the store's pickup location.
Platform-Specific Behavior
Magento / Adobe Commerce
On Magento 1 and Magento 2 (including Enhanced Checkout for Magento 2), when a customer selects a Store Pickup carrier, the delivery address in the checkout session is updated to the selected pickup location's address. This means your tax provider receives the pickup location's address and can calculate sales tax accordingly.
No additional configuration is required for this behavior — it is part of how the Magento integration works.
BigCommerce
On BigCommerce, ShipperHQ does not replace the customer's shipping address with the pickup location's address. Your tax provider receives the customer's entered shipping address and calculates tax based on that address.
For most merchants, this default behavior is acceptable. If your business has specific tax compliance requirements — for example, sourcing rules that require tax to be based on point-of-transfer — see Workarounds and Next Steps below.
Shopify
Shopify behaves the same as BigCommerce in this regard. ShipperHQ does not update the shipping address with the pickup location's address, so tax is calculated based on the customer's entered address.
Workarounds and Next Steps
If calculating sales tax based on the pickup location's address is a compliance requirement for your business, the following options are available.
Accept the default behavior. For many merchants, calculating tax based on the customer's shipping address is sufficient and simplifies the checkout process. Consider whether your specific tax obligations require pickup-location sourcing before pursuing a custom solution.
Implement a custom integration with your tax provider. On BigCommerce and Shopify, passing the pickup location's address to your tax provider requires custom development work. This typically involves intercepting the checkout data and substituting the pickup location's address before it reaches your tax provider's API. This is not a native ShipperHQ feature — it would be scoped and built as a custom integration with your development team or a ShipperHQ implementation partner.
Consult your tax provider. Some tax providers have their own methods for handling pickup-location sourcing within their platform. Contact Avalara, Vertex, or your tax provider directly to understand what configuration options they offer before assuming custom development is required.
To discuss your specific setup or explore whether a custom integration is feasible, contact ShipperHQ support.