
QuickBooks Integrations
Square + QuickBooks & Xero: Complete Bookkeeper Setup Guide
Connect Square to QuickBooks or Xero the right way. Covers fee categorization, Square Capital advances, chargebacks, and deposit timing gaps.
10 min

January close. Your client's Clover POS report shows $1,247.32 in sales tax collected. You pull up the Sales Tax Liability account in QBO and see $1,203.18. The difference is $44.14.
Your first instinct might be to post a journal entry and move on. Don't. That $44.14 is a symptom, not the problem. Post it without knowing the cause and you'll be back in the same spot next month. You've masked a bad mapping that could snowball into an audit risk.
Sales tax collected is a liability, not revenue. The moment a customer pays $8.25 in sales tax at the register, that money belongs to the state; your client is just holding it until the remittance date. When your sync tool misroutes it — to a revenue account or nowhere — you're mis-stating the balance sheet every month.
What causes POS-to-QBO sales tax mismatches?
The most common causes are: (1) a sync tool folding tax into the revenue line instead of a liability account, (2) rounding differences that compound across hundreds of transactions, and (3) refunds that reverse the sale but leave the tax entry untouched. Find the specific cause first. That's the only way to fix it cleanly.
Here's what actually happened to that $44.14.
The Clover POS calculated sales tax correctly at the register: 8.25% on each taxable transaction, line by line, for every sale in January. Clover's internal report is almost certainly right. The issue is what happened after the transaction data left Clover and traveled into QBO via the sync tool.
POS systems and accounting software use different logic for sales tax. A POS calculates tax per line item at the point of sale. Rates can differ by product category — food vs. alcohol vs. retail, for example. QBO tracks tax as a liability account entry: whatever amount the sync tool sends gets posted to Sales Tax Payable.
The sync tool is the translation layer between these two systems, and the translation can fail in three distinct ways. Each failure leaves a different type of gap, and each requires a different fix.
Before you touch anything in QBO, you need to know which of the three you're dealing with.
This is the most common cause by a significant margin. Many sync tools — including native connectors from POS vendors — post one "Sales" line to QBO. That line bundles gross revenue and collected tax into a single number. Instead of splitting the $15,200 in revenue and $1,247 in tax into separate accounts, the tool posts $16,447 to income.
The result: your revenue is overstated by $1,247, your liability account shows $0, and QBO's sales tax feature has nothing to track. The "missing" $1,203 you see in the liability report is actually the partial amount QBO captured from whatever transactions did get properly mapped.
Fix: Go into your sync tool's account mapping settings. Look for a "Sales Tax" or "Tax Collected" field. If it points to an income account — Sales, Revenue, or any P&L line — remap it to Sales Tax Payable. Then re-sync the affected period. You'll need to reverse the incorrectly posted transactions and repost them correctly; don't just adjust going forward and leave prior months wrong.
Every individual transaction rounds sales tax to the nearest cent. At low volume, this is invisible. At POS volume (a restaurant doing 80 covers per day), the rounding errors accumulate.
The math: 80 covers/day × an average rounding difference of $0.003 per transaction × 31 days = $7.44 per month. A brunch spot doing 150 covers hits $14+ in rounding variance every month.
This isn't a QBO problem or a POS problem. It's arithmetic. The POS rounds each transaction independently; QBO may apply different rounding if the sync tool aggregates transactions before posting.
Fix: Rounding variances under ~$15/month are typically acceptable as a reconciling item. Document the variance in your reconciliation worksheet with a note: "Rounding variance: N transactions × avg $0.00X = $X.XX." Don't post a journal entry to eliminate it; instead, track it month over month to make sure it stays stable. A sudden spike in your rounding variance is a signal that something else changed.
A customer returns a $120 jacket. The sale reverses. But some sync tools record the refund as a negative sale line. They reverse the revenue entry but don't reverse the tax entry.
Result: the POS report correctly shows $1,247 in net tax collected (it subtracted the jacket's tax from the gross). QBO's liability account still shows the original pre-refund amount because the refund transaction only hit the revenue side.
Fix: Pull the POS refunds report for the period. Cross-reference each refund against QBO's Transaction Detail by Account report for Sales Tax Payable. For each refund where tax wasn't reversed, post a correcting journal entry:
Journal Entry — Sales Tax Refund Correction Dr. Sales Tax Payable $9.90 Cr. Sales Revenue ($120 × 8.25%) $9.90 To record tax reversal on refunded sale. Ref: [POS refund ID], [Date]
Check your sync tool's settings for a "Refund handling" or "Return tax treatment" option. Some tools have this disabled by default.
Shopify merchants selling in multiple states face the same problem. It's worth understanding even if your current POS clients are single-location.
Shopify calculates the correct rate at checkout for each state: 8.25% for Texas, 10.25% for Chicago, 7.25% for California base rate, and so on. The calculation is accurate. The problem is what happens when the sync tool posts all of that tax to a single "Sales Tax Payable" account in QBO.
A client registered in three states now has $8,400 sitting in Sales Tax Payable. There's no split showing Texas vs. California vs. Illinois. When quarterly filings come due, someone manually apportions the liability. If those numbers don't tie to state totals, you have an audit risk.
Tools like A2X and Synder support multi-jurisdiction posting. They split tax by state and route each amount to a separate liability sub-account. Native Shopify connectors typically post to a single account.
For clients registered in 3+ states, structure QBO for state-level tracking before the liability compounds. See the Shopify QBO integration guide for connector setup. See the POS integration tools comparison for a side-by-side on multi-jurisdiction support.
The account structure you set up now determines how easy or painful every future reconciliation will be. Get it right once.
Minimum viable structure (single-state client):
Account Name | Type | Detail Type |
|---|---|---|
Sales Tax Payable | Other Current Liability | Sales Tax Payable |
Multi-state structure (3+ nexus states):
Account Name | Type | Detail Type | Parent |
|---|---|---|---|
Sales Tax Payable | Other Current Liability | Sales Tax Payable | (root) |
Texas Sales Tax Payable | Other Current Liability | Sales Tax Payable | Sales Tax Payable |
California Sales Tax Payable | Other Current Liability | Sales Tax Payable | Sales Tax Payable |
Illinois Sales Tax Payable | Other Current Liability | Sales Tax Payable | Sales Tax Payable |
To create sub-accounts in QBO: Chart of Accounts → New. Set Type to "Other Current Liability," Detail Type to "Sales Tax Payable," check "Is sub-account," then select the parent account.
Once the sub-accounts exist, go into your sync tool's account mapping and map each state's tax field to the corresponding sub-account. A2X lets you do this per marketplace or sales channel. Synder maps by transaction tag or rule.
One note on QBO's built-in Automated Sales Tax feature: it's designed for businesses selling directly through QBO invoices. If your client's revenue flows through a POS or Shopify, the AST feature often double-counts or misapplies rates. For POS-integrated clients, turn AST off and manage sales tax liability manually through the account structure above and your sync tool's mapping. QBO's own sales tax help documentation covers how to disable it.
Work through these six steps at every close. The whole process takes 20-30 minutes when the account structure is set up correctly.
State tax authority references for rate verification: Texas Comptroller, California CDTFA, Illinois DOR.
Reconciling the numbers is the bookkeeper's job. Interpreting the tax law is the CPA's. Here's the line.
Stay in your lane:
Escalate to the CPA:
What to hand the CPA:
For more on how POS data flows into QBO, see the Clover QBO integration guide and the overview on payment reconciliation.
Sales tax gaps between your POS and QBO aren't random. The $44 problem has a specific cause, and once you know which of the three it is, the fix is straightforward. The month-end checklist keeps the liability account clean and the CPA's filing accurate. State auditors are getting better at spotting liability account gaps — don't give them one.
When you connect your POS through Growthy, account mapping routes tax to the liability account — not into revenue. Get started with Growthy.
Free during alpha. Read-only access. You review every sync.
Growthy is dedicated to helping businesses of all sizes make informed decisions. We adhere to strict editorial guidelines to ensure that our content meets and maintains our high standards.

Connect Square to QuickBooks or Xero the right way. Covers fee categorization, Square Capital advances, chargebacks, and deposit timing gaps.

Bookkeepers managing Shopify clients: compare A2X, Synder, Webgility, and native connectors. Decision matrix included for every client scenario.
