Personalized checkout and custom promotions with Shopify Scripts
Hi, I'm running Ruby script in checkout page to apply discount based on customer tag.
it seems to work fine, but shows Production errors : `Runtime Error`
It says like this.
RuntimeError undefined method '/' for #<Money: "96$">
Money value is being changed whenever this error happens.
I'd love to share some code piece here.
class PercentageDiscount def initialize(percent, message) @discount = (100 - percent) / 100.0 @message = message end def apply(line_item) # changed_amount = line_item.original_line_price - line_item.line_price # discounted_price = line_item.original_line_price * @discount # if changed_amount != Money.new(cents: 0) # discounted_price = discounted_price - changed_amount # end # line_item.change_line_price(discounted_price, message: @message) if line_item.properties.length == 0 line_item.change_line_price(line_item.line_price * @discount, message: @message) else is_subscribe = false line_item.properties.each do |property| if ( 1 == property.count { |x| x == "shipping_interval_frequency" } ) is_subscribe = true break end end if is_subscribe @discount = 100 - @discount * 100 if @discount > 10 discounted_price = ((line_item.line_price / 9.0) * 10 * (100 - @discount)) / 100.0 line_item.change_line_price(discounted_price, message: @message) end end end end end
It's really hard to find out it because I can't reproduce it in duplicated Script.
Hope to hear from Shopify experts soon.
All the best.
Thanks.
running into this same problem, and script editors half baked at best documentation makes working with script editor such a pain. I honestly hate the replacement they come up with too. Functions over complicates what should be a simple task. if they would have added even the tiniest bit of helpful documentation, maybe people would have utilized it more.
Discover how to increase customer engagement on your store with articles from Shopify A...
By Jacqui Apr 23, 2025Hey Community 👋 Did you know that March 15th is National Everything You Think Is W...
By JasonH Apr 1, 2025Discover how to increase the efficiency of commerce operations with Shopify Academy's l...
By Jacqui Mar 26, 2025