Using customer price lists

There was another thread about how to use the new customer price list feature, and there is also the documentation, and I carefully read through both of these to find out how to use the feature correctly. However, I am still confused.

I have a complete set of prices in the price list (I’ll call this the default) that was set up with the VM I downloaded from your site. We run a shop where customers each get different pricing based on whatever criteria is deemed appropriate for each customer. So I created a price list for one customer, expecting that, somehow, any prices not explicitly listed in that customer’s price list would automatically default to the original price list. My assumption is that, since the “default list” is specified in the customer group (Individuals) and in the Company setup, this would work as I expected.

At one point, it almost seemed like this would work fine. The first item I chose was from the customer’s price list, but all the other items showed $0.00 (not defaulting to the default price list). After adding one of the default items and deleting it (because it had the wrong price of $0.00), it looked like the system kind of “caught on” to the idea that I wanted defaults for the rest of the prices – the other items were, in fact, filled in with the regular prices from the “default” list. However, I have not witnessed this behavior since.

Are my expectations out of line? This seems like it would be consistent not only with the other features in erpnext, but with software generally. It is nice to be able to specify global defaults, and then defaults by subclasses of objects, and finally by individual objects. I can’t think of any reason why other users would object to this arrangement, and it certainly would not interfere with users who have already created complete copies of their “default” price lists.

1 Like

@cary welcome to the forum

This is a bit hard to understand. Can you help with a couple of screenshots?

Basically, I assigned ONE customer a different pricelist, but it only has 1 price for 1 product. I expected that any prices not quoted in that list would default to what I am calling the “default” price list.

So let’s say I have products A, B, C … Z, ok? I have a default price list with an entry for each product. All my customers use that list, as it is the default (selling) price list. So when I select a customer from the POS dropdown, it will use the prices from the default list. So product A might show $5.00, B $10.00, etc.

Now let’s say that a customer, Mary, who has a special customer price list, ok? And for that price list, I ONLY have product Q. On the default list, the price is, say, $20, but for Mary, she gets the same product Q for only $15 (maybe she is an old customer, who knows; it doesn’t matter). On the POS screen, all the products show a price of $0.00 EXCEPT for product Q, which shows $15.00.

IOW, rmehta, I am expecting that if a price is not explicitly included in a particular price list, the system will look in the next price list up the chain. You might call this “cascading” price lists.

I hope this explains it more clearly for you. And thank you very much for offering to assist.

So is this too big an expectation, this notion of “cascading” price lists? Seems it should work that way, because there could well be many uses of this concept.

@cary thanks that was clear!

That is a reasonable expection. Here is what you can do. Use a default price list, then create a Pricing Rule for that one customer. See: https://frappe.github.io/erpnext/user/manual/en/accounts/articles/pricing-rule.html

OK, I will try that, thank you!

But, still, do you agree or disagree with me that the price lists should cascade the way I am describing? If not, why not? Just wondering, that’s all.

1 Like

Agree its reasonable. But it will require further development, so best to use Pricing Rule as of now.

thank you for the honest reply. I appreciate the fact that you think this is reasonable. However, until that feature is available, I will see about using the pricing rule for now.

OTOH, the way we do things here may not even require pricing lists at all. Prices on various services depends on specific heads of hair. The price charged is determined at the time the stylist assesses how much work needs to be done (long or short hair, specific color requirements, things like that).

Would love to read your story if you are able to implement this well :smile:

@cary here’s a workaround we use:

We maintain “List Prices” and then each customer gets a price list on top of that. Sometimes they get a special price on certain items, so those are saved as a lower price for that one product.

If you choose “List Prices” (topmost of cascade) in quotation/sales order/etc, then choose that customer’s price list, only the prices that are DIFFERENT are applied when selecting customer’s price list.

I originally posted this issue because price list “cascading” in this manner was not working. You can see this if you read from the beginning of this thread.

Are you telling me that NOW this feature is working? If so, then perhaps the developers have updated the code to implement cascading price sheets. But this must be recent as it was not working when I originally tried it.

@cary Not exactly - what happens is that when on POS screen (or quotation, or sales order, etc), when you change the value of the price list, the price list rate in the children in the document get updated. If there is no entry in that price list, nothing changes.

If you insert all items into the document first. Next, set price list field to your top-level price list (master / list prices / etc). The price list rate will update to the rate set in that price list. Then, you change the price list field to your special price list. The only items that will have their prices updated are the ones with entries in the special price list, and the rest will be intact.

There is no cascading look-up or price list tree yet, but changing the price list in this manner updates the prices to reflect what you are trying to do until that feature is implemented.

1 Like

I sort of get what you are saying. I’ll have to experiment a bit to get the hang of it.

When cascading price lists are implemented, I’d like to suggest that each customer could have a default price list that would be “overlaid” on top of any other price lists. Some other ERPs have this kind of feature (IIRC, Phreebooks can do this, according to their docs). Not a biggee, and I’d still be happy just to have cascading price lists at all.

Thanks for this help. I’ll give it a try.