Quotation system

Bart Lewandowski asked on November 23, 2018 11:41

Hi all,

I got interesting project from one of my customers. I need to create a quote system integration. Basically my customer will create the quote for their customer in the ERP system and post it to the website, where their customer would be able to access it and pay for it. First part is easy enough. I can use REST to create an order with status 'quote'. Initially I thought about allowing the user to copy that order to the basket and process everything as normal. This approach has a few drawbacks though. First (and easiest to solve) is the fact that basket allows for qty modification - and that can't happen in the quote as it is fixed on qty. Other problem is that quote will have a specific UnitPrices for this one-time-only and since K11 the basket's item table doesn't contain field UnitPrice anymore. Additional problem is a fact that their cart is very heavily modified to allow bespoke pricing and discount structure, also it is recalculated frequently based on these modifications. This causes that items in baskets shows up with customer standard prices instead of quote prices. I tried different simple method but none worked. Changing the bespoke pricing functions to allow specific orders to be exempted from standard price calculations will take a long long time (and don't guarantee that it will work). So instead I thought about skipping the shopping cart functionality altogether and present the quote to customer manually as a repeater of the order content and allow them to just pay for it. Order already contains all calculations, addresses, shipping methods, payment methods, etc (all synchronized from ERP), but how can I process the payment? The order is not in the cart, hence can't follow the cart pipeline. I understand that using standard cart, the order gets created just before the transition to the last step of a cart process (payment page) and its ID is passed to that page somehow. Is there any way to call the payment stage of the cart artificially inserting the Order ID I want to process?

Recent Answers


Suneel Jhangiani answered on November 26, 2018 00:21

Have you considered creating Quotations custom table which display the quote to the user it is for. When they click to order it populates the Shopping Cart control, but takes them directly to the payment page (ie. you have a second Checkout process just for quotations which skips showing the cart).

0 votesVote for this answer Mark as a Correct answer

   Please, sign in to be able to submit a new answer.