Many travelers arrive to Skagway with Canadian or other foreign currency and try to exchange at the local bank. The local Wells Fargo does NOT exchange currency except for their customers. Even then, the exchange is not great. They do not exchange other currency at all. There is a local business on 2nd Avenue that is called Ports of Call or Seaman Center that does foreign currency exchange, but they must pay the poor rate that the bank gives them and so, again is a really poor exchange rate. (They also do fund transfers).

There is a cash machine at the bank on the corner of 6th and Broadway and another one in the local Radioshack on 5th Avenue. Sometimes you might find a local person who will exchange U.S. for Canadian. That's because locals shop in Whitehorse quite a bit, but its always hard to find a local. 

It is most convenient to use a credit card for purchases, but when traveling in a foreign country check with your credit card company first because in addition to the stilted exchange rate, they also charge a "foreign exchange fee" which runs about 3-4%. Most locals have a second credit card that does not charge extra fees.  And don't even think about getting travelors checks, most places will not take them, because the banks will not take them or will charge enormous fees to the business to deposit them. 

Last tip is to carry $2 bills for tips, they are special and cheaper than a $5 but better than a $1.