Broadleaf Microservices
  • v1.0.0-latest-prod

Payment Gateway Common Release Notes

2.0.3-GA

  • Changes to support modernization of Billing Service.

    • Added currentBillingAttemptNumber to the payment request

    • Introduced ADD_TO_BILL payment type

  • Update DiscriminatedProperties to utilize CaseInsensitiveMap when binding application and tenant ID property key prefixes This ensures properties supplied via YAML vs environment variables are not treated as separate properties purely due to a case mismatch.

  • Added support for receiving updated transaction results through the webhook.

    • Introduced UPDATED_TRANSACTION_RESULTS as a supported webhook notification type

    • Added isSupportedTransactionUpdateType method to the PaymentGatewayWebhookHandler interface

2.0.2-GA

  • Added owning entity & amount representations to the PaymentInfo object.

  • Introduced PaymentGatewayPaymentModificationService#updateGatewayPayment for updating the gateway’s representation of the payment as part of a request updating the PaymentTransactionServices payment.

  • Introduced PaymentGatewayPaymentSummaryService#buildNextActionFromPayment for building a PaymentSummary#nextAction based on payment data, rather than transaction data. Note: this is meant to be used if the payment does not yet have any transaction data.

  • Introduced PaymentGatewayTransactionService#identifyTransactionReferenceIdOverrideForInitialTransaction for being able to add custom logic for declaring the transactionReferenceId for an initial checkout transaction.

  • Introduced the APPLE_PAY_EXPRESS, GOOGLE_PAY_EXPRESS, & PAYPAL_EXPRESS payment types.

  • Reintroduced deprecated currency field for backwards compatibility.

2.0.1-GA

  • Introduced the PaymentCallbackSecurityTokenUtil & PaymentGatewayPaymentModificationService#getCallbackUrlKeys() to support token-based security on externally-executed payment transactions that use a checkout redirect interaction (e.g. 3DS verification & HPP interactions).

    • Added the gatewayType to the PaymentInfo payload used for the PaymentGatewayPaymentModificationService interface.

    • Introduced the PaymentCallbackSecurityTokenNotFoundException denoting that no security token was found for the payment callback.

  • Introduced the CANCELED & EXPIRED TransactionFailureTypes.

  • Introduced the applicationId field to the TransactionIdentifier payload used by webhooks to record & communicate transaction results.

2.0.0-GA

Spring Boot Upgrade

  • As of Broadleaf Release Train 2.0.0-GA, all common libraries have been upgraded to Spring Boot 3.

  • This version includes all changes up to 1.5.18-GA

1.5.18-GA

  • Introduce the REVERSE_AUTH_REMAINDER payment gateway feature that helps PaymentTransactionServices' PaymentSummary communicate the style of ReverseAuth transaction that’s supported by the gateway. From there, OrderOps uses this representation to understand whether a ReverseAuth should be executed due to a cancellation, or if it should defer to logic that determines if the order’s fulfillments are finalized before executing a ReverseAuth.

1.5.17-GA

  • Introduced the SavedPaymentMethodStatus interface & DefaultSavedPaymentMethodStatuses enum to describe the status of a SavedPaymentMethod

  • Added recommendedSavedPaymentMethodStatus field to the PaymentResponse object

  • Introduced PaymentCustomerNotification domain class that is used to send the customer notifications. Added customerNotification field to the PaymentResponse object.

  • Added BNPL to DefaultPaymentTypes

1.5.16-GA

  • Added PARTIAL_REVERSE_AUTH to Passthrough gateway’s list of supported features to assist with testing

1.5.15-GA

  • Added the implementation of the Serializable interface to the NextAction class to fix an issue java.io.NotSerializableException: com.broadleafcommerce.paymentgateway.domain.NextAction.

  • Introduced the PaymentGatewaySavedPaymentMethodWebhookHandler & related domain objects to support the saving of ACH payment methods for future use.

  • Introduced the InvalidWebhookRequestException to distinguish between having insufficient data to complete webhook validation vs having sufficient data, but failing the validation (i.e. a WebhookValidationException).

1.5.14-GA

  • Updated misc. enums to better support KNET & hosted payment page interactions

1.5.13-GA

  • Added feesTotal & includedTaxTotal to the PaymentValidationRequest payload

1.5.12-GA

  • Introduced new transaction lookup interface and PaymentResponse#nextAction representation to support KNET payments with MyFatoorah and ACH payments with Stripe

1.5.11-GA

  • Add owningUserType and owningUserId to `PaymentValidationRequest.

    • Compliments changes to support anonymous StoreCredit ownership & usage.

  • Introduce additional FetchTransactionResultsException constructor that takes in the cause argument.

1.5.10-GA

  • Notes consolidated with 1.5.11-GA

1.5.9-GA

  • Notes consolidated with 1.5.11-GA

1.5.8-GA

  • Updates to the PaymentResponse domain and the PaymentGatewayWebhookHandler interface to better support transactions flagged for manual fraud review

1.5.7-GA

  • Introduced a flag to PaymentResponse to communicate that an Authorize or AuthorizeAndCapture transaction was flagged for manual fraud review.

  • Introduced PaymentResponse#manualReviewResult (value to be declared using a ManualFraudReviewResultType value) & PaymentResponse#manualReviewResultReason to communicate the result of a manual fraud review.

  • Introduced the ability for a gateway to declare FORCED_REVERSE_AUTH_WITH_PARTIAL_CAPTURE as a supported feature, causing PaymentTransactionServices to record an implied ReverseAuthorize transaction if a partial Capture is executed.

  • Introduced SupportedWebhookNotificationType to allow PaymentGatewayWebhookHandler implementations to declare the categories of webhook notifications that they intend to support.

  • Updated PaymentGatewayWebhookHandler interface method to take in the webhook request’s p

Release Train Compatibility

Compatible with all Release Trains after 1.7 unless otherwise noted.