Our family runs a small retail store in Canada. Whether or not to accept foreign currency is a matter of convenience for the customer, part of making your store "customer friendly". That was, after all, the purpose of the pizza chain's policy in states bordering Mexico. However, it's also a practical matter of how the merchant who accepts the currency gets it turned into local currency. So, in our store we readily accept the most common foreign currency, US$, but no others. We keep track of the exchange rate when we take the money to the bank for deposit and adjust what the store offers to customers rounded off to the nearest 5%. For example, I just looked at our bank's website and it says for US $1.00 they will pay us C$ 1.1465. So If you present a US $10.00 bill in our store, we will immediately say to you that we treat this as C $11.50 and give you change in Canadian money on that basis. Likewise, US $100.00 is treated as C $115.00. When we get to the bank and the rate has changed to 1.1388, we end up getting C $113.88 and we lost C $1.12 on the deal. Who cares!!! We made a sale to you in the store!
Doing the same for other currencies, however, is not our habit because we can't keep up with all currency rates. Someone with Peso or Euros will be referred to the bank to exchange their money before shopping. But let me alert you to something. As I said, our store sticks close to the bank rate within a few percentage points one way or the other. I find it very annoying, though, to see signs in other local sores announcing their standard rates that give the store such a bonus I'd call it a rip off of US customers! Like today we'd pay C $1.15 for US $1.00, but a few stores would pay you C$1.05 or less. To me that's an insulting disservice to a customer (and a guest visiting in our city who might spend even more if they were happy!), and there is no way in the world a store can justify that by saying it costs them more to do the dollar conversion. We do it easily all the time! So I'm in the habit of exchanging my money at a bank before traveling to another country. I usually find that the bank's exchange rate is the best deal I can get. Oh, and another hint for US travelers entering Canada. I have found repeatedly that Canadian banks will give you marginally better exchange rates on US$ than you get in American banks - maybe about 1% point better.
Oh, one more tip. Don't expect exchange rates on coins. If we take US coins to the bank they generally won't pay us extra for them because ultimately they have to transport them to a central location in order to sell them to a US bank, and the transportation costs and handling eat up all the exchange bonus. In fact, in Canada it is common as a courtesy to US customers simply to accept US coins as Canadian coins at par (easy since the exchange rate is close to 1.00), and then leave them in the till to be given out as change to another customer. So any Canadian's pocket coins probably will include a few US coins, and they are all treated as the same thing. I have found that less common south of the border, though. I once was in a northern state town and had two Canadian pennies returned to me as unacceptable!
Doing the same for other currencies, however, is not our habit because we can't keep up with all currency rates. Someone with Peso or Euros will be referred to the bank to exchange their money before shopping. But let me alert you to something. As I said, our store sticks close to the bank rate within a few percentage points one way or the other. I find it very annoying, though, to see signs in other local sores announcing their standard rates that give the store such a bonus I'd call it a rip off of US customers! Like today we'd pay C $1.15 for US $1.00, but a few stores would pay you C$1.05 or less. To me that's an insulting disservice to a customer (and a guest visiting in our city who might spend even more if they were happy!), and there is no way in the world a store can justify that by saying it costs them more to do the dollar conversion. We do it easily all the time! So I'm in the habit of exchanging my money at a bank before traveling to another country. I usually find that the bank's exchange rate is the best deal I can get. Oh, and another hint for US travelers entering Canada. I have found repeatedly that Canadian banks will give you marginally better exchange rates on US$ than you get in American banks - maybe about 1% point better.
Oh, one more tip. Don't expect exchange rates on coins. If we take US coins to the bank they generally won't pay us extra for them because ultimately they have to transport them to a central location in order to sell them to a US bank, and the transportation costs and handling eat up all the exchange bonus. In fact, in Canada it is common as a courtesy to US customers simply to accept US coins as Canadian coins at par (easy since the exchange rate is close to 1.00), and then leave them in the till to be given out as change to another customer. So any Canadian's pocket coins probably will include a few US coins, and they are all treated as the same thing. I have found that less common south of the border, though. I once was in a northern state town and had two Canadian pennies returned to me as unacceptable!