r/QuickBooks • u/No-Rope-4972 • 17h ago
QuickBooks Online Finally understand why everyone hates QuickBooks
So, recently, I got a client from here on Reddit who wanted me to migrate over four years of historical data from Excel to QuickBooks Online for account reconciliations against their existing sheets, and also find a way to make the process relatively straightforward going forward.
I'd used QB a long while back, but I'd forgotten most of it since that was more of a favour to a colleague than anything else.
Anyways, one phrase she kept uttering as we discussed the project was "I hate QB." Honestly, I found it funny. My thoughts at the time were, it can't be that bad. That was until I found and browsed this sub. Oh dear!
When I started working on the project, I perfectly understood why most on here shit on it. The common sentiment across both subs seems to be recommending alternatives.
That said, the first annoying thing I encountered was how clunky the user experience is. You can't just import your data; it has to be mapped correctly to how QB expects it. Fair enough, I guess. But the amount of data cleaning and modelling I had to do to get everything mapped correctly to QB's invoices default format to generate the corresponding AR was painstaking.
The client initially wanted me to use journal entries (JEs), which would have been a complete clusterfuck wrt to their data but flagged it early. Then there's the limit on the number of invoices you can import at a time. Luckily, the way I modelled the data got me around this, so I only needed about four or five imports for the entire dataset initally.
When I wanted to cross-check everything against the original sheets, I couldn't go back more than three months to view payments or invoices. I later found them under "All Transactions," IIRC. I also noticed duplicates, even though QB supposedly prevents them.
Even the API wasn't spared. I eventually used Google Apps Script to automate pushing invoices and payments to QB after transforming the data, while also implementing duplicate prevention and tracking.
One annoying stuff was that the query endpoint requires a POST request with the content type set to "application/text" instead of "application/json". I only found that out after staring at failed requests for a while. Their developer dashboard didnt help either. The save button was hidden off-screen, lol. I only found it after I luckily zoomed out, imagine.
There were a couple of other headaches I'm not even remembering right now. Oh yeah, reconciling payments against individual invoices was another one, especially since each invoice could have multiple payments. It was complicated by the payment structure with inital payments and holdbacks both paid months after date of service.
Anyways, I still found a way through, despite QB's annoyingness. The actual stuff was more complex than this post would explain.
Historical data was successfully migrated and reconciled while also set up so that subsequent data can be transformed to match QB's requirements and imported periodically, covering both invoices and payments. There's also duplicate prevention and a tracking dashboard that flags matches, mismatches, and errors btw sheets and QB.
So, yeah, I finally get the complaints, sort of counterintuitive if that's the right word, luckily didn't have to deal with predatory pricing, another popular complaint I found.
TL;DR: Had issues with QB's user experience while migrating over four years of historical data from Excel to QuickBooks Online. Had to clean and model the data to match QB's requirements without losing the detail it captured, reconcile invoices and payments, and used Apps Script to automate subsequent imports with duplicate prevention and a dashboard for tracking matches, mismatches, and errors. Pretty much every step was counterintuitive but it worked out.