There are many items you can order in advance through Princess' gift program, such as spa treatments and wine packages.I'm not sure about the soda card, as I did not see it on the list of gift items on the Princess Web site, although a 6-pack of soda is available for $9.50.
Shore excursions can definitely be booked in advance online -- that's what we did earlier this year -- although there may be a deadline. You can do this through the Cruise Personalizer on the Princess site. You'll need your booking number to do this.As I currenlty don't have a Princess cruise booked, I'm unable to go in and see what else can be reserved. Yet, I remember there were a variety of possibilities.