Online portals have facilitated collecting extensive biodiversity data by naturalists, offering unprecedented coverage and resolution in space and time. Despite being the most widely available class of biodiversity data, opportunistically collected records have remained largely inaccessible to community ecologists since the imperfect and highly heterogeneous detection process can severely bias inference. We present a novel statistical approach that leverages these datasets by embedding a spatiotemporal joint species distribution model within a flexible site-occupancy framework. Our model addresses variable detection probabilities across visits and species by modelling phenological patterns and by extending the use of latent variables to characterise observer-specific detection and reporting behaviour. We apply our model to an opportunistically collected dataset on lentic odonates, encompassing over 100,000 waterbody visits in Flanders (N-Belgium), to show that the model provides insights into biological communities at high resolution, including phenology, interannual trends, environmental associations and spatiotemporal co-distributional patterns in community composition.