Fix payday threading

#3006
Let's change the name to `mark_charges_failed` since it's run once for all instead of once for each.