Hi Mari,
you are right, it is not essential to create species folders. When you assign species tags with digiKam, you don't need species folders. camtrapR will extract the species IDs from the metadata, just like all other tags.
See the examples in ?recordTable.
The sample images that the examples in recordTable use can be found here:
# images with species directories
system.file("pictures/sample_images_species_dir", package = "camtrapR")
# images with species tags, no species directories
system.file("pictures/sample_images_species_tag", package = "camtrapR")
But the package still offers both options (species directories or not), some people prefer using species directories.
Please not that for recordTable you always need station directories.
For recordTableIndividual, station folders are optional. You can tell recordTableIndividual via argument hasStationFolders if your images are in station directories (if not, station names are taken from the file names which requires images renames with imageRename).
Whether images of indiviuals are stored in station folders can be controlled with argument createStationSubfolders in function getSpeciesImages.
Best regards,
Jürgen