On what grounds, if any, can the retailer refuse the payment?
The third party is not privy to the contract between the retailer and consumer. This means that the contract does not legally bind the third party, and therefore any performance by the third party does not constitute performance of the contract by the consumer (in this case, the obligation to pay).
Therefore, the retailer does not have to accept payment.
There are two ways I can think of that such a third party may pay the debts of his friend:
First, he may ask the consumer for authority to pay on his behalf. If he obtains this authority, he will be acting as an agent, and therefore the third party may then pay the debt on the consumer's behalf. The retailer must accept this payment as settlement of the debt. Technically speaking, it is still the consumer who has settled the debt.
Second, the third party may make an offer to the retailer to settle the debts of the consumer. If the retailer accepts this offer (and thus accepts the payment) he will be agreeing to discharging the consumer's obligation to pay him. Rather than a variation of contract, this would probably be construed as an agreement not to enforce a contractual obligation (the obligation for the consumer to pay).
Are there any circumstances in which refusal of an offer of full payment by a third party constitutes a waiver of all or part of the debt?
I would say generally no. Perhaps exceptions exist in equity, such as if, the retailer, at some point, promised the consumer that he would accept payment by third party, and the consumer acts on this promise to his detriment (such as by taking the money he saved for payment and passing it on as a gift to the third party). The retailer might then be estopped from enforcing his claim for payment from the consumer. Though this is somewhat convoluted, it is theoretically possible.