Most banks require your passport if you want to change cash, though they only change money Monday through Friday. There are also handy ATMs at the OCC bus station and on the southern side of the Plaza 31 de Marzo.
Banamex Has an ATM; exchanges dollars.
Banco Azteca Hidden in the back of the Elektra furniture store; exchanges dollars and euros. Dollar exchange limited to USD$300 daily per person.
Lacantún Money Exchange Open outside bank hours but rates are worse.