The decision ended months of disagreements over fishing rights and future business rules,- BBC reports.
Boris Johnson declared at a Downing Street press conference: "We have taken back control of our laws and our destiny".
The text of the agreement has yet to be released, but the PM described it as a "good deal for the whole of Europe".
The UK will leave EU trading rules next Thursday - a year after officially leaving the 27-nation bloc. The trade deal means that the UK and the EU can continue to trade without extra taxes being put on goods.
The two sides have one week to get any deal formally approved in London and Brussels.
Labour leader Sir Keir Starmer confirmed his party would support the deal in Parliament - although he stressed it was "not the deal the government promised - far from it".
Wales First Minister Mark Drakeford said a deal was better than no deal, while Northern Ireland First Minister Arlene Foster said "a sensible trade deal... was always the most favourable outcome".