Staff including ambulance workers, nurses, physios and porters will also get a one-off sum of at least £1,655.
The pay deal was signed off at a meeting between the government and 14 health unions representing all NHS staff apart from doctors and dentists.
Ministers said it was time to bring the strikes to an end - but three unions are threatening to continue action.
However, only one - Unite - currently has a strike mandate and that is for local strikes in some ambulance services and a few hospitals.
Unison head of health Sara Gorton, who chairs the joint NHS union group, said: "NHS workers will now want the pay rise they've voted to accept.
"The hope is that the one-off payment and salary increase will be in June's pay packets."
But Ms Gorton said health staff should not have needed to strike on such a scale - nurses, physiotherapists and ambulance staff have all taken strike action since December.
"Proper pay talks last autumn could have stopped health workers missing out on money they could ill afford to lose," she said.
"The NHS and patients would also have been spared months of disruption."
Health Secretary Steve Barclay said he was pleased the offer, proposed in March, had been accepted by the unions after members had voted on it.
"Where some unions may choose to remain in dispute, we hope their members - many of whom voted to accept this offer - will recognise this as a fair outcome that carries the support of their colleagues and decide it is time to bring industrial action to an end.
"We will continue to engage constructively with unions on workforce changes to ensure the NHS is the best place to work for staff, patients and taxpayers."
Despite some of the unions rejecting the offer, the deal was agreed after a majority backed it as a result of the support of some of the biggest unions in the NHS, such as Unison, the GMB and those representing physiotherapists and midwives.
All staff will now receive the extra pay.
The Royal College of Nursing (RCN), one of the unions that rejected the offer, has warned it will continue to pursue strike action.
But it needs to hold another ballot of its members, as its six-month mandate expired at the end of Monday, when its latest walkout ended.
RCN general secretary Pat Cullen said the union would start balloting in the coming weeks.
In a letter to Mr Barclay, she said while she "entirely respected" the other unions who had voted to accept, she would continue to fight for her members, who voted to reject the offer despite the RCN leadership recommending it to them.
"Nursing is the largest part of the NHS workforce and they require an offer that matches their true value," she added.
Unlike last time, the RCN is holding a national ballot rather than a series of local workplaces ones.
That means it will be harder to win a strike mandate - something dubbed an "all or nothing" approach, in one last attempt to persuade ministers to return to the negotiating table.
The health secretary also met the British Medical Association on Tuesday to see if the two sides could agree a way forward in the junior doctors' pay dispute.
They are on a different contract so not affected by the agreement reached with the other NHS staff.
The BMA wants a 35% rise, to make up for 15 years of below-inflation wage increases.
Junior doctors have held two strikes so far. Mr Barclay has said the pay claim is unaffordable.
A government spokesman said the discussion was "constructive" and both parties would meet again in the coming days.