As you are passing BETWEEN... as a value it's being escaped.
Maybe you can do it like:
'payment_timestamp BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()' => NULL
'payment_timestamp BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()' => FALSE
'payment_timestamp BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()' => ''