SELECT 
  cscart_product_prices.product_id, 
  MIN(
    IF(
      cscart_product_prices.percentage_discount = 0, 
      cscart_product_prices.price, 
      cscart_product_prices.price - (
        cscart_product_prices.price * cscart_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  cscart_product_prices 
WHERE 
  cscart_product_prices.product_id IN (
    12643, 12649, 12609, 12644, 12650, 12652, 
    12653, 12654, 12646, 12655, 12656, 
    12645, 12651, 12597, 12615, 12603, 
    12629, 12604
  ) 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  cscart_product_prices.product_id

Query time 0.00044

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "cscart_product_prices",
      "access_type": "range",
      "possible_keys": ["usergroup", "product_id", "lower_limit", "usergroup_id"],
      "key": "product_id",
      "key_length": "3",
      "used_key_parts": ["product_id"],
      "rows": 18,
      "filtered": 99.23484039,
      "index_condition": "cscart_product_prices.product_id in (12643,12649,12609,12644,12650,12652,12653,12654,12646,12655,12656,12645,12651,12597,12615,12603,12629,12604)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
12597 46725.90000000
12603 14092.68000000
12604 4597.28000000
12609 14678.09000000
12615 15852.84000000
12629 21943.06000000
12643 19593.76000000
12644 19593.76000000
12645 19593.76000000
12646 23593.03000000
12649 33378.35000000
12650 33378.35000000
12651 33378.35000000
12652 23593.03000000
12653 43410.89000000
12654 70782.80000000
12655 43410.89000000
12656 70782.80000000