Need to create a pay form or button with an open dollar amount

correct. Check the third example on the create payment documentation called Create a new payment with user information

You should be able to just call the createPayment function from the front end and pass in a price value that is defined by an input field.