Matching financial reconciliation data / matching multiple rows based on column values
I'm working with financial reconciliation data and the ask is to train the algorithm to match transactions (that are otherwise manually matched if the existing application didn't because not all the rules were met).
The Currency, Account, Client have to be the same, the Settle & Trade dates of each item can be the same or vary, the Net Settlement should ideally be 0 (when the sign for one item is flipped) or as close to 0. The rest of the columns aren't as helpful because they can be blank or vary for the same match.
So if for 2 rows of data the currency, account & client are the same, one of the dates varies by 1 day & the settlement difference is 0.50 - they're reconciled (or at least tagged as an 80% match or a partial/possible match). In the picture for the 2nd set, 3 items are reconciled - the difference is -48 and the dates vary a bit.
There are also instances where it's 5+ (upto thousands) items of data all being part of the same transaction (this makes my head hurt and the math aspect of it makes this seem easy but it doesn't always become 0 and looking at the "training" data makes no sense )
I was wondering if this is feasible (because there are so few unique identifiers and so many possible number of matches), what would be the best method(s) - algorithm, language, libraries etc., For a start, just being able to classify only 2 (not more) exact (same amount) matches would be great. I do have access to plenty of training data. 650
I have only worked with R & Python for analysis/simple predictions and this was over 1 year ago. Since I started at my first job I've basically been doing data visualization and not much else and have completely lost touch.
P.S - I haven't come up with any ideas because my anxiety has shot through the roof & I'm fully aboard the procrastitrain - I know nothing about finance (not that necessary here, I know, I understand the basics) and as a lowly analyst I've been the only person put on this project and everybody seems to have all these expectations (they used "ML" about a million times). I work at a large-ish bank/finance place but most of the management is averse to anything actual tech (like, they prefer excel to Power BI) so this is new to everybody. If it was just reconciling matches, a macro or a large if-statements riddled program would do but they want to know why items have been matched so the existing application can be bettered. 57