Adding a transaction around the webhook could help with this. At least you'd know for sure everyone has agreed upon the state of the user.
But agreed, webooks in general are not excellent for critical events in general unless there are additional ways and of confirming receipt and confirmation.