Stripe Checkout Price error - Invalid Integer
If currency is USD, the value is in cents not dollars, so 2, is 2 cents, 50, is 50 cents. Apparently.
Before you send the variable to strip you have to round to max. 2 decimals. So it will work.
Why? Because Stripe multiplies your value with 100 and the result has to be an integer - otherwise you get the error message.
The problem here is a floating point error in Javascript. If you look at this updated version of your jsfiddle you'll see what's happening and how I fixed it. You need to round the result of your calculation to ensure you end up with an integer:
var amount = Math.round(9.95*100); // gives 995
To read more about Javascript and floating point arithmetic you should look into The Floating-Point Guide