Database

db={orders:[{"_id":"64355c928dcce8cdf4b9c7d2","destinations":[{"ship_to_id":"64355c92af10d37993473e12","sold_to_id":"64355c92a57d8b29412a1cc2","type":1,},{"ship_to_id":"64355c92a57d8b29412a1cc2","sold_to_id":"64355c92ed8af3f7cd7199b2"},{"ship_to_id":"64355c92256aa652e6c3fdc5","sold_to_id":"64355c924f9a2fcafa90daed"}],"contact_details":[{"ship_to_ref":"aaa","sold_to_ref":"bbb","contact_email":"a@gmail.com",},{"ship_to_ref":"bbb","sold_to_ref":"ccc","contact_email":"b@gmail.com"},{"ship_to_ref":"ddd","sold_to_ref":"eee","contact_email":"c@gmail.com",}]},{"_id":"64355c92bf25e54cf901be39","destinations":[{"ship_to_id":"64355c92af10d37993473e12","sold_to_id":"64355c92a57d8b29412a1cc2",},{"ship_to_id":"64355c92a57d8b29412a1cc2","sold_to_id":"64355c92ed8af3f7cd7199b2","type":2,},{"ship_to_id":"64355c92af10d37993473e12","sold_to_id":"64355c92256aa652e6c3fdc5","type":null,}],"contact_details":[{"ship_to_ref":"aaa","sold_to_ref":"bbb","contact_email":"a@gmail.com",},{"ship_to_ref":"bbb","sold_to_ref":"ccc","contact_email":"b@gmail.com",},{"ship_to_ref":"aaa","sold_to_ref":"ddd","contact_email":"d@gmail.com",}]},{"_id":"64355c921445785f4b50040e","destinations":[{"ship_to_id":"64355c92af10d37993473e12","sold_to_id":"64355c92a57d8b29412a1cc2"},{"ship_to_id":"64355c92af10d37993473e12","sold_to_id":"64355c92ed8af3f7cd7199b2"}],"contact_details":[{"ship_to_ref":"aaa","sold_to_ref":"bbb","contact_email":"a@gmail.com",},{"ship_to_ref":"aaa","sold_to_ref":"ccc","contact_email":"e@gmail.com",},]}],locations:[{"_id":"64355c92af10d37993473e12","reference_id":"aaa"},{"_id":"64355c92a57d8b29412a1cc2","reference_id":"bbb"},{"_id":"64355c92ed8af3f7cd7199b2","reference_id":"ccc"},{"_id":"64355c92256aa652e6c3fdc5","reference_id":"ddd"},{"_id":"64355c924f9a2fcafa90daed","reference_id":"eee"},]}

Query

db.orders.aggregate([{$match:{contact_details:{$exists:true}}},{$project:{del:{$filter:{input:"$destinations",cond:{$gte:["$$this.type",0]}}},destinations:1,contact_details:1}},{$unwind:"$del"},{$group:{_id:{sold_to_id:"$del.sold_to_id",ship_to_id:"$del.ship_to_id"},contact_details:{$first:"$contact_details"},orders:{$push:{_id:"$_id",destinations:"$destinations"}}}},{$set:{locations:["$_id.sold_to_id","$_id.ship_to_id"]}},{$lookup:{from:"locations",localField:"locations",foreignField:"_id",as:"locations"}},{$project:{contact_details:1,"_id.ship_to_id":"$_id.ship_to_id","_id.sold_to_id":"$_id.sold_to_id","_id.contact_email":"$contact_email","_id.ship_to_ref":{$getField:{input:{$arrayElemAt:["$locations",{$indexOfArray:["$locations._id","$_id.ship_to_id"]}]},field:"reference_id"}},"_id.sold_to_ref":{$getField:{input:{$arrayElemAt:["$locations",{$indexOfArray:["$locations._id","$_id.sold_to_id"]}]},field:"reference_id"}},orders:1}},{$set:{contact_details:"$$REMOVE","_id.contact_email":{$getField:{input:{$first:{$filter:{input:"$contact_details",cond:{$and:[{$eq:["$$this.ship_to_ref","$_id.ship_to_ref"]},{$eq:["$$this.sold_to_ref","$_id.sold_to_ref"]}]}}}},field:"contact_email"}}}}])

Result