Database

db={"users":[{_id:ObjectId("61e9536f142f337c96883c52"),name:"John",phone:"(222) 123-4568"},{_id:ObjectId("61e9536f142f337c96800a56"),name:"Bob",phone:"(200) 123-4568"}],"routes":[{routes:[{driver_id:"61e9536f142f337c96883c52",route_id:"SRT006",payment:13.2},{driver_id:"61e9536f142f337c96800a56",route_id:"SRT005",payment:15},{route_id:"SRT004",payment:20}],apartment:"abc apartment",deliverydate:"06/03/2022"}]}

Query

db.routes.aggregate([{"$lookup":{"from":"users","as":"driver","let":{routes_driver_id:"$routes.driver_id"},"pipeline":[{$match:{$expr:{$in:[{$toString:"$_id"},"$$routes_driver_id"]}}},{$project:{_id:0,driver_id:"$_id",name:1}}]}},{$set:{routes:{$map:{input:"$routes",as:"route",in:{$mergeObjects:["$$route",{$first:{$filter:{input:"$driver",cond:{$eq:["$$route.driver_id",{$toString:"$$this.driver_id"}]}}}}]}}}}},{$unset:"driver"}])

Result