It's in the FTC rules in support of the "Fair Credit Billing Act".
Applies to telephone, mail-order, and on-line sales. Must ship on-or-before the 'promised' (if no specific date promised, then 30 days from the date of sale) ship date, or (by that date) give the customer _written_ means to cancel the order.
However, all the major credit-cards -- I have first-hand experience, as a merchant, with VISA, MASTERCARD, AMEX, DISCOVER, and DINERS CLUB; don't know about Carte Blanche or Nova (Novus?) -- have terms in their contract that forbid charging the card before the product is ready for the customer. i.e. the product is 'shipped', or 'available for pickup'.
Violating same is a _real_ good way to lose your ability to take credit cards. Some of the card issuers will give you the benefit of the doubt, _once_, others are not that generous.