The new policy, started last Thursday, does not apply to Apple's online sales or to AT&T stores. AT&T is the exclusive service provider for the iPhone and sets its own store policies.
"Limiting iPhone sales to two per customer helps to ensure that there are enough iPhones for people shopping for themselves or buying a gift," an Apple spokeswoman said Monday. The policy of credit or debit cards only is to discourage unauthorized resellers.
Before the new policy, customers could pay cash, and there was a limit of five iPhones per person.
Apple has sold 1.4 million iPhones since they went on sale June 29. The touch-screened gadgets are expected to be a popular item during the holiday season.
Apple believes some iPhones have been bought for resale. Reactions to Apple's stance in the blogosphere have been mixed. Recent posts suggest some iPhone fans think Apple is brilliant for preventing third-party resale, while others criticized Apple's no-cash policy as "un American."
"Do you have any U.S. currency in your wallet? Take out a bill and look at it. See where it says 'This note is legal tender for all debts public and private'? Apple doesn't have a leg to stand on," said a poster known as RogerC48.
In addition, people are buying the devices and using software available over the Web to unlock the phones, so they can work on networks other than AT&T's. During an earnings call this month, Apple executives said they believe a quarter million iPhones have been unlocked by buyers.
Besides unlocking iPhones, hackers also have been working on bypassing Apple's attempt to control access to the device's operating system. Rather than release a software development kit that would let developers build native applications for the iPhone, Apple encouraged software makers to build Web applications that would run on the iPhone's Safari browser.
Apple chief executive Steve Jobs recently changed the company's stance and said Apple would offer an SDK in February.