I think if this thread has taught us anything, it’s that Mumsnet is divided on the issue of children’s birthday parties.
To be fair, there is research (not great research, but still) that supports comments saying restitution would be a more effective “punishment” (i.e. you ask the other child/parent if there is anything that your child can do to make amends and, if they are willing, you meet up to discuss it. The other child gets his voice heard. Your child comes face to face with the damage he has caused and he compensates in a way that is meaningful to the child that was hurt.)
In the absence of the other child or parent, OP has done the next best thing, which is to help her son understand the hurt he has caused and write an apology and take a present. (There is still the option of meaningful restitution if the other side want to engage in the process.) Meanwhile she’s working on getting to the heart of the problem as well as strengthening their relationship. Nobody can argue with that, surely.
Some of us find it appropriate, however, that there should be additional consequences. This wasn’t a small mistake. Personally, I think it makes perfect sense to say “You don’t get to have friends over if you can’t be trusted to be sensible and kind to them.” It’s not a meaningless, unrelated punishment and nor is it the end of the world. He can earn back his privilege by being kind at every opportunity for a couple of weeks. Surely this is a “logical consequence”?
To be honest my parents weren’t overly concerned with “logical consequences” and I can’t say I’ve suffered for it. You did wrong, something bad would happen, end of story. I knew they were acting out of love, not spite. I knew they had my best interests at heart. I also knew they would wipe the floor with me if I crossed the line, and sometimes that knowledge kept me out of trouble.