Database

[{"company":"ABC","application":{"app-1":{"earning_from_src_A":50,"earning_from_src_B":43},"app-2":{"earning_from_src_A":10,"earning_from_src_B":13}}},{"company":"ABCD","application":{"app-1":{"earning_from_src_A":150,"earning_from_src_B":413},"app-2":{"earning_from_src_A":110,"earning_from_src_B":113},"app-3":{"earning_from_src_A":1,"earning_from_src_B":34},}}]

Query

db.collection.aggregate([{"$addFields":{"application":{"$objectToArray":"$application"}}},{"$unwind":"$application"},{"$group":{"_id":"$application.k","earning_from_src_A":{"$sum":"$application.v.earning_from_src_A"},"earning_from_src_B":{"$sum":"$application.v.earning_from_src_B"}}},{"$group":{"_id":null,"data":{"$push":{"k":"$_id","v":{"earning_from_src_A":"$earning_from_src_A","earning_from_src_B":"$earning_from_src_B"}}}}},{"$replaceRoot":{"newRoot":{"$arrayToObject":"$data"}}}])

Result