If you need to run an UPDATE in MySql on some rows in a table, but the reference of the condition to use is in another table, the best solution is to use an UPDATE associated with an INNER JOIN.
Here is an example:
UPDATE users INNER JOIN users_products ON users_products.user_id = users.id SET users_products.paid = 1 WHERE DATEDIFF(CURDATE(), users.payment_date) > 1;