Database

[{_id:"someId",sales:[{_id:"111",alias:"xxx",amount:500},{_id:"222",alias:"abc",amount:100},{_id:"333",alias:"xxx",amount:300}]}]

Query

db.collection.aggregate([{"$addFields":{"sales":{"$map":{"input":{"$setUnion":["$sales.alias"]},"as":"m","in":{$let:{vars:{a:{"$filter":{"input":"$sales","as":"d","cond":{"$eq":["$$d.alias","$$m"]}}}},in:{amount:{$sum:"$$a.amount"},"alias":"$$m","_idsInvolved":"$$a._id"}}}}}}}])

Result