SmithCart supports adding products with variants to the cart and passing a user entered amount.
Example URL:
https://www.mydomain.com/BuyNow/cart.aspx?Variants=1~3&Price=50.00
Please Note: In order to pass a user entered amount in the querystring you must have “User Entered Amounts” enabled in the product setup screen for the product you want to add.