Broadleaf Microservices
  • v1.0.0-latest-prod

Quote Configurations

There are several configuration properties available for quote:

Enabling/Disabling Quote Functionalities

Quote-related functionalities can be controlled by the following tenant/application discriminated property:

  • Property: broadleaf.quote.enabled

  • Class: QuoteProperties

  • Tenant/Application Discriminated? Yes

  • Determine if quote-related functionalities are enabled for the given context.

  • Disabled by default.

The property is used by QuoteFunctionalitiesAspect to guard the usage of quote-related components, which are:

  • QuoteEndpoint

  • QuoteService

  • ManageCartEndpoint#createCart

    • Guards against the creation of a QUOTE-typed cart

  • ManageCartEndpoint#addItemToCart

    • Guards against the creation of a CUSTOM_QUOTE_ITEM-typed cart item

  • ManageCartEndpoint#addManyItemsToCart

    • Guards against the creation of many CUSTOM_QUOTE_ITEM-typed cart items

The out of the box restrictions can be loosened by extending QuoteFunctionalitiesAspect#getUnrestrictedMethods.

Determining If Quote is Enabled by External Components

Sometimes it may be useful for external components to query against CartOperationService to determine whether quote is enabled for a given context.

For example, certain UI components should only be rendered if quote is enabled. In this case, the following endpoint can be used:

  • Path: GET /quotes/properties

  • Example response:

    {
      "enabled": "true"
    }

Sales Team Email

A default sales team email should be configured, so that sales rep notifications can be sent properly, e.g. a quote is requested

  • Property: broadleaf.quote.sales-team-email

  • Class: QuoteProperties

  • Tenant/Application Discriminated? Yes

  • Used for quote status transition notifications when the quote is unassigned

Sales Rep Assignment Requirement

Whether a sales rep is required to be assigned to a quote before any changes can be made by the sales rep can be configured with the following property:

  • Property: broadleaf.quote.require-sales-rep-assignment

  • Class: QuoteProperties

  • Tenant/Application Discriminated? Yes

  • Enabled by default.

Quotes with only Custom Quote Items

Whether a custom quote item can exist without having any STANDARD items in the quote can be configured with the following property:

  • Property: broadleaf.quote.custom-quote-items-can-exist-without-standard-items

  • Class: QuoteProperties

  • Tenant/Application Discriminated? Yes

  • false by default.

Quote Statuses to Filter by in Admin View

  • Property: broadleaf.cartoperation.service.quote.requested-quote-statuses

  • Class: QuoteConfigurationProperties

  • Tenant/Application Discriminated? No

  • List of quote statuses to filter by for the quote admin view

  • Default values:

    • QUOTE_REQUESTED

    • ASSIGNED

    • PUBLISHED

    • CANCELED

    • REJECTED

    • EXPIRED