FTC (Federal Trade Commissin) says that you can not charge the credit card until you ship the order, unless they advise you otherwise up front. That being said, they can authorize the credit card (put a hold on the funds) prior to shipping. This ensures the credit card is valid and the funds exist.