Broadleaf Microservices
  • v1.0.0-latest-prod

Cart Operation Configurations

Service Properties

This service makes use of the following configuration properties from CartOperationServiceProperties:

  • broadleaf.cartoperation.service.failConfigErrorOnAdd: If there is a configuration error for a cart item when attempting to add it to a cart, fail the attempt.

    • This need to "fail fast" might be required if there isn’t a good way to fix the configuration errors after adding to cart.

    • Defaults to true.

  • broadleaf.cartoperation.service.priceInvalidation.updateContactInfo: Whether to consider pricing invalid if the contact information on the cart (e.g., customer email address) is changed.

    • Contact info can affect what offers or promotions apply to a cart since those can target a customer’s email address.

    • Default is true.

  • broadleaf.cartoperation.service.priceInvalidation.addAttribute: Whether to consider pricing invalid if a cart attribute is added.

    • Default is false.

  • broadleaf.cartoperation.service.priceInvalidation.removeAttribute: Whether to consider pricing invalid if a cart attribute is removed.

    • Default is false.

  • broadleaf.cartoperation.service.priceInvalidation.addPaymentMethod: Whether to consider pricing invalid if a payment is added to the cart.

    • Payment might matter in the case of offers and promotions that target specific payment types.

    • Default is false.

    • NOTE: This property has been removed since version 1.7.0

  • broadleaf.cartoperation.service.priceInvalidation.updatePaymentMethod: Whether to consider pricing invalid if a payment is updated.

    • Default is false.

    • NOTE: This property has been removed since version 1.7.0

  • broadleaf.cartoperation.service.priceInvalidation.removePaymentMethod: Whether to consider pricing invalid if a payment is removed.

    • Default is false.

    • NOTE: This property has been removed since version 1.7.0

  • broadleaf.cartoperation.service.bulkAddToCartOperation.productBatchSize: For bulk add to cart requests, this dicates the number of products that are fetched through the CatalogProvider at once to populate info on and validate the configuration of cart items being added.

    • This does not necessarily have a direct correlation to the number of requests that are being processed for that batch of products. For example, if two add to cart requests are based on the same product, then the product only needs to be gathered once to process both requests.

    • Default is 50.

  • broadleaf.cartoperation.service.defaultVirtualFulfillmentOptionName: Specifies the default fulfillment option for the VIRTUAL fulfillment type. If this property is specified, a default fulfillment option will be identified and assigned to the fulfillment group.

    • Default is DOWNLOAD

Checkout Properties

The following checkout configuration properties are from CartOperationCheckoutProperties:

  • broadleaf.cartoperation.service.checkout.checkout-transaction-types

    • Sets the transaction type that should be performed during checkout by payment gateway name

  • broadleaf.cartoperation.service.checkout.checkout-transaction-external

    • Whether the checkout transaction occurs externally such as for transparent redirect. Otherwise, the transaction is created in Broadleaf during the checkout workflow. The system can use this when validating payments to make sure that they have been executed in the external service. Map is keyed by payment gateway name

  • broadleaf.cartoperation.service.checkout.checkout-lookup-3ds-transactions-enabled

    • Whether or not to lookup the results of pending 3DS transactions during the checkout workflow

  • broadleaf.cartoperation.service.checkout.payment-gateway-priorities

    • A list of payment gateway types defining the order by which payments will be processed during checkout

  • broadleaf.cartoperation.service.checkout.checkout-payment-method-options

    • A list of configured payment methods that are available during checkout

  • broadleaf.cartoperation.service.checkout.checkout-payment-method-validation-enabled

    • Whether or not to validate payment methods during checkout activity workflow

    • Default is false

  • broadleaf.cartoperation.checkout.guest-token.token-timeout

    • Determines how long the guest token remains valid. Since this field is a duration values can specify the unit: 1h for 1 hour, 1s for 1 second, etc.

    • Default is 1h

Important
Please note that the following properties can be discriminated based on tenants and/or applications. For example, broadleaf.cartoperation.service.checkout.tenant.{MY_TENANT}.checkout-transaction-types.{GATEWAY_TYPE} can be defined for tenant discrimination, and broadleaf.cartoperation.service.checkout.application.{MY_APPLICATION}.checkout-transaction-types.{GATEWAY_TYPE} can be defined for application discrimination
Property Description

broadleaf.cartoperation.cart-cookie.*

Properties configuring the cookie that will store cart information. See com.broadleafcommerce.cartoperation.web.autoconfigure.CartCookieProperties for the full list of options.

broadleaf.cartoperation.cart-cookie.cookie-same-site-value

(since 1.6.0) The value to use for the SameSite attribute on the cart cookie.

(Defaults to Lax)

Delegating Tax Service Properties

The following checkout configuration properties are from DelegatingTaxServiceProperties:

  • broadleaf.cartoperation.delegatingtaxservice.persist-tax-response-on-cart

    • Whether to populate the tax response payload on the cart. Typically, this is only extra information not needed by downstream systems.

    • Caution! This payload can be fairly large depending on tax provider, which may cause issues downstream with messages. Be sure the size is validated before setting to true.

    • Default is false

  • broadleaf.cartoperation.delegatingtaxservice.persist-tax-response-on-fulfillments

    • Whether to populate the tax response payload on the fulfillment groups. Typically, this is only extra information not needed by downstream systems.

    • Caution! This payload can be fairly large depending on tax provider, which may cause issues downstream with messages. Be sure the size is validated before setting to true.

    • Default is false