You know the first two rules
From the double-pronoun lessons you know that a dative clitic comes before an accusative one (Dao mi ga.), and from the perfekt you know the auxiliary sam/si/je sits in second position. What happens when all three meet?
sam/si/smo/ste come FIRST...
With every auxiliary except je, the verb clitic leads the cluster: Dao sam mu ga jučer. — sam mu ga, verb + dative + accusative.
...but je comes LAST
The 3rd-person singular je is the one exception — it always closes the cluster: Dao mu ga je jučer. — mu ga je, never *je mu ga. This is why you have seen sentences like Tko mu ga je pokazao? — dative mu, accusative ga, and je at the end.
The full order
li > verb clitics (sam, si, smo, ste, ću...) > dative > accusative > se > je. Memorize je-last and se-before-je, and every cluster you meet will parse itself.
Your questions are stored by us to improve Elon.io
