We rarely deal with retainers, so this is a new problem for me. I will say that non-retainer invoicing and syncing with QBO has been working nicely for us once we got it set up.
One thing I have noticed is that if I create a billing item for "retainer" and there are no other billing items, the invoice simply will not create a balance due and will not sync to QBO. I'm curious if anyone has a work around. My plan is to manually create a retainer invoice in QBO so I can collect the retainer. Then I will manually create a retainer entry in AppColl. I don't know what manual process is going to be needed once I actually invoice but I'll figure it out when we do that.
What might be helpful is just to hear how other people have done this. Not asking for the platform to be changed, but just to hear from other end users that successfully handle retainers and also use AppColl for billing.