Правильно: купить за что (при указании на определенную сумму): купить очки за 1000 рублей.
А что, возможны разные случаи? Приведите, пожалуйста, примеры употребления.
Верно: Купить товар со скидкой.
Правильно: мошеннику (какому) убеждающему.
Корректно: купить что-либо со скидкой; купить что-либо по (рекламной) акции.
В обоих вариантах нужна запятая перед где.