Quote from the movie Ocean's Twelve: "It is all about error correction."
The origin of the QR Code was to be used in heavy industry, car parts and manufacturing to be precise. Since in this environment the risk that the tag itself could be damaged is high, the error correction algorithm was added to the content of the code.
Since now the QR Code is more commonly used, even in environments where the chance of damaging is smaller, the error correction is currently more and more used to compensate for graphical enhancement.
To stay more in line with the original purpose of the error correction algorithm, Kangaderoo offers graphical enhanced QR Code where not only the the scan-able content of the code, but also the graphical enhancement is actual QR Code content.
Thus creating QR Codes free of content errors.
With this technique the QR Code itself is more likely to be scanned without problems on most of currently available QR reader applications. There are quality differences between the various reader apps, so if you'd like your QR Code to be scan-able by just about every QR Code reader, start at the basis and keep your enhanced QR Code as compliant as possible with the QR Code specifications.
You cannot control the reader app your targeted audience is using, the only aspect that you can control is the QR Code itself.
Unless you are willing to rely on luck, I even have an error free QR Code for that :-).