Database

db={currentBills:[{memberId:1,name:"Mark",status:"paid"},{memberId:2,name:"Steve",status:"unpaid"},{memberId:3,name:"William",status:"paid"}],pastBills:[{memberId:5,name:"Joe",status:"paid"},{memberId:8,name:"Carlos",status:"paid"},{memberId:25,name:"ben",status:"unpaid"}]}

Query

db.currentBills.aggregate([{$group:{_id:"$status",currentBills:{$push:"$$ROOT"}}},{$lookup:{from:"pastBills",let:{status:"$_id"},pipeline:[{$match:{$expr:{$eq:["$$status","$status"]}}}],as:"pastBills"}},{$set:{currentBills:{"$cond":{"if":{$eq:["$_id","paid"]},"then":{paid:"$currentBills"},"else":{unpaid:"$currentBills"}}},pastBills:{"$cond":{"if":{$eq:["$_id","paid"]},"then":{paid:"$pastBills"},"else":{unpaid:"$pastBills"}}}}},{$group:{_id:null,currentBills:{$push:"$currentBills"},pastBills:{$push:"$pastBills"}}},{$project:{_id:0}}])

Result