The difference is the the filtering condition.
For example, in your first query, it is going to select the sum(rent.paid)
regardless if either of the joins actually produce records. The benefit here is that if you need data regardless of the join working, but do want to filter the join, then you put the conditional filter on the join clause itself.
In your second query, with the conditional filter being in the where, it is only going to produce your sum(rent.paid)
if the joins work (even though they are left joins)