Database

[{"_id":ObjectId("5f0339e28fbb15b9f8a17181"),"CustomerID":"12345","ABC":[{"datetime":ISODate("2020-06-13"),"source":"SourceX","code":"ABC"},{"datetime":ISODate("2020-08-18"),"source":"SourceB","code":"ABC"}],"WQA":[{"datetime":ISODate("2020-02-16"),"source":"SourceX","code":"WQA"},{"datetime":ISODate("2020-03-16"),"source":"SourceY","code":"WQA"}]},{"_id":ObjectId("5f0339e28fbb15b9f8a17182"),"CustomerID":"54321","ABC":[{"datetime":ISODate("2020-06-13"),"source":"SourceA","code":"ABC"},{"datetime":ISODate("2020-08-18"),"source":"SourceB","code":"ABC"}],"WQA":[{"datetime":ISODate("2020-02-16"),"source":"SourceA","code":"WQA"},{"datetime":ISODate("2020-03-16"),"source":"SourceY","code":"WQA"}]}]

Query

db.collection.aggregate([{$project:{CustomerID:1,entries:{$objectToArray:"$$ROOT"}}},{$unwind:"$entries"},{$unwind:"$entries.v"},{$match:{"entries.v.source":"SourceX"}},{$project:{_id:0,CustomerID:1,code:"$entries.v.code"}}])

Result