Yes - that's now what's happening. From a different parts company but the exact same price.
Garage rang me this morning to apologise and say they'd made a mistake - when they'd quoted me £400 for the alternator, that was for the part ONLY. There was a labour charge on top, which they were willing to reduce to £162 (how very generous of them!) and a diagnosis charge on top of that.
Bringing the total bill to nearly £800
Told them they hadn't said £400 yesterday - they'd said £455 for parts AND labour. So either they had lied about the price of the part yesterday and tried to overcharge me by £55, or what she was telling me today was rubbish. And told her I know the part isn't £400 - I'd seen it online myself for £155.
Then they offered to halve the already-discounted £162 labour cost - told them no, I am not paying £400 for a part I can buy for £155. She said she'd go and talk to the service manager.
Long story short[er] - called the parts manager, pointing out that I can buy the part for £155, and I already have an open case with Fiat and am happy to call Fiat and report the inconsistencies in pricing and stupidly high bill. Parts manager said I should have been offered an aftermarket part as an option. He discussed it with the service manager - the upshot is they're ordering the £155 part and only charging me £155 for it, plus they've reduced the cost of the diagnosis to £57 with £117 labour to fit the alternator.
Asked them to confirm the total cost by email, which has been done. Car should be ready tomorrow.
Thanks, everyone, for all the advice - I would have ignorantly accepted their over £500 bill if it hadn't been for this place!