Can this be accomplished WITHOUT suitescript? I am...
# suitescript
e
Can this be accomplished WITHOUT suitescript? I am essentially trying to achieve two quantity pricing schemes on items. Company I work for has recently acquired another company that has volume discounts on items, PLUS a discount if you buy multiple lines of the exact same item and same quantity. They are not willing to budge on this and want it implemented no matter what. We sell a product that does not use discrete units, and customers will order a specific volume of the product on multiple lines, for example, a sales order might have these items on it: Line 1: 10-liters of tomato soup base - priced at $20 ($2/Liter) Line 2: 10-liters of tomato soup base - priced at $20 ($2/Liter) Line 3: 5-liters of tomato soup base - priced at $15 ($3/Liter) "tomato soup base" is already getting a quantity discount on every line, calculated by line quantity. I've been tasked with adding a second discount for the 10-liter pitches of tomato soup base, because the customer ordered multiple lines of the exact same item and quantity. I have a feeling this needs to be a client script but thought I'd ask.
r
Instead of having repeated lines of the same item? Why not have only 1 line item? Price levels set in the system and set the price level based on some custom logic script will be required ofc. It will be a more elegant solution per se.
e
repeated lines of the same item is because the customer is buying product sized to fit their production system, that they can use in different production runs. So in this example the customer is able to manufacture 3 batches of soup on 3 different occasions without having to portion the soup base out themselves from a single bulk container. This ensures consistency in their production, because the soup base can settle and will not be homogeneous when they go to use it multiple times. It's weird, but it's standard in this industry.
j
I feel like raghav was saying something like Line 1: qty:2 Item: 10-liters of tomato soup base - priced at $20 ($2/Liter) Line 2: qty:1 Item: 5-liters of tomato soup base - priced at $15 ($3/Liter)
e
That's kind of how the other company is accomplishing it now, but it requires making variants for every single item and size combination, and setting the price on those variants. This would make it a nightmare to keep track of our inventory, as we package to order. The only thing I could think of to keep track of our inventory this way would be to use kit type items in a matrix, but as far as I can tell that is not an option.
l
In the quantity pricing schedule, I believe there is an option to change it to "overall item quantity" instead of item level quantity.
r
I thought a bit and couldn't come up with a better solution than this maybe someone else can provide something better. But anyway here it is:, create a base inventory item. And create kit a for every single variant with different component quantity, priced at different levels. You will not have to manage the inventory for each individual variant. And then some small customisation for promotions.
😲 1
e
@raghav thank you for the advice. I fear that would be the "simplest" option, but it would require re-making each of our current items in the system, so we would lose years of sales history 😖 We carry 100+ different items and each one has around 30 quantity pricing levels. I'll have to think this over. There's a good chance my bosses change their mind AGAIN about what they want me to do 🙄 I appreciate all of your help everyone to help me think through this problem!
f
The base scenario is handled by qty pricing. The promotional scenario is handled by a discount/promotional observer combined with strategies. This is out of the box functionality for any good ecomm platform. Follow that pattern.
e
@Fred Pope can you clarify what you mean by "promotional observer" ? Where would I find that in Netsuite?
f
An observer is a design pattern, so in this case if not built into Netsuite, you would likely have something watching the record....e.g. a client script. This could get expensive depending on how you implement it and your environment.
e
Gotcha, thank you! That was my initial suspicion for how to implement this. Something that triggers on line validation, to look if the same sku/quantity combination already exists in the items list.
f
Yep. So two module files, one for the rules, and one to execute the rules (Strategy). A suitelet and user-event (entry points), and a client script as the observer and you have a nicely built chain of command.
e
thank you!
f
✌️
🖖 1