Virtually everyone entering Slovenia must have a valid passport, although citizens of the EU as well as Switzerland need only produce their national identity card on arrival for stays of up to 30 days. It’s a good idea to carry your passport or other identification at all times.
Citizens of virtually all European countries as well as Australia, Canada, Israel, Japan, New Zealand and the USA do not require visas to visit Slovenia for stays of up to 90 days. Those who do require visas (including South Africans) can get them at any Slovenian embassy or consulate for up to 90 days. They cost €35 regardless of the type or length of validity. You’ll need confirmation of a hotel booking plus one photo and may have to show a return or onward ticket.
Your hotel, hostel, camping ground or private room arranged through an agency will register your name and address with the municipal občina (government) office as required by law. That’s why they have to take your passport away – at least for the first night. If you are staying elsewhere (eg with relatives or friends), your host is supposed to take care of this for you within three days.
If you want to stay in Slovenia longer than three months, you will have to apply for a Schengen area extension - be aware that since joining the Schengen area, requirements for travel have increased and it is no longer as simple as stepping outside the country and back in again - check with your local government authority to determine how stringent these requirements are for individuals of your nationality. The alternative is to apply for a temporary residence permit at the Foreigners Office (Urad za Tujce; 01-306 30 00; Proletarska ulica 1; 8am-3pm Mon, 8am-5pm Wed, 8am-1pm Fri) in Moste, northeast of Center in Ljubljana.
Contact any Slovenian embassy, consulate or tourist office abroad for any recent changes in the above regulations or check the website of the Foreign Ministry (www.mzz.gov.si).