Broadleaf Microservices
  • v1.0.0-latest-prod

Order Operation Release Notes for 2.0.1-GA

The 2.x versions are Spring Boot 3 compatible.


  • JDK 17 is required for Broadleaf release trains 2.0.0-GA, and beyond.

New Features & Notable Changes

Bug Fixes

  • Fixed the issue where a failed attempt to consume CheckoutCompletionEvents via the CheckoutCompletionListener could produce duplicates of the order’s fulfillments when message processing is re-attempted. Instead, we now check if the fulfillments already exist, prior to creating them.

  • Set the OrderFulfillmentItem.merchandiseSubtotal from the OrderItem.subtotal when building the OrderFulfillmentItem.

    • Before it was calculated as unitPrice * quantity. This may produce a slightly inaccurate result if the unitPrice was adjusted, for example, by subtracting a percentage of the calculated included tax. In this case, the precision of the MonetaryAmount when using division (e.g. the unit price taking 1/3rd of the included tax) can cause the calculated unit price to be off by a penny when rounding.

    • Note: If broadleaf.orderoperation.ordergeneration.remove-vat-from-item-price = true, then OrderItem.subtotal will already have the included merchandise tax subtracted from it before the OrderFulfillmentItem.merchandiseSubtotal is declared.

  • Fixed an issue with rounding of the OrderFulfillmentItem#proratedFulfillmentCharge after split.