User Guide
Everything you need to configure and operate StickTax on your BigCommerce store.
Last updated: April 2026 · v1.5
Overview
StickTax is a BigCommerce app that calculates cigar excise tax and state sales tax at checkout. It replaces the manual guesswork of cigar-specific tax calculations with an automated engine that runs on every checkout.
General tax providers like Avalara and TaxJar handle sales tax well, but they don't support cigar-specific excise tax methods: per-stick flat rates, wholesale-basis percentages, tiered caps, or combinations of these. StickTax was built specifically for this gap.
What StickTax does
- Calculates cigar excise tax using the correct method for each state (per-stick, wholesale percentage, wholesale with cap, wholesale with tiered cap, combo, or legacy MSRP methods)
- Calculates state sales tax based on your configured rates
- Distinguishes between singles and boxes, applying the correct stick count for box variants
- Syncs your BigCommerce product catalog automatically
- Logs every tax calculation for reporting and export
What StickTax does not do
- StickTax does not provide tax advice or regulatory guidance
- StickTax does not automatically update rates when tax laws change — you configure and maintain your own rules
- StickTax does not handle tax filing or remittance — it calculates and collects at checkout
- StickTax does not modify your products, inventory, or store settings beyond the tax provider connection
Your responsibility: StickTax provides the calculation engine. You provide the rates. It is your responsibility to ensure your configured rates match current state regulations. We strongly recommend consulting a qualified tax professional.
Requirements
- A BigCommerce store (any plan)
- Products configured with variants for singles and boxes (standard BigCommerce setup)
- Product pricing set to exclusive of tax in BigCommerce settings
- Products assigned to the Default Tax Class (not "Non-taxable")
No code changes required. StickTax works with your existing BigCommerce catalog. You don't need to modify your theme, add custom fields, or change your product structure.
Installation
For step-by-step installation instructions, see the Installation Guide. Here's a summary:
Install StickTax from the BigCommerce App Marketplace. Authorize the requested permissions.
Open StickTax from Apps → My Apps in your BigCommerce control panel.
Sync your catalog, configure your state tax rules, and set up profile classes for your box sizes.
StickTax begins calculating tax at checkout as soon as you have at least one active excise or sales tax rule and a synced catalog.
First-Time Setup Checklist
After installation, complete these steps in order:
- Sync your catalog — Go to the Products tab and click "Sync Catalog." This pulls all your products and variants from BigCommerce.
- Create profile classes — Go to Profile Classes and add entries for each box size you sell (e.g. "Box of 20", "Box of 24"). This tells StickTax how many sticks are in each box.
- Assign classes to box variants — Go back to Products and assign the correct profile class to each box variant using the dropdown in the Class column.
- Set wholesale costs — In StickTax, go to the Products tab and enter your wholesale cost for each variant in the WHOLESALE column. This is what you pay your distributor — the tax basis for most states as of 2025. Re-syncing your catalog won't overwrite these values. If you still use legacy MSRP methods for any state, MSRP comes from BigCommerce (Products → Edit → Pricing → MSRP).
- Configure excise tax rules — Go to Excise Tax Rules. For each state where you ship, activate the rule, select the correct method, and enter the rates.
- Configure sales tax rules — Go to Sales Tax. For each state where you have nexus, activate the rule and enter the rate.
- Test checkout — Open your storefront in an incognito window, add a product to cart, and checkout with a shipping address in a state you configured. Verify the tax lines appear.
Excise Tax Rules
The Excise Tax Rules tab is the core of StickTax. This is where you tell StickTax how each state taxes cigars.
All 50 states plus DC are pre-populated when you install with 2025 wholesale-basis defaults, all inactive. Each row has the following fields:
| Field | Description |
|---|---|
| Active | Checkbox. Only active rules calculate tax at checkout. Leave unchecked for states where you don't ship or don't owe excise tax. |
| Method | The excise tax calculation method this state uses. See Tax Methods Explained below. |
| Per Stick | Dollar amount per individual cigar. Used by the per_stick and combo methods. |
| Rate % | Percentage rate. Enter as a whole number (e.g. 30 for 30%). Used by all percentage methods — applies to whatever basis the method implies (wholesale or MSRP). The column is named msrp_pct in the database for backward compatibility. |
| Cap / Stick | Maximum tax per stick in dollars. Used by pct_wholesale_capped, pct_msrp_capped, and combo methods. If the percentage calculation exceeds this cap, the cap is applied instead. |
| Tiered Cap (Low / High / Threshold) | Only used by pct_wholesale_tiered_cap. Three fields: the lower-tier cap (when wholesale-per-stick is below the threshold), the upper-tier cap (at or above the threshold), and the wholesale-per-stick dollar threshold that separates them. Vermont is the current use case. |
| Applies To | Which product formats this rule applies to: All (singles and boxes), Singles Only, or Boxes Only. |
Click Save on each row after making changes. The button turns amber when you have unsaved changes and shows a green checkmark when saved.
Tip: You only need to configure states where you actually ship cigars and owe excise tax. Leaving a state inactive means StickTax returns $0 excise tax for that state — checkout still works normally.
Tax Methods Explained
StickTax supports seven excise tax methods as of v1.1. Most states use one of the wholesale-basis methods; MSRP-basis methods are kept for backward compatibility with older configurations.
Per Stick
A fixed dollar amount per cigar. The simplest method. Used by Alabama, Arizona, Oklahoma, and Texas.
| Formula | Example |
|---|---|
| per_stick_rate × stick_count | $0.218/stick × 5 singles = $1.09 tax (Arizona) |
For box variants, StickTax multiplies by the number of cigars in the box. A "Box of 20" at $0.218/stick = $4.36 tax.
Percentage of Wholesale
A percentage of the wholesale cost (what you paid your distributor). This is the correct basis for most state excise tax laws as of 2025.
| Formula | Example |
|---|---|
| rate × wholesale_per_stick × stick_count | 75% × $6.00 × 1 = $4.50 tax (New York) |
Percentage of Wholesale with Cap
Same as wholesale percentage, but with a maximum tax per stick. The most common method — used by Indiana, Connecticut, Michigan, New Jersey, Oregon, Washington, and many others.
| Formula | Example |
|---|---|
| min(rate × wholesale_per_stick, cap) × stick_count | min(30% × $12.00, $3.00) × 1 = $3.00 tax — capped (Indiana) |
Without the cap: 30% × $12.00 = $3.60. With the $3.00 cap: tax is $3.00. The cap protects against high tax on premium cigars.
Percentage of Wholesale with Tiered Cap
The wholesale percentage stays the same, but the per-stick cap changes based on the cigar's wholesale price. Vermont is the current use case.
| Formula | Example |
|---|---|
| min(rate × wholesale, tier_cap) × sticks where tier_cap = wholesale ≥ threshold ? cap_high : cap_low | Vermont: 92% rate, $2 cap under $10 wholesale, $4 cap at $10+ Wholesale $8/stick → min(92%×$8, $2) = $2 tax Wholesale $15/stick → min(92%×$15, $4) = $4 tax |
Percentage of MSRP (legacy)
A percentage of MSRP, multiplied by quantity. Preserved for backward compatibility with older configurations. Most states no longer use MSRP as the legal basis — use pct_wholesale unless you have a specific reason.
| Formula | Example |
|---|---|
| rate × MSRP_per_stick × stick_count | 21.25% × $12.00 × 1 = $2.55 tax |
Percentage of MSRP with Cap (legacy)
Same as MSRP percentage, but with a per-stick maximum. Preserved for backward compatibility.
| Formula | Example |
|---|---|
| min(rate × MSRP_per_stick, cap) × stick_count | min(24% × $12.00, $0.72) × 1 = $0.72 tax (capped) |
Combo
A per-stick rate plus a capped percentage, added together. Arkansas style. The combo method uses wholesale cost as its percentage basis when set, falling back to MSRP.
| Formula | Example |
|---|---|
| (per_stick × sticks) + min(rate × basis, cap) × sticks | ($0.68/stick × 1) + min(68% × $6.00, $0.50) × 1 = $0.68 + $0.50 = $1.18 tax (Arkansas-style) |
How box variants are handled
For all methods that use a per-stick calculation, StickTax needs to know how many sticks are in the box. This is determined by the profile class assigned to the variant. If a box variant has a profile class of "Box of 20", StickTax multiplies the per-stick tax by 20.
If no profile class is assigned, StickTax defaults to 20 cigars per box.
Basis resolution
For wholesale-basis methods, StickTax uses the wholesale cost you set on each variant in the Products tab. If a variant has no wholesale cost set when a wholesale rule fires, StickTax falls back to MSRP × 0.5 — a reasonable estimate, but set real wholesale costs for accurate compliance.
For MSRP-basis methods, StickTax uses the MSRP value from BigCommerce. If no MSRP is set, it falls back to the BigCommerce retail price.
Sales Tax Rules
The Sales Tax tab lets you configure state sales tax rates for states where you have nexus.
| Field | Description |
|---|---|
| Active | Checkbox. Enable for states where you collect sales tax. |
| Rate | Sales tax percentage. Enter as a whole number (e.g. 7 for 7%). |
Sales tax is calculated as: item_price × quantity × rate.
Already using another sales tax provider? If you're using Avalara or TaxJar for sales tax and only need StickTax for excise tax, leave all sales tax rules inactive. StickTax will only calculate excise tax.
Catalog Sync
StickTax syncs your BigCommerce product catalog to know what you sell, what the SKUs are, and which variants are singles vs. boxes.
How to sync
- Go to the Products tab.
- Click Sync Catalog.
- StickTax pulls all products and variants from your BigCommerce store via the API.
What gets synced
- Product name
- Variant SKU
- Variant label (option values like "Toro / Box of 20")
- Retail price
- MSRP (from BigCommerce's variant-level or product-level MSRP field — used by legacy MSRP methods and as the
MSRP × 0.5wholesale fallback) - Active/inactive status
Wholesale cost is not pulled from BigCommerce — you enter it directly in StickTax's Products tab and it survives catalog re-syncs.
Format detection
StickTax automatically detects whether each variant is a single, box, or bundle by reading the variant label:
- Labels containing "box", "pack", "tin", "cabinet", or a count like "20ct" or "20 count" →
box - Labels containing "bundle" or "mazo" →
bundle - Labels containing "single", "each", or "stick" →
single - No clear indicator → defaults to
single
If the auto-detection gets a variant wrong, you can change the format manually using the dropdown in the Products tab.
When to re-sync
- After adding new products to your BigCommerce store
- After changing product prices
- After modifying variant labels or SKUs
- Periodically to ensure the catalog is current
Sync cleans up automatically. When you sync, StickTax removes any variants from its database that no longer exist in your BigCommerce catalog. This keeps your product list clean and accurate.
Ignoring Non-Cigar Products
If your store sells non-cigar items — accessories, humidors, lighters, cutters, apparel — you can mark them as Ignored so StickTax skips excise tax on those products. Sales tax still applies to ignored products if you have active sales tax rules.
How to ignore a product
- Go to the Products tab.
- Find the product and expand it to see variants.
- Click the Ignore button on the right side of each variant row you want to exclude from excise tax.
- The row dims and shows an amber "IGNORED" badge. The format and wholesale cost fields are disabled.
To reverse this, click Unignore on any ignored variant. It returns to normal excise tax calculation.
How it works at checkout
When a customer checks out with an ignored product, StickTax returns $0 excise tax for that item but still calculates sales tax normally. This is different from BigCommerce's "Non-taxable" tax class, which removes all tax (both excise and sales).
Filtering ignored products
Use the Ignored filter button in the Products tab to see all ignored variants at a glance. The count in parentheses shows how many variants are currently ignored.
Ignore vs. Non-taxable: Use Ignore in StickTax for products that should still collect sales tax but not excise tax (accessories, humidors). Use BigCommerce's Non-taxable tax class for products that should collect no tax at all.
Profile Classes
Profile classes tell StickTax how many cigars are in each box type. This is essential for accurate per-stick tax calculations on box variants.
Creating a profile class
StickTax pre-populates common box sizes (10, 12, 20, 21, 22, 24, 25) when you first install. You can add more or delete ones you don't need.
- Go to the Profile Classes tab.
- Enter a name (e.g. "Box of 20") and the number of cigars per box (e.g. 20).
- Click Add.
Common profile classes
| Name | Cigars Per Box |
|---|---|
| Box of 10 | 10 |
| Box of 20 | 20 |
| Box of 24 | 24 |
| Box of 25 | 25 |
| Bundle of 10 | 10 |
| Bundle of 20 | 20 |
Assigning classes to variants
After creating profile classes, go to the Products tab. Box and bundle variants will show a dropdown in the Class column. Select the appropriate class for each variant.
What if I don't assign a class? StickTax defaults to 20 cigars per box for any box variant without a class assignment. If your boxes contain a different number of cigars, the tax calculation will be incorrect. Always assign classes to box variants.
Wholesale Cost & MSRP
StickTax uses two different price points depending on the excise tax method configured for a state. Wholesale cost is the primary basis for most states; MSRP is used by legacy methods and as a fallback.
Wholesale cost (primary, v1.1+)
Wholesale cost is what you pay your distributor per unit. As of 2025, this is the correct legal basis for cigar excise tax in most states. StickTax stores wholesale cost directly — it's not pulled from BigCommerce because BigCommerce doesn't have a native wholesale-cost field.
- In StickTax, go to the Products tab.
- Find the product and expand it to see variants.
- In the WHOLESALE column, enter your wholesale cost per unit. For single variants, enter the per-stick cost. For box or bundle variants, enter the full-box wholesale cost — StickTax divides by the cigars-per-box value from the assigned profile class automatically.
- The value saves automatically when you leave the field. A green border flashes on successful save, red if invalid.
Re-syncing your catalog is safe. Running Sync Catalog pulls fresh product data from BigCommerce — names, variants, prices — but does not touch the wholesale costs you've entered. Your cost data is never overwritten by BC's catalog sync.
Wholesale fallback behavior
If a wholesale-method rule fires at checkout and the variant's wholesale cost is blank, StickTax falls back to MSRP × 0.5 as a last-resort estimate. This matches the fallback used by the SmōkHaus Ops Center. It produces a reasonable number but is not a substitute for real cost data — set actual wholesale costs for accurate compliance.
MSRP (legacy + fallback)
MSRP is used by the legacy excise methods (pct_msrp, pct_msrp_capped) and as the source for the MSRP × 0.5 wholesale fallback. MSRP lives in BigCommerce.
- In your BigCommerce control panel, go to Products → [Product Name] → Edit.
- Click Show Advanced Pricing under the Pricing section.
- Enter the MSRP value in the MSRP field. For products with variants, set the MSRP on each variant individually in the Variants table.
- Save the product.
- Return to StickTax and click Sync Catalog to pull the updated MSRP values.
MSRP fallback behavior
If no MSRP is set on a variant, StickTax checks the product-level MSRP. If neither is set, it falls back to the BigCommerce retail price.
Prices for boxes
Set both wholesale cost and MSRP to the full box value, not the per-stick value. StickTax handles the per-stick math internally using the cigars-per-box value from the assigned profile class.
How Checkout Works
Here's what happens behind the scenes on every checkout:
A customer enters their shipping address at checkout. BigCommerce sends a tax estimate request to StickTax with the items in the cart and the shipping state.
StickTax identifies your store by the authentication credentials registered during installation.
StickTax resolves each item's SKU from the cart to find the matching variant in your synced catalog, determining whether it's a single or box and what the MSRP is.
StickTax looks up your excise tax rule and sales tax rule for the shipping state.
For box variants, StickTax looks up the profile class to get the cigars-per-box count.
StickTax calculates excise tax and sales tax for each item and returns the amounts to BigCommerce.
The customer sees the tax lines in their order total. When the order is completed, BigCommerce sends a commit notification and StickTax logs the tax amounts for your records.
This entire process happens in under 2 seconds. BigCommerce calls StickTax multiple times during a single checkout (after address entry, after shipping method selection, etc.) — each call returns updated tax amounts.
Safety first: If anything goes wrong during a tax calculation — a missing SKU, a database error, a timeout — StickTax returns $0 tax rather than blocking the checkout. Your customer's purchase is never interrupted.
Tax History & Export
The Tax History tab shows every tax calculation committed by BigCommerce after order completion. By default it shows the current quarter — use the filters to narrow or expand the view.
Filtering
Use the controls at the top of the history tab to filter records:
- State dropdown: Filter by a specific state, or select "All States" to see everything.
- Date range: Use the From and To date pickers to set a custom range.
- Quick presets: Click This Month, Last Month, This Qtr, Last Qtr, YTD, or All for common ranges.
Summary totals
A summary bar shows the total excise tax, total sales tax, and combined total for the current filtered view, along with the record count. These totals update as you change filters — useful for quarterly filing.
What's logged
| Field | Description |
|---|---|
| Order | BigCommerce order ID |
| State | Shipping state (2-letter code) |
| Excise Tax | Cigar excise tax amount |
| Sales Tax | State sales tax amount |
| Total Tax | Combined excise + sales tax |
| Date | Order date |
Pagination
Records are shown 50 per page. Use the Prev/Next buttons at the bottom to navigate. The summary totals always reflect the full filtered set, not just the current page.
Exporting to CSV
Click the Export CSV button to download the filtered tax history as a CSV file. The export respects your current filters — if you're viewing Q1 for Indiana, the CSV contains only those records. This file is formatted for easy import into accounting software or for sharing with your tax accountant.
Settings
The Settings tab shows your store information, subscription status, and administrative actions.
Store information
Displays your store name, store hash, plan status, trial end date (if applicable), and installation date.
Manage Subscription
Opens the BigCommerce billing management page where you can view your StickTax subscription status, update your plan, or cancel.
Re-register Tax Connection
If BigCommerce loses the tax provider connection (rare), click this button to re-register StickTax's credentials with your store. This does not affect your rules or data.
Troubleshooting
Tax not showing at checkout
- Check that the state has an active rule. Go to Excise Tax Rules and verify the state is checked as Active with a method and rates configured.
- Check that your catalog is synced. If the product's SKU isn't in StickTax's catalog, it can't match the item and returns $0 tax. Go to Products and re-sync.
- Check the product's tax class in BigCommerce. If a product is set to "Non-taxable" or has
tax_exempt: true, StickTax correctly returns $0. Change the product to "Default Tax Class" in BigCommerce. - Check that prices are exclusive of tax. In BigCommerce → Settings → Tax, ensure your prices are set to "Prices entered are exclusive of tax."
- Enter a complete shipping address. StickTax needs the state code from the shipping address. If the customer hasn't entered their full address yet, BigCommerce may not send the state to StickTax.
- Verify the tax connection is active. Go to BigCommerce → Settings → Tax and confirm StickTax shows as the active tax provider for United States. If not, go to StickTax Settings and click "Re-register Tax Connection."
Tax amount seems wrong
- Check the MSRP value. If you're using an MSRP-based method and haven't set the MSRP in BigCommerce, StickTax uses the retail price as a fallback. Set MSRP in BigCommerce (Products → Edit → Pricing → MSRP) and re-sync.
- Check the profile class. For box variants, verify the correct profile class is assigned. A box of 24 assigned to a "Box of 20" class will calculate tax on 20 sticks instead of 24.
- Check the method and rates. Open the Excise Tax Rules tab and verify the method, percentage, and cap values match the current state regulations.
- Check the "Applies To" setting. If set to "Singles Only", box variants won't get excise tax (and vice versa). Most states should be set to "All."
Sync not working
- Ensure your store has at least one product with variants.
- Try syncing again — temporary API timeouts can cause a sync to fail.
- If sync continues to fail, contact [email protected].
"Cancelled" plan but I'm still subscribed
If your plan shows as cancelled but you believe you have an active subscription, check your BigCommerce billing page under Apps. If there's a mismatch, contact support.
Frequently Asked Questions
Glossary
| Term | Definition |
|---|---|
| Excise tax | A tax levied on the sale of specific goods — in this case, cigars. Separate from sales tax. Methods vary by state. |
| Sales tax | A general consumption tax applied as a percentage of the sale price. Varies by state. |
| MSRP | Manufacturer's Suggested Retail Price. Some states calculate excise tax as a percentage of MSRP rather than the actual sale price. |
| Per-stick rate | A fixed dollar amount of excise tax per individual cigar. |
| Cap per stick | The maximum excise tax allowed per cigar, regardless of the MSRP calculation. Prevents excessively high tax on premium cigars. |
| Stick count | The total number of individual cigars. For a single, stick count = quantity. For a box of 20, stick count = quantity × 20. |
| Profile class | A configuration that tells StickTax how many cigars are in a specific box type (e.g. "Box of 20" = 20 cigars per box). |
| Format | Whether a variant is a single, box, or bundle. Detected automatically from variant labels during catalog sync. |
| Variant | A specific purchasable option within a BigCommerce product. A cigar product might have variants for "Single" and "Box of 20." |
| SKU | Stock Keeping Unit. A unique code identifying each variant. StickTax uses SKUs to match checkout items to your synced catalog. |
| Nexus | A tax obligation in a state. If you have nexus in a state, you're required to collect and remit sales tax there. |
| Tax provider | A BigCommerce integration that calculates tax at checkout. StickTax is registered as a tax provider. |
| Commit | BigCommerce's confirmation that an order was completed. StickTax logs the final tax amounts when a commit is received. |
| Tenant | A single BigCommerce store connected to StickTax. Each tenant has isolated data — your rules, catalog, and history are private to your store. |
Support
For questions, issues, or feature requests:
- Email: [email protected]
- Include your store name and a description of the issue
- For tax calculation questions, include the order ID and the state — we can look up exactly what StickTax calculated and why