Thousands of Asda distribution workers will stage a five-day strike from 30 June, in a protest over pay and bargaining rights.
Asda says it will try to maintain a normal service in stores
The lorry drivers and warehouse staff are based at 20 distribution depots around the UK, supplying the supermarket chain's 300 stores.
The GMB union agreed the strike dates after almost three quarters of those who voted in a ballot backed a walkout.
Asda has said it will try to minimise any disruption in its stores.
"Two-thirds of our depot workers are not GMB members and we expect most of them to come to work," said an Asda spokesperson, who added that the company had been working on contingency plans for "some time".
The two sides do not agree on how many of Asda's 12,500 depot workers belong to the union across its 24 depots around the UK. The GMB says the figure is 7,000 but Asda says the number is nearer 4,500.
The strike action is linked to the GMB's dispute with Asda over the company's refusal to allow it to negotiate nationally for its staff at all Asda depots, which in turn relies on how many members are in the union.
Asda - whose owner, US supermarket giant Wal-Mart, has long resisted union rights in its home operations - says that local collective bargaining takes place at nine of its 24 UK depots.
The two sides also disagree about profit-related bonus pay.
The GMB said it could take legal action against any employment agency which supplies staff to Leeds-based Asda during the strike.
The depot sites include Bedford, Chepstow, Dartford, Didcot, Erith, Falkirk, Grangemouth, Ince George in Wigan, Lymedale Staffordshire, Lutterworth in Leicestershire, Portbury in Bristol, Skelmersdale, Teesport, Wakefield, and Washington.