The Moroccan Dirham is not available to be bought outside of Morocco.
For your holiday it is best to take GBP (pounds sterling) in cash to change in Morocco.
Large hotels and banks all use the same government controlled exchange rate. Smaller establishments such as riads and small boutique hotels which are not registered as an official exchange place, offer slightly less advantageous rates to cover the change of rate that can happen in the time between them changing your money and getting it to the bank.
You can also change travellers checks.
In Marrakech airport there is a currency exchange office in the baggage hall on arrival. If
this is closed when you arrive then any bank in town or your hotel will be able to change
money for you. We recommend that for the best rate use a bank in Morocco.
You should retain your receipt for the money you change and keep it safe until you leave the
country as this will be required to change your unspent Dirhams into pounds or Euros on your
departure (at the bank in the airport).
ATM (cashpoint machines) are widely available throughout the country. Note, however, that the
exchange rate that you get from the card companies will be less cost effective than changing
money in a bank or hotel.
Most hotels and most reputable shops will accept major credit cards. Even when shopping in markets, some credit cards will be accepted. However beware, some souk shops may try to load another 5-10% on the price of the article when they see a credit card. There is minimal acceptance of Euro cheques although this method should not be relied upon.