The point that a hold next to a real charge looks identical on a banking app is the one most people miss, so starting with the Payments status column is the right first move. One thing I'd add to fixing a real duplicate: when you cancel the extra subscription immediately, turn off proration on the cancel. Otherwise Stripe can leave a credit or a small final invoice on that customer, and the next email you get is "why is there another charge from you."