I suppose a tool like Beancount (or (h)ledger, but I only have experience with beancount) and bean-web would fulfill your needs. The latter offers HTML reports per arbitrary subaccount, based on the data entered in the beancount file (which is plain text).