It was UBS. UBS sent a message to clearing clients via Swift, the interbank payments system, saying:

“Should we see a continuation of the net inflow of CHF in cash clearing accounts of our banking clients, we might have to take corrective action, within the next few days, by means of a temporary excess balance fee.”

Bloomberg has the scoop.

Obviously big banking clients of UBS got the news first, prompting the breathless short-covering rally in USD/CHF and CHF crosses.