QuickBooks Online Banking Error
How to Fix QuickBooks Banking Error 9999
QuickBooks Online showed you: "Sorry, we can't update your account. Please try updating again later. (9999)"
Error 9999 is a browser script error — QuickBooks Online's banking interface tried to load content from your bank's website and your browser blocked it as a cross-site security violation. At QuickFix Bookkeeping, the fix almost always starts and ends with the browser, not with QuickBooks itself.
⚠ Before You Troubleshoot — Do Not Do These Things
Don't click Update repeatedly
Each failed update attempt can create a duplicate pending transaction entry. After a few failed attempts you may end up with phantom duplicates in your For Review queue that need manual cleanup — making the original problem worse.
Don't import a CSV more than once
If you download and import transactions manually as a workaround, do it once for each date range only. Importing the same date range twice creates duplicates that must be manually excluded — a tedious reconciliation problem.
Don't disconnect if transactions are pending
If you have unreviewed transactions sitting in For Review, disconnecting the bank feed does not delete them — but reconnecting then re-pulling can duplicate them. Review and categorise pending transactions before any disconnect/reconnect.
Don't change Chart of Accounts mid-fix
Altering account mappings while a bank feed connection is broken can cause re-pulled transactions to land in the wrong account. Leave the Chart of Accounts unchanged until the connection is fully restored and verified.
The QuickFix Bookkeeping Distinction
Error 9999 is a browser script failure — not a QuickBooks account problem, not a bank outage. The fix is almost always in your browser, not in QuickBooks settings.
Error 102
Bank server is down
Your bank's servers are temporarily unavailable. Nothing to fix — wait 24 hrs.
Error 105
Bank site maintenance
Bank is undergoing maintenance. Wait for the bank to restore service.
Error 9999
This page — browser script block
Browser refused a cross-site script. Fix: clear cache, try incognito, reconnect feed.
Triage order: Browser cache first → incognito test → bank session verification → reconnect feed. Only disconnect and reconnect the feed as a last resort — it is the most effective fix but also the one most likely to create duplicate transactions if done carelessly.
What Is QuickBooks Banking Error 9999?
Error code
9999
QuickBooks Online · Bank Feed
Script error · Cross-origin block
What it means
Error 9999 is a cross-origin script error. QuickBooks Online's banking interface is a browser-based application that loads scripts from your bank's domain during the feed refresh process. When your browser refuses to execute one of those scripts — due to stale cached data, an expired session, or a security policy violation — the entire refresh fails with error 9999.
Your financial data is safe. Error 9999 only blocks the feed refresh. All previously imported transactions, categorisations, and reconciliations remain intact.
What Causes QuickBooks Error 9999?
🌐
Stale Browser Cache and Cookies
Primary cause — cached data from a previous session conflicts with the current banking session. The browser serves outdated data instead of making a fresh request to the bank, causing the script execution to fail. Clearing the cache resolves this variant immediately.
🔐
Bank Session Expired or MFA Required
Your bank's session token used by the QuickBooks feed has expired, or your bank is now requiring multi-factor authentication before allowing the feed connection. Logging directly into your bank's website to refresh the session and complete any pending MFA steps resolves this.
🔗
Outdated Bank Feed Connection
Intuit periodically updates its connections to financial institutions. If the connection between QBO and your bank was established under an older protocol and the bank has since updated its authentication requirements, 9999 appears until the connection is re-established under the new protocol.
🔑
Changed Bank Password or Credentials
If you recently changed your online banking password, updated your username, or added MFA to your bank account, the credentials stored in QBO's feed connection are now wrong — causing every refresh attempt to fail with 9999.
🏦
Temporary Bank or Intuit Server Issue
A temporary server issue on either your bank's side or Intuit's side can produce 9999. Unlike Error 102 (confirmed bank outage), this variant of 9999 tends to resolve within hours without any action on your part.
🧩
Browser Extensions Blocking Scripts
Ad blockers, privacy extensions, and script blockers (uBlock Origin, Privacy Badger, etc.) can intercept the cross-site scripts that QBO's banking interface depends on, producing 9999 specifically in your main browser while incognito mode works fine.
How to Fix QuickBooks Error 9999 — Step by Step
Work through in order. The browser-level fixes (Methods 1 and 2) resolve the vast majority of cases. Only proceed to the disconnect/reconnect (Method 4) if the browser fixes fail.
METHOD 1
Clear Browser Cache and Cookies for QBO
Resolves majority of 9999 cases — do this first
Stale cached data is the most common cause of 9999. Clearing the cache forces the browser to load a fresh banking session rather than serving outdated data that conflicts with the current bank connection.
1
Test in incognito/private mode first — press Ctrl+Shift+N (Chrome/Edge) or Ctrl+Shift+P (Firefox) and open QuickBooks Online. If the banking feed updates without error in private mode, the issue is confirmed as browser cache or an extension in your regular browser.
2
Clear cache in your main browser: In Chrome — press Ctrl+Shift+Delete → select Cookies and other site data and Cached images and files → set Time range to All time → click Clear data.
3
Close all browser tabs, restart the browser completely, and log back into QuickBooks Online fresh. Then go to Banking → Update once — not repeatedly.
4
If incognito works but main browser still fails after clearing cache: disable browser extensions one by one until you identify the one causing the script block. Ad blockers and privacy extensions are the most common culprit.
QuickFix tip: The incognito test is the single most diagnostic step for 9999. If it passes in incognito and fails in normal mode — the fix is in your browser, not in QuickBooks. If it fails in both — the issue is either the bank session (Method 2) or the feed connection itself (Method 4).
METHOD 2
Refresh Your Bank Session and Complete Any MFA Steps
If bank session is expired or MFA pending
QuickBooks Online's bank feed relies on a live session with your bank. If that session has expired — or your bank is showing a pending security verification — the feed cannot refresh and 9999 appears. Logging directly into your bank website resets the session and completes any pending MFA.
1
In a new tab, navigate directly to your bank's website and log in with your full credentials. Complete any security questions, OTP prompts, or MFA challenges that appear — do not skip them.
2
Once you are fully logged into your bank's website and can see your accounts — switch back to your QuickBooks Online tab and click Banking → Update.
3
If you recently changed your bank password — go to QuickBooks Online → Banking → Edit (pencil icon) → Edit sign-in info and update the stored credentials to match your new password before attempting the update.
METHOD 3
Verify the Bank URL in QuickBooks Matches Your Bank
If the feed is connecting to the wrong URL
Banks occasionally change their online banking URLs — particularly after mergers, rebrands, or security upgrades. If QBO is attempting to connect to a deprecated URL, 9999 fires every time. Verifying the URL takes 2 minutes.
1
In QuickBooks Online, go to Bookkeeping → Transactions → Bank Transactions → Link Account. Search for your bank name. Find your bank in the results and copy the URL listed next to it.
2
Open a new browser tab, paste that URL, and verify you can log into your bank at that address. If the URL no longer works — your bank has changed its URL and you will need to disconnect and reconnect the feed using the correct current URL (Method 4).
METHOD 4
Disconnect and Reconnect the Bank Feed
Most effective fix — do after clearing pending transactions
Before disconnecting: Go to Banking → For Review and categorise or exclude all pending transactions. Reconnecting the feed will re-pull recent transactions and if any are still pending, you risk duplicates.
1
Disconnect: Go to Banking → your bank account → pencil (Edit) icon → Edit account info. Check the "Disconnect this account on save" checkbox. Click Save and Close.
2
Reconnect: Go to Banking → Add Account (top right). Search for and select your bank. Enter your bank username and password. Complete any MFA or security verification steps. Click Securely connect.
3
Select the bank account from the list and match it to the correct QuickBooks account. Set the transaction start date — do not set this too far back, or you will pull in transactions that are already reconciled.
4
Click Connect. After reconnection, check For Review for any duplicates and exclude them. If duplicates appear — do not delete them. Use Exclude to remove them from the queue without affecting your books.
QuickFix tip: Set the transaction start date to the day after your last successfully reconciled transaction — not 90 days back. The further back you pull, the more transactions QBO imports, and the more potential duplicates you have to sort through if any were already imported before the disconnection.
METHOD 5
Manually Import Transactions as a Temporary Workaround
If reconnect is not working and reconciliation is urgent
If reconnecting the feed still does not resolve 9999 and you have an urgent reconciliation deadline, you can manually import transactions as a CSV from your bank's website. This bypasses the feed entirely and gets the transactions into QuickBooks while the underlying issue is investigated.
1
Log into your bank's website and download transactions as a CSV or QBO file for the date range you need. Note the exact date range — you will need to remember this to avoid importing the same range twice.
2
In QuickBooks Online, go to Banking → Upload Transactions. Select the file, map the columns to QuickBooks fields (Date, Description, Amount), and import.
3
Important: Once the feed is reconnected and working again, QuickBooks will re-pull the same transactions. Check For Review carefully and exclude any that were already imported via CSV to prevent duplicates.
Quick Reference — Match Your Clue to the Fix
| Your clue / situation |
Most likely cause |
Start with |
| Works in incognito, fails in normal browser |
Browser cache or extension |
Method 1 — clear cache, disable extensions |
| Failed after changing bank password |
Stored credentials outdated |
Method 2 — update sign-in info |
| Fails in incognito too — not browser-related |
Bank session expired / MFA pending |
Method 2 — log into bank website first |
| Bank recently merged or rebranded |
Bank URL changed |
Method 3 — verify bank URL, then Method 4 |
| Methods 1–3 tried, still failing |
Feed connection outdated |
Method 4 — disconnect and reconnect |
| Urgent deadline, reconnect not working |
Feed unreliable |
Method 5 — manual CSV import |
Frequently Asked Questions About Error 9999
What is a "script error" and why does my bank connection cause one?
QuickBooks Online's banking interface is a web application that runs in your browser. When it refreshes your bank feed, it loads scripts — small programs — from your bank's website to authenticate and pull transaction data. Browsers enforce a security rule called the Same-Origin Policy that restricts scripts from one website from accessing data on another website. When the authentication token between QBO and your bank is stale or invalid, the browser flags the cross-site request as a security violation and blocks the script. QuickBooks surfaces this as Error 9999.
How is Error 9999 different from Error 102?
Error 102 means your bank's servers are temporarily unavailable — the connection attempt was made correctly but the bank did not respond. The fix is to wait. Error 9999 means the connection attempt itself failed at the script execution level — the browser refused to run the authentication script. The fix is in your browser or your bank session, not in waiting. If you see 102 during a known bank maintenance window, wait. If you see 9999 and your bank's website loads normally, start with browser cache.
I disconnected and reconnected but now I have duplicate transactions. What do I do?
Do not delete the duplicates — deleting can affect your reconciliation history. Instead, use QuickBooks Online's Exclude function: go to Banking → For Review, select the duplicate transactions (the ones that were already accepted before the reconnect), and click Exclude. Excluded transactions are removed from the For Review queue without affecting your books. If you cannot tell which are duplicates — compare the For Review list against your register for the same date range and exclude any that already appear in the register.
How do I prevent Error 9999 from recurring?
Four practices prevent most recurrences. Update your stored bank credentials in QBO immediately whenever you change your banking password — do not wait for 9999 to appear. Log into your bank's website directly at least monthly to refresh the session and complete any pending MFA challenges before QBO's feed connection expires. Clear browser cache for QuickBooks Online monthly — especially if you use ad blockers or privacy extensions. And when a bank notifies you of a platform migration, URL change, or new authentication requirement — reconnect the QBO feed proactively rather than waiting for 9999 to force the issue.
Related QuickBooks Banking Errors
Bank Feed Still Broken? Reconciliation Deadline Looming?
Error 9999 Persisting After All the Fixes?
Let's Restore Your Bank Feed Today.
Certified QuickBooks ProAdvisors · Online Banking Specialists
A persistent 9999 after clearing cache and reconnecting the feed usually points to a bank-side authentication change that needs hands-on reconnection. At QuickFix Bookkeeping, our certified ProAdvisors restore bank feeds and clean up any duplicate transactions in a single session.
Book a Free 30-Minute Consultation
No obligation. Same-day response. Bank feed restored fast.