I'm not sure exactly how it works. I believe when you do the online check in, you can give them either a credit card for your onboard spending account that they will link the SeaPass to, or when you check in at the pier, give them a cash deposit.
Someone else may be able to answer this better than I can.
2007 - Majesty of the Seas (Bahamas)
2009 - Enchantment of the Seas (Western Caribbean)
2010 - Freedom of the Seas (Western Caribbean)
2013 - Golden Princess (Alaska, roundtrip from Seattle)