It's 4:47 PM on a Friday. Your bookkeeper notices that an invoice created in FreshBooks totals $1,045, but when it synced to Xero, the ledger shows $1,047. Same invoice, same client, same line items. Two dollars missing. She checks the other ten invoices from this week. Three of them have discrepancies. By Monday morning, she's spent six hours manually reconciling instead of closing the month. This isn't data corruption or a software bug. It's a reconciliation trap that catches most small accounting teams once they connect an invoicing tool to their accounting platform. The mismatch happens for predictable reasons—and once you understand them, you can catch them before they pile up. The five most common causes of invoice-to-accounting mismatches 1. Tax calculation order: line-item tax vs. invoice-level tax This is the most frequent culprit. Some invoicing tools calculate tax per line item and round each line, then sum the totals. Others sum the subtotal first, then apply tax once. The difference appears small but compounds. Example: Two line items at $500 each, 10% tax. Line-by-line (rounding at each step): $500 × 1.10 = $550.00, then $500 × 1.10 = $550.00. Total: $1,100.00. Subtotal-then-tax: ($500 + $500) × 1.10 = $1,100.00. Same result here, but with three or more lines and uneven amounts, it diverges. Add three line items at $333.33 each with 10% tax: Line-by-line: $333.33 × 1.10 = $366.66 (×3 = $1,099.98). Rounding rules in your tool determine whether this is $1,099.98 or $1,100.00. Subtotal-then-tax: ($333.33 × 3) × 1.10 = $1,099.99 or $1,100.00 depending on platform rounding. Neither method is wrong—but they must match between systems. Most mismatches come from your invoicing tool using one method and your accounting software using another. 2. Multi-currency invoices and exchange rate timing If you invoice in USD but your accounting ledger is in SGD, both your invoicing tool and accounting software convert the amount—but they may use different exchange rates or apply them at different times. FreshBooks might grab the rate when the invoice is created. Xero might use the rate on the due date, or the date you record the payment. The difference is usually 0.5–2%, but it shows up as a clear mismatch. Example: You create a USD 1,000 invoice on Monday at an exchange rate of 1.35 (USD 1 = SGD 1.35). FreshBooks records it as SGD 1,350. By Wednesday, the rate drifts to 1.33. When your client pays and Xero records the transaction, it converts at the payment rate and records SGD 1,330. Your books now show an FX gain or loss that wasn't intentional. 3. Sync timing and incomplete data Not all invoicing-to-accounting syncs happen instantly. Some tools sync daily, some hourly, and some require a manual trigger. If you create an invoice, immediately add a payment or credit note, then the payment syncs before the original invoice, your accounting platform may see the payment before the invoice—creating a negative invoice balance or a mismatched AR record. Worse: if your invoicing tool syncs the gross amount but your accounting software expects tax to be recorded separately, the sync may record the gross total without breaking out the tax component, leaving the tax report incomplete and the invoice total correct but the tax allocation wrong. 4. Discount and credit note timing You create an invoice for $1,045. The same day, the client disputes one line item, so you issue a $100 credit note. Your invoicing tool may show the net invoice as $945, but if the accounting sync treats the original invoice and credit note as separate transactions (which is correct from an audit trail perspective), they may sync at different times. If the invoice syncs before the credit note, your books temporarily show $1,045 when the actual AR should be $945. Most reconciliations catch this within a day, but it still creates a discrepancy during the interim. 5. Tax code mapping mismatches Your invoicing tool uses a generic "GST 10%" tax code. Your accounting software uses "SG-GST-10" and "SG-GST-10-Export." If the sync doesn't map these correctly, the invoice may record with no tax code at all, or with a default tax code that's wrong for the invoice type (e.g., a local invoice synced as an export invoice). The total might be correct, but the tax detail is wrong—and your tax report will be off. How to diagnose the mismatch in Xero, QuickBooks, and Zoho Xero Open the invoice in Xero's Business > Invoices . Check the Tax Summary section at the bottom. Note the tax amount and the total. Go back to your invoicing tool (FreshBooks, Wave, etc.) and open the same invoice. Compare the subtotal, tax, and total line by line. Look for: Different tax rates applied (e.g., 10% vs. 8%). Different rounding in the tax amount (e.g., $104.50 vs. $104.51). A missing or incorrect tax code assignment in Xero. If the tax is correct but the total is off by a small amount (under $5), scroll to History in Xero to see if a payment, credit note, or adjustment posted aft