def product(id, options={})
raise ArgumentError, "Product id #{id} is not an integer between 1 and 500" unless id.to_i > 0 && id.to_i <= 500
requires!(options, :amount, :description)
options.assert_valid_keys([:description, :quantity, :amount, :discount])
add_field("Vara_#{id}_Verd", format_amount(options[:amount]))
add_field("Vara_#{id}_Fjoldi", options[:quantity] || "1")
add_field("Vara_#{id}_Lysing", options[:description]) if options[:description]
add_field("Vara_#{id}_Afslattur", options[:discount] || '0')
@products ||= []
@products << id.to_i
end