Setup guide

QB-Flow standalone executable.

The QB-Flow executable automates QuickBooks updates seamlessly. Follow this guide to download the standalone .exe and run it using PowerShell.

1

Locate your Customer ID

Before proceeding, make sure you have your Customer ID. It's included in the welcome email sent after subscribing to QB-Flow, and looks like cus_XXXXXXXXXXXXXXXX. Keep it handy, you need it to run the executable.

2

Open PowerShell as Administrator

  • Run QB-Flow on the computer where QuickBooks Desktop is installed.
  • Close QuickBooks and any related windows before running, to avoid file lock conflicts.
  • Run PowerShell as Administrator for best results.
3

Run the script

Copy one of the scripts below into the PowerShell console and replace Your_Customer_ID with your actual Customer ID. Without logging, output goes to the console. With logging, output is written to C:\Windows\Temp\qbflow_<timestamp>.log.

Without logging

PowerShell
# Enter your Customer ID, which can be found in your Welcome Email after subscribing to QB-Flow
$customerid = "Your_Customer_ID"

# URL to download the QB-Flow executable
$QBUpdateURL = "https://flowdevsblob.blob.core.windows.net/qbflow/QB-flow.exe"

# Destination path for the QB-Flow executable
$QBdestination = "C:\Windows\Temp\qb-flow.exe"

# Create a WebClient object to download the file
$webclient = New-Object System.Net.WebClient
$webclient.DownloadFile($QBUpdateURL, $QBdestination)

# Execute the QB-Flow application with the Customer ID as an argument
Start-Process $QBdestination -ArgumentList "/customerid $($customerid)" -NoNewWindow -Wait

With logging

PowerShell
# Enter your Customer ID, which can be found in your Welcome Email after subscribing to QB-Flow
$customerid = "Your_Customer_ID"

# Log file location C:\Windows\Temp\qbflow_%time%
$LogFile = Join-Path "C:\Windows\Temp" ("qbflow_{0:yyyyMMdd_HHmmss}.log" -f (Get-Date))

# URL to download the QB-Flow executable
$QBUpdateURL = "https://flowdevsblob.blob.core.windows.net/qbflow/QB-flow.exe"

# Destination path for the QB-Flow executable
$QBdestination = "C:\Windows\Temp\qb-flow.exe"

# Create a WebClient object to download the file
$webclient = New-Object System.Net.WebClient
$webclient.DownloadFile($QBUpdateURL, $QBdestination)

# The call operator (&) launches the EXE; *>&1 merges stdout + stderr
& $QBdestination '/customerid' $customerid *>&1 | Out-File -FilePath $LogFile -Encoding utf8
Write-Host "Output captured to $LogFile"

Removing public desktop icons

Add the /deletepublicdesktop switch to remove all public QuickBooks desktop icons as part of the run.

PowerShell
# Enter your Customer ID, which can be found in your Welcome Email after subscribing to QB-Flow
$customerid = "Your_Customer_ID"

# URL to download the QB-Flow executable
$QBUpdateURL = "https://flowdevsblob.blob.core.windows.net/qbflow/QB-flow.exe"

# Destination path for the QB-Flow executable
$QBdestination = "C:\Windows\Temp\qb-flow.exe"

# Create a WebClient object to download the file
$webclient = New-Object System.Net.WebClient
$webclient.DownloadFile($QBUpdateURL, $QBdestination)

# Execute the QB-Flow application with the Customer ID as an argument
Start-Process $QBdestination -ArgumentList "/customerid $($customerid) /deletepublicdesktop" -NoNewWindow -Wait
4

What the script does

  • Downloads the QB-Flow executable from https://flowdevsblob.blob.core.windows.net/qbflow/QB-flow.exe to C:\Windows\Temp\qb-flow.exe.
  • Runs it with your Customer ID, applying major and minor QuickBooks Desktop updates.
  • Prunes the QuickBooks installer files so Intuit can't re-trigger the update outside your window.

Verifying a successful run

QB-Flow doesn't pop a "success" dialog when it finishes. There are two reliable signals you can check on the endpoint:

  • The log file exists. QB-Flow writes a log to C:\Windows\Temp\qbflow_<yyyyMMdd_HHmmss>.log on every run. If a recent log is there, it ran.
  • The QuickBooks installer folder is empty (or no longer contains the latest .msi / .cab files). This is intentional. The QuickBooks updater uses the presence of those files as its trigger to apply an update. QB-Flow removes them after applying the release so Intuit can't re-trigger the same update outside your scheduled window.

Do not open the QuickBooks Update window to verify a run

The QuickBooks Update window inside QuickBooks Desktop is not a passive status screen. Simply opening it can re-enable Intuit's automatic update service in the background, even if you never click "Update Now." That's the exact behavior QB-Flow is built to prevent. If you want to confirm QB-Flow ran, check the log file. That is the source of truth, not the in-app Update window.

Quick verification checklist

  • Recent log present at C:\Windows\Temp\qbflow_*.log
  • QuickBooks installer folder empty or pruned of latest installers
  • Nobody opened the QuickBooks Update window during or after the run

If the log is missing entirely, the script never executed. The usual culprits are AV blocking the signed executable, or a firewall blocking the download URL.