I also wouldn't take away the toy completely, but I might withhold it for an extra day or two to make a point, and let him know why.
My DS can get wound up like this. The way that we've learnt to deal with it is essentially not to respond to it in the moment.
We told him it was on its way and to be patient etc but he was getting more and more agitated saying he didn't want us to order it online, he wanted to get it at the shop etc. honestly he got so angry and annoyed, he called DH a stupid idiot and said we had made his morning awful and were unkind to him.
Essentially you want to stop the discussion when it starts getting heated. So he wakes up and asks where it is, you say oh it's not here yet, we have to wait for it to be delivered. He starts to complain and say he wanted to get it at the shop - this kind of thing, for my DS, would not be about the toy, his entitlement, his impatience, any kind of controlling agenda. It would be because he is hungry.
When he is hungry he doesn't see reason and sense even though he is quite logical, fair and patient normally. He was hungry and that agitated feeling was exacerbated by the picture in his head of having the toy available or visiting the shop (which presumably, he didn't expect to do before school anyway which shows you how silly it is as a request, this kind of thing is a clear indicator he's not thinking clearly).
Trying to explain, justify, reason, argue or reprimand does not work when they are in that headspace. It will just cause them to escalate, and solidify their sense that they are righteously indignant rather than being rude and ungrateful. The helpful response is to de-escalate - so don't enter into discussion about the thing. Deflect it by saying "Ah you wanted to go and pick it up, never mind, we'll know for next time" or "Hold your horses, hang on a sec, we haven't even had breakfast yet!" or "Let's have something to eat first and then we can talk about it" or "We don't have time for toys now anyway, we can talk about it after school". Sometimes de-escalation by OTT humour/sarcasm can work like if you say something like "OMG DS you're absolutely right. We wanted to get you this stupendous reward for your school work and we didn't even pay for the super-mega-extreme-fast delivery, the one where it comes delivered on a velvet cushion carried by galloping unicorns. Major error. Worst parents ever." Unless they are in an utter grump fit, this usually makes them laugh and then see the silliness of their own request (especially if they have actually managed to eat something).
But however you do it, you just do not enter into a discussion about the issue while they are agitated about it. First priority (for my DS) would be getting some food into him and second priority would be leaving space between his initial agitated response and me giving any kind of acknowledgement other than to deflect. 9/10 once he's had some food he's much more reasonable and will cool down to something like aww, I wish we could have got it from the shop, I was really excited to play with it today, and then I could sympathise with that. Sometimes he would stay cross, there wouldn't be time to address it (esp before school) and I'd just keep deflecting or changing the subject and make it clear it's not up for discussion now but we can talk about it later when everyone is feeling calm.
Later when there is a calmer/more reasonable moment I'd then use that opportunity to talk about how I don't like being spoken to in a rude way or I felt he was unfair this morning when we have gone to the trouble to order him something nice to complain about the delivery time, which isn't our fault as the item isn't in stock anyway. All of this he can 100% understand when he's not in a grump rage fit because of hunger and overexcitement. If there had been unacceptable behaviour like shouting and name calling, then I would give a consequence which might be that I keep the item back for a day or two, if he's a child who tends to appreciate related consequences. My DS doesn't because he finds this confusing and unpredictable, so he would get the usual consequence for verbal aggression which is a loss of screen time.
Sometimes for this kind of situation if there would be a calmer way to resolve it, I like to encourage that so I might enter into a discussion about whether it's possible to cancel the online order and pick the item up today in a different store, or buy something else instead, as long as it was approached calmly I'd discount the earlier unsuccessful attempt from the morning. If you have a child who is prone to escalation, then it can be important to practice the skill that you want them to use instead, which is communication and problem solving. It is sometimes counterproductive to insist that a bad attempt at getting their side across is punished by a refusal to accept a second, self-corrected attempt. They will not learn how to do it in the better way if you never let them try because they did it wrong first.