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.
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.
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
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.
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
Added PARTIAL_REVERSE_AUTH to Passthrough gateway’s list of supported features to assist with testing
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
).
Introduced new transaction lookup interface and PaymentResponse#nextAction
representation to support KNET payments with MyFatoorah and ACH payments with Stripe
Add owningUserType
and owningUserId
to `PaymentValidationRequest.
Compliments changes to support anonymous StoreCredit
ownership & usage.
Introduce additional FetchTransactionResultsException
constructor that takes in the cause
argument.
Updates to the PaymentResponse
domain and the PaymentGatewayWebhookHandler
interface to better support transactions flagged for manual fraud review
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