To follow-up on some previous posts on invoices and checks, I'm writing to mention that I'm starting development of invoices and checks. These are just like regular old journal entries with additional information attached to them beyond what accounts they are to and from.
For example, a check might be written to a utility company, and that would reflect in the general journal as well as the ledger, and the memo for any of those might include the check number, but having the check number in a separate, consistent index would be very useful. In a similar situation, if many checks are written to several different independent contractors, it might not make sense to create an account for each one, but to use a "catch-all" account for them all. In this case, it would still be nice to know who the check was written to in a separate index other than the memo. You might also want to track when the check was cleared, among other things.
For invoices, there are many reasons to store additional metadata, including assigning payments to particular invoices.
Finally, to the specs! Here's what I've come up with for the key names so far: pbaccountmetadata
key: haschecks, type: boolean pbentry_metadata
key: invoice_number, type: integer, but possible char if needed
key: employer_id, type: integer, description: foreign key to table of employers, customers, and the like
key: check_number, type: integer
key: check_image, type: char, description: path to an image of the check
