We are a consulting firm. We have subcontractor consultants who bill against projects. We mark up the subcontractor's bill (so it cannot be directly billable to the customer, who does not see the subcontractor's rate or bill) and then then we invoice the customer based on the marked up subcontractors' bills. In come cases, we have several projects for a single customer, and the customer requires us to submit separate invoices for each project. Many consultants work on many different projects, some for the same customer, some for different customers. Subcontractors itemize their hours against each project and customer on their invoices. All good so far.
It looks like this:
Subcontractor 1 Bill ---> ]
Subcontractor 2 Bill ---> ] ---> Project X Invoice to Customer A
Subcontractor 3 Bill ---> ]
Subcontractor 1 Bill ---> ]
Subcontractor 3 Bill ---> ] ---> Project Y Invoice to Customer A
Subcontractor 4 Bill ---> ]
Subcontractor 5 Bill ---> ]
(repeat for Customer B, C, D, etc.)
When we get paid against an invoice, we have to then pay our subcontractors (we pay the subcontractors when we get paid by the customer). It looks like this:
Customer Payment ---> Invoice ---> Project ---> Subcontractor Bill ---> Pay subcontractor
The problem is, QB does *NOT* allow you to link subcontractor bills to customer invoices. There is NO WAY to query which subcontractors billed to which projects for which clients for which invoices.
So we keep a completely separate, parallel record outside of QB that links subcontractor bills (and partial bills) to customer projects and invoices, so that when we get paid, we know whom to pay and how much. The overhead associated with keeping a separate record is significant - the time consuming part is making sure both records agree down to the penny for every record.
I have read many other posters asking if QB links bills to invoices, and it seems QB has no interest in correcting this glaring oversight.
Question: Is there an alternative to QB that does what we need?