A small interim embassy will start operating from Monday inside the existing US consulate building in Jerusalem. A larger site will be found later when the rest of the embassy moves from Tel Aviv.
The opening ceremony was brought forward to coincide with the state of Israel’s 70th anniversary.
Mr Trump’s daughter, Ivanka, and her husband Jared Kushner, who are both senior White House advisers, joined US Treasury Secretary Steven Mnuchin and Deputy Secretary of State John Sullivan for the ceremony.
After Ivanka Trump had unveiled the seal of the embassy, Mr Kushner said in his address: “When President Trump makes a promise he keeps it… We have shown the world that the US can be trusted. We stand with our friends and allies.”
Mr Kushner also referred to Mr Trump’s withdrawal from the “dangerous, flawed and one-sided Iran deal”, drawing applause from the guests.
Mr Netanyahu said: “What a glorious day. Remember this moment. This is history. President Trump, by recognising history, you have made history. All of us are deeply grateful.”
Mahmoud Abbas condemned the embassy as a “settlement in East Jerusalem”, saying that the US was “no longer a mediator in the Middle East”.
Arab League chief Ahmed Abul Gheit said it was “shameful to see countries participating with the US and Israel in celebrating the former’s embassy move to occupied Jerusalem in a clear and grave violation of international law”.
Why is the embassy move so controversial?
The status of Jerusalem goes to the heart of the Israeli-Palestinian conflict.
Israeli sovereignty over Jerusalem is not recognised internationally and, according to the 1993 Israel-Palestinian peace accords, the final status of Jerusalem is meant to be discussed in the latter stages of peace talks.
Israel has occupied East Jerusalem since the 1967 Middle East war. It effectively annexed the sector, though this was not recognised by any countries until Mr Trump’s declaration in December 2017.
Since 1967, Israel has built a dozen settlements, home to about 200,000 Jews, in East Jerusalem. These are considered illegal under international law, although Israel disputes this.
Various countries once had embassies based in Jerusalem but many moved after Israel passed a law in 1980 formally making Jerusalem its capital.