The decision paves the way for the Bulgarian government to unblock the start of talks in exchange for EU guarantees that North Macedonia will meet Bulgaria's demands on historical and linguistic disputes.
Bulgaria's parliament has given the government the green light to approve a European Union membership negotiation framework for North Macedonia.
Bulgaria's move, which lifted a veto that had been imposed in 2020 due to a dispute about history and language, may allow its northern neighbour to start accession talks with the bloc.
Coming a day after the bloc granted candidate status to Ukraine and Moldova, Friday's vote marked another step towards EU enlargement.
Lawmakers voted to allow the government to lift its veto following tweaks in the framework text that would guarantee the rights of Bulgarians in the country through constitutional changes and commit Skopje to maintaining good relations with Bulgaria.
The framework should also not have any reference that may suggest that Bulgaria recognises the Macedonian language, according to conditions attached to the approval.
The compromise was proposed by France, which holds the EU's six-month rotating presidency.
"This is the best offer Bulgaria has received so far. It provides European guarantees that Bulgarian interests will be protected," said Elisaveta Belobradova, a lawmaker with the Democratic Bulgaria party.
The EU's stance towards eastern expansion has shifted since Russia sent its troops into Ukraine following years of resistance to potential new members.
Bulgaria's EU and NATO allies have been pushing for a solution that will reinforce Skopje's European perspective and limit the Russian influence in the Western Balkans.
However, North Macedonian Prime Minister Dimitar Kovacevski labelled the French proposals "unacceptable" in a Facebook post on Thursday.
"If an understanding of our positions is reached during the course of the French Presidency, we are ready to engage in talks," he wrote.
EU reticence over enlargement has slowed progress towards membership for a group of Balkans countries — Albania, Bosnia, Kosovo, Montenegro, North Macedonia and Serbia — leading to disillusionment among them regarding their prospects of joining the club.
Prime Minister Kiril Petkov's government was toppled on Wednesday, after his shaky coalition lost its majority not least over accusations that he was disregarding national interests in pushing to lift the veto.