Algorithm for comparing two lists of objects, to insert added items, and delete removed items
1) In your for-loop, when the if is true, you should not only set coupleFind = true, but also add a break since you keep looping for nothing otherwise.

2) I'm not sure why the customerId is not already part of the invoice.

3) Instead of looping over the lists, you could just create a HashSet and check if the invoice is already present. There is some extra complexity if you take this approach, but if you call that method often, it will definitely be cheaper computationally.  You should define some class InvoiceIncludingCustomerId if you don't want to put the customerId within the invoice.  And you should override (carefully) the hashCode() and equals() of that class so that the hash is unique, but quick to compute: invoiceId and customerId should be sufficient.

You then just need a HashSet&lt;InvoiceIncludingCustomerId&gt; knownInvoices and you just check if an invoice exists with knownInvoices.contains(invoice).  If it is missing, you add it to the DB and knownInvoices.add(invoice).