Cyprus parliament has approved a “national solidarity fund” to ease the banking crisis, which has hit confidence across the eurozone.
MPs also imposed capital controls to prevent a run on the island’s troubled banks.
These are the first of a series of laws intended to raise the 5.8 billion euros ($7.5 billion) Cyprus needs to qualify for a 10 billion-euro bailout.
MPs are still to decide whether to impose a levy on large bank deposits.
The fund would allow the pooling of state assets for an emergency bond issue, reports the Reuters news agency.
Parliament on Tuesday rejected a levy on all deposits to raise the money.
Before the series of much-delayed votes in an emergency session of parliament, the European Union, Germany and leading bankers all urged MPs to speedily pass the reforms.
The European Central Bank has given Cyprus until Monday to find a solution, or it says it will stop transferring money to its undercapitalized banks.
The EU has postponed next week’s summit to discuss free trade with Japan, so European leaders can concentrate on trying to solve the Cyprus crisis.
Banks on the island have been closed since Monday and many businesses are only taking payment in cash.
There were protests outside parliament on Friday.
Before the parliamentary session began, government spokesman Christos Stylianides said the authorities were engaged in “hard negotiations with the troika”, referring to the EU, the European Central Bank and the International Monetary Fund, the AFP news agency reports.
German Chancellor Angela Merkel warned Cyprus not to “exhaust the patience of its eurozone partners”, reports say.