US President George W Bush has vetoed a bill to expand a children's healthcare insurance scheme, after it was passed with a large majority in the Senate.
It is only the fourth time President Bush has used his veto power
Mr Bush argues it takes the programme beyond its original purpose of insuring children from low-income families.
The vetoed bill proposed higher tobacco taxes to provide an extra $35bn (£17bn) to insure some 10 million children.
Children's health insurance is set to be a campaign issue in next year's elections, analysts say.
Eighteen Republican senators joined Democrats last week in passing the legislation by a 67-29 vote.
But the House of Representatives, which approved the bill by 265-159, was well short of the two-thirds majority needed to override a veto.
It is only the fourth time Mr Bush has used his veto power in the course of his presidency.
The State Children's Health Insurance Programme (SCHIP) currently subsidises health care for some 6.6 million people, most of them children.
It is directed at families who earn too much to qualify for the Medicaid programme for the poor but cannot afford private health insurance cover.
Supporters of the bill said the proposed $35bn expansion, paid for by increasing federal cigarette tax by 61 cents to $1 a pack, would help give health coverage to an additional four million children.
Mr Bush had said he wanted only a $5bn increase in funding for the scheme.
He argued that expanding its coverage further would encourage people currently covered in the private sector to switch to government coverage - and that the proposal was too costly.
Speaking after vetoing the bill, Mr Bush said: "The focus of the government ought to be to help poor children and to focus on poor children.
Children had delivered petitions urging Mr Bush not to veto the bill
"And the policies of the government ought to be to help people find private insurance, not federal coverage."
He did, however, say he would be willing to negotiate a revised bill with the Democrats.
Democratic Senate leader Harry Reid described the veto as "heartless" and said Mr Bush was "denying health care to millions of low-income kids in America".
Rahm Emanuel, chairman of the House Democratic caucus, drew a parallel with the administration's request for $190bn funding for wars in Iraq and Afghanistan in 2008.
He said: "The president has asked for an open-ended, open-wallet commitment to Iraq, and the American children get an empty stocking."
Mr Bush's decision to block the legislation is likely to prove unpopular with many people, correspondents say.
A Washington Post/ABC News poll suggested that more than seven in 10 Americans supported the $35bn increase proposed in the bill.
Democrats in the House say they will seek to persuade sufficient Republican congressmen to change sides to be able to override Mr Bush's veto.
But House Republican leader Roy Blunt said he was "absolutely confident" that he would be able to prevent that happening.
Many Republicans are likely to feel the pressure of public opinion ahead of congressional elections in November next year.
Meanwhile, Democrats are keen to show concrete results to supporters who gave them control of Congress in last year's elections and have been frustrated by the party's inability to force a change of strategy in Iraq.
Mr Bush has previously used his veto twice to block legislation that would have eased restrictions on federally funded stem-cell research and once to halt a bill linking war funding to a timetable for withdrawal of combat troops from Iraq.