Have you considered making OSM itself the submission mechanism?
This could be as simple as having a static guide on how to add bookcases to OSM. Your app could also act as an OSM editor specifically for bookcases (not a general one).
https://wiki.openstreetmap.org/wiki/Key:image
The only difficulty is data than can not be easily represented in key=value pairs, such as timetables for buses. But even this can be resolved by adding external references.