Если письмо покупателя - это именно заявление о зачете, а не предложение обсудить вопрос, и встречные денежные требования однородны, срок уплаты штрафа уже наступил, договор не запрещает односторонний зачет, то доход на УСН по удержанной сумме нужно признать на дату получения вами этого заявления. Для УСН это считается погашением долга иным способом, поэтому поступление денег на счет не требуется.
Ваше отдельное согласие для зачета по общему правилу не нужно. Но в письме должны быть четко указаны обязательства, сумма и воля на прекращение долга зачетом. Если договором предусмотрен только двусторонний акт, либо штраф спорный, не подтвержден, или письмо выглядит как одностороннее удержание без достаточной конкретики, я не могу подтвердить зачет на дату письма. Тогда безопаснее ставить доход после подписанного акта, соглашения сторон или судебного акта.