Prices can be assigned for a variant based on Customer Groups and Sale Code.
e.g.
for variant 1
Group 1|Marke1|SaleCode:UpFront|10.00|Currency
Group 1|Marke1|SaleCode:Monthly|4.00|Currency
Group 2|Marke1|SaleCode:UpFront|12.00|Currency
Group 2|Marke1|SaleCode:Monthly|5.00|Currency
/K
Thanks for the reply!
Just to test if I understand you correctly:
First I create two Customer Groups one for monthly payment and one for up front payment.
I create two prices on the variant each whith a sales code which equals the name of the Customer Groups.
Then when the costumer buy the variant, I set the Costomer Group "behind the scenes"?
Is the way you would do it, or is there something that I am missing.
I think you are not dividing customers on Groups. Therefore Default Customer Group "All Customers will work".
But Out of the box, Sale Code(UpFront/Monthly) can help you to present two different prices to customers on your website for same variant. Based on selection of Customer you can filter the prices that which price you want to show/charge.
All Customers|Marke1|SaleCode Upfront|10.00|Currency
All Customers|Marke1|SaleCode Monthly|4.00|Currency
If you want to manage it via Customer Groups, then you will not require to define Code e.g
Group Upfront|Marke1|NoSaleCode|10.00|Currency
Group Monthly|Marke1|NoSaleCode|4.00|Currency
You can do a quick test by defining some prices in Commerce Manger.
/K
Bear in mind, you may also need to alter the cart validation workflow if you need to use different sale code for the price. The default workflow only handle the All Customers without SaleCode
If you have a custom pricegroup and it's not the EffectiveCustomerGroup of the customerContact, yes you'll have to.
If you are going to use sale code for all customers, you will need to alter the GetItemPrice method in the workflow
protected Money? GetItemPrice(CatalogEntryDto.CatalogEntryRow entry, LineItem lineItem, CustomerContact customerContact)
{
List<CustomerPricing> customerPricing = new List<CustomerPricing>();
// Default one, which doesn't handle different sale code.
// customerPricing.Add(CustomerPricing.AllCustomers);
// register different sale code for all customers
customerPricing.Add( new CustomerPricing(CustomerPricing.AllCustomers.PriceTypeId,"RRP"));
Hi,
I have a scenario where each variant can have multiple prices:
1) Up front payment (what you must pay now).
2) Monthly price.
What price we charge for the variant depends on the configuration the costumer make before buying the variant.
Right now im thinking about adding one of the prices as a property on the variant.
The downside to this is that we can't use the implemented Epi sub-systems such as the Discounts/Marketing modules.
My question is: Does anyone have a good way to implement multiple prices on a variant?
Have anyone been in the same situation as me? and how did you solve it?
I was told by a EPiServer Soloution Architect that I might look into PriceTypes, but I can't find any good information on how to use it to solve my situation.