To include external data into GraphHopper you can have a look into our map matching component: https://github.com/graphhopper/map-matching
For OSM ID mapping there is also this outdated repo: https://github.com/karussell/graphhopper-osm-id-mapping The problem with this approach is that it uses OSM way IDs. This is a dead end and OSM node IDs are the much better choice (especially for your use case where you have probably only the OSM node IDs of the crosswalks). But they are more complicated to integrate in GraphHopper (of course not impossible!). We’ll probably add support for this at some point in the future: https://github.com/graphhopper/graphhopper/issues/917
See also Retrieve OSM node and way ID
Of course, as always, we appreciate any contribution