I did something similar in the past, but it used a dedicated script running on a separate host that would update some custom fields in the database, but we were accepting donations via PayPal, Square, Stripe, Ko-Fi and a few other options so doing it via a dedicated plug-in wasn’t really an option for us at the time.