We have also discussed the visits vs. encounters (micro-visits) in this thread here:
We create encounters (or micro-visits) using the visit_occurrence table to capture the granularity of multiple providers and care_sites. The only downside I see is that the number of visits looks inflated when using OHDSI tools. But we just interpret visits as “encounters”. Just another ETL option you might want to consider.