Change product price before putting it on a cart Overview:

I have a website that only sells one product. It has a $0.00 Price.

I have this custom form when sent, it will give the product id (e.g.) to the uc_cart_add_item

uc_cart_add_item($nid, $qty = 1, $data = NULL, $cid = NULL, $msg = TRUE, $check_redirect = TRUE, $rebuild = TRUE);


Well, technically it goes to the cart with a price of $0.00. 

So the question here is, how can I alter the product price before sending it to the cart?

I saw this function from other website that this one alters the product price 

hook_uc_product_alter(&amp;$node)


Unfortunately, it doesn't seem to work or something.

I've searched for some questions 

Ubercart alter product price when product added to cart

Even this one, but it's on Drupal Commerce not on Ubercart

programmically change price of product

Any help would be appreciated.
You want to alter the cart item, not the product node. hook_uc_cart_alter is what you're looking for. 

function MYMODULE_uc_cart_alter(&amp;$items) {
  foreach($items as $key =&gt; $item) { //Set all items to $3.50
    $item-&gt;price = 3.50;
  }
}