Using transient is tricky because if the account details change (e.g. the user just purchased one item, and thus his "purchased" list has changed), the stale transient is used instead of the updated information.