Since Quickbooks desktop is poorly programmed (or deliberately designed to be as slow and tedious to work with as possible, I honestly can't tell) and doesn't even allow basic tasks, such as importing subitems or payments through csv, I've been forced to write scripts to input these items. They had to be quite complex in order to be mostly fully automated. I would just like to thank the developers behind Quickbooks desktop for giving me this learning experience with scripting.