Boa noite!
Antes de mais nada, sugiro que busque sempre a legislação aplicável ao caso em específico. Somente ela vai te dar respaldo jurídico, já que respostas tanto aqui, quanto em outros sites, podem conter equívocos, e ficarem desatualizadas por exemplo.
Acredito que você deveria reter o valor em cima da base total, pois entendo que você deve considerar o pagamento de um mesmo CNPJ a um mesmo CPF. Pelo que sei, a legislação não menciona a separação por contrato, apenas por CPF ou CNPJ.
Mas repito, busque sempre a legislação para ter uma base legal.
Espero ter ajudado.