I've worked on this problem for the past ten years. The solution would be to build line item data into the payment networks according to one standard or another. Unfortunately, the established payments companies have prevented startups (such as mine) from doing so because it's not worth it to them. They make a fortune from their existing, aging infrastructure. So we're stuck with the old networks until the courts fix the mess of unconstitutional laws they've set up to guard their profits.