Вы можете обойти ограничение "только целые числа", добавив Float для параметра step:
f.number_field :amount, step: 0.5
Обновление: на самом деле вы можете использовать значение "любой" для шага, он будет принимать все числа с плавающей запятой и целые числа, и шаг будет 1:
f.number_field :amount, step: :any
Обновление цен:
Вы можете использовать помощник рельсов number_to_currency для отображения цены внутри number_to_currency: