Although “times are a changing” in relation to credit and debit cards from US international banks, cash is king. US bank cards will not work in Cuba.
Credit cards - Non US-based bank card holders will generally be able to use credit cards in upmarket hotels.
Debit Cards – Again, those with cards from non US-based banks will be able to use them at ATMs. From experience, some European MasterCard holders have encountered issues and have had to go inside the banks or cadecas to withdraw cash.
Visa Debit is a better experience. Maestro is from MasterCard but depending on the issuing country, they can work. Not all banks are the same. My HSBC card from the United Kingdom works in Cuba, but my Turkish friend’s HSBC card doesn’t.
Two fellow students from Germany did have this difficulty for 4 days in a row, with the cashier just stating “transaction declined”. In Cuba, it is normal for explanations to have little or no meaning. For example, “Can you tell me why the transaction was declined” - Answer “Porque”, which in English is “because”. Don't worry, you’ll get used to this after time. While it may appear to many travellers as rudeness, I can assure you this is not the Cuban people’s intention.
I have experienced ATMs stating “Transaction Cancelled” after successfully withdrawing cash - but sadly have still been charged.
Sometimes ATMs just display “transaction declined” for no reason. ATMs in Cuba also tend not to dispense cash between Sunday afternoon and Monday morning. I thought this was to do with Sunday “being a day of rest”, but it is more to do with my UK-based bank not being available internationally on a Sunday evening. You need to remember that you may be in a different time zone to your bank.
To be very clear, currently no cards issued by a US bank inside or outside the US are accepted in Cuba. This includes American Express, Diners Club and your Starbucks loyalty card. Incidentally, there are no Starbucks in Cuba and we all hope there never will be because Cuban coffee is so much better.
Charges vary from bank to bank, country to country, even account to account with the same bank. You need to check with your own and keep all ATM receipts - not because of banking issues, but because it helps with insurance claims if your cash is lost or stolen.
Today, fraud prevention in banks is very sophisticated. I would advise you to inform your bank of your holiday destination and dates of travel, and then update them with your mobile telephone number. My banks, HSBC and Lloyds, send me a SMS text message to confirm the transaction was made by me. So take your mobile with you when going to the ATM or cashpoint.