Quotation Process feature overview

Edit on GitHub
Buyer Company user who can create a Request for quote (RFQ)
Sales representative (sales rep) A person who is eligible for reviewing the submitted RFQs
Shipment cost Price calculated for the shipment services.

With the Quotation Process feature the B2B customers ask for special prices, and suppliers can get back to them with a compromise pricing suggestion.

Request for Quote (RFQ) is a request that a B2B buyer sends to their suppliers stating that they would like to get a quoted price on particular products with the details about the packaging and volumes they need. Within the Spryker Commerce OS, RFQ is represented by the ability of a sales representative to see the list of quotes, check and edit them, thereby change and overwrite the prices for the products, view and edit shipment cost in the RFQ for a certain buyer. In turn, a buyer is able to create an RFQ from a shopping cart, add a note to it and bid for lower prices, as well as define a delivery address and select a shipment method. An RFQ can also specify the timeline for delivery, a date by which the proposal should be submitted, and the history of the negotiations. One of the RFQ features is a tool for creating special offers for buyers with limited validity. For example, a sales representative can update the prices for products in the RFQ and set the exact time until which this offer is valid, e.g., the 29th of December, 2019, 11:58 PM. If the buyer tries to proceed with this RFQ to checkout on the 29th of December, 2019, at 11:59 PM, then this RFQ will not be available. RFQ Validity

To view how to create and mange RFQs, see Quotation process & RFQ on the Storefront.

RFQ statuses

The RFQ can have the following statuses:

  • Draft—the RFQ is successfully created but not sent to a sales representative or customer (see RFQ Workflows to understand the RFQ process).
  • Waiting—the status appears after the RFQ has been sent to a sales representative. At this moment, the buyer can’t edit the RFQ after it has been sent, but they can cancel it.
  • In Progress—this status appears when the sales representative edits the RFQ.
  • Ready—a buyer receives the RFQ with this status when the sales representative has finished editing and sent the RFQ back to the buyer.
  • Canceled—Indicates a canceled RFQ.
  • Closed—appears when the customer has placed the order from the RFQ.

RFQ workflows

The process of requesting the quote includes two workflows depending on the role the user has. A workflow is defined as the sequence of steps the user can go through to complete the process successfully. These are:

Buyer workflow

A buyer can create a quote request the product prices from a shopping cart.

To view how to create and mange RFQs, see Quotation process & RFQ on the Storefront.

After submitting the request, RFQ gets to the status Draft.

For the Draft RFQ, a buyer can:

  • Add one or multiple delivery addresses.
  • Select shipment methods to quote request items.
  • Check the version information.
  • Edit and add/remove products.
  • Change product quantity and update meta information.

Once the buyers are done editing the Draft RFQ, they can send it to a sales representative. After that, they wait until the RFQ gets processed by a sales representative. The status of the RFQ changes to Waiting. Request for Quote cannot be edited at this point. It is only possible to cancel it.

After the sales representative has processed the request, the buyer gets it back with the status Ready. At this point, if buyers are satisfied with such a request, they can convert the RFQ to the cart, and after that, proceed to checkout. When the order is placed, the RFQ receives the Closed status.

If they aren’t satisfied and would like to negotiate the price further, they can Revise the RFQ and move it back to the Draft status. The RFQ obtains a new RFQ version.

Schematically, the workflow is shown below: Buyer’s Workflow

Sales representative workflow

A sales representative can create an RFQ using two working procedures:

  • Via an agent account.
  • On behalf of a company user.

Via an agent account

Being logged in to an Agent account, a sales representative has access to the list of all the RFQs within the company. The RFQs are sorted by date and are displayed in all the statuses. A sales representative can revise the requests that are in the Waiting status. For the revising RFQ, a sales representative can:

  • Change the meta-information.
  • Add and remove the products.
  • Change product default price and quantity.
  • Edit shipment details, including a shipment cost.
  • Set the lifetime for a particular RFQ.

RFQ Life Time restricts the buyer by date and time until which the RFQ is considered valid. If the buyer hasn’t placed the order using the RFQ with Life Time, the RFQ automatically obtains the status Closed.

Upon revising the RFQ, a new RFQ version is created. When the sales representative sends the RFQ back to the buyer, the buyer receives the RFQ with the status Ready.


A sales representative can quickly access the RFQs via a Quote Request Widget that displays the latest five requests for quotes that were updated except for those that are in the status Closed. You can configure the statuses for the RFQ you would like to check in the widget on the project level. In the widget, the sales representative can check all the basic information for the RFQs.

On behalf of a company user

A sales representative can create an RFQ on behalf of any company user, then process it and even complete checkout. This option is especially convenient when, for example, a company user is busy or doesn’t have access to an account.

To create an RFQ on behalf of a user, see Creating an RFQ for a Customer

The workflow with statuses for a sales representative is presented in the schema below: Sales Rep Workflow

When a sales representative creates an RFQ, it has the Show the latest version to customer checkbox empty by default. It means that the buyer cannot see the latest updated version of the RFQ (for example, with the changed prices) until the Show the latest version to customer checkbox is selected. The buyer can see the In Progress status for the RFQ.

RFQ versioning

Versioning implies management of multiple variants of the same RFQ, all of which have same general details but include the customized data (for example, prices for the same products in the different versions of the RFQ can vary). Every RFQ receives specific identifiers, such as DE–1-Y-X, where:

  • DE–1—customer reference
  • Y—number of the request of the customer
  • X—version of the RFQ RFQ versions

The RFQ version is updated when:

  • The RFQ is created for the 1st time (for example, the version is DE-21-8-1).
  • The RFQ is revised and negotiated by the buyer.
  • The RFQ is revised by a sales representative.

Unblocking cart (resetting quote lock)

Converting the RFQ into a Shopping Cart adds a lock on it. A sales representative or a buyer cannot make any changes or updates to a locked cart. When the cart is locked, the only possible option is to proceed to checkout.

If your project has only the Persistent Cart module, which means that only one Shopping cart can exist in the customer account when the buyer clicks Convert to Cart, the products from the existing cart are replaced with the ones that were in the RFQ.

If your project has Persistent Cart and Multi-cart modules, converting the RFQ into a Shopping Cart creates a new locked shopping cart.

The buyers can utilize the blocked cart irrespective of the RFQ updates by unblocking the cart. However, the modifications that have been applied during the RFQ workflow will be discarded. Locked cart

Interaction of the RFQ with the approval process

Mixing several workflows adds complexity to the process and increases the steps a buyer should perform to submit the order. This can be true for projects where the Approval Process and RFQ are integrated. In such a scenario, every RFQ that hits the limit will need to be approved by a manager. Let’s check an example:

Example: In the project, the cart needs approval when the cart total exceeds €1000. A buyer adds the products to cart with the card total of €1500 and converts the shopping cart into the RFQ. The sales representative reviews the cart and updates the prices for products so that the cart total makes up €1300 and sends the RFQ back to the buyer. The buyer cannot proceed to checkout as the cart total still exceeds the limit, so the buyer has to send the RFQ to their approver. If the approver approves the cart, then the buyer will finally be able to create the order and pay for it.

Quotation Process and RFQ on the Storefront

Company users can perform the following actions using the CommentsQuotation process & RFQ feature on the Storefront:

Create an RFQ


Add an address and shipping method to the RFQ


Edit RFQ items


Canel an RFQ or sent ab RFQ to an agent


Convert an RFQ to cart


Agents can perform the same actions (on company users’ behalf) as company users. However, besides the actions mentioned above, agents can also do the following:

Revise an RFQ and send it back to the buyer


Current constraints

  • According to the current setup, shipping cost is not included in the RFQ process and is added afterward, during checkout.
  • Request for Quote does not work with the product bundles.
Developer guides

Are you a developer? See Quotation Process feature walkthrough for developers.