If you are using your OBC to purchase the package, you need to do it onboard. If you are just paying for one of the packages - essential, indulgence, etc., then you can call and purchase those ahead of time. That way you can use the shore excursion credit part to book excursions before your cruise. Apparently you can book liquor packages ahead of time as well unless you want to get the loyalty discount applied. I was just told that I would need to wait until I was onboard to purchase the ultimate drink package since I want to use my loyalty discount.