public class PaymentConfirmationActivity extends Object implements RequiresSecurePaymentInformationActivity
CheckoutWorkflowActivity
is responsible for executing payment transactions that are
required to complete a successful checkout. This is where we strongly suggest that you execute
payment transactions due to the amount of control & visibility that it provides. With that being
said, if transactions were executed prior to entering the CheckoutWorkflow
, then this
activity doesn't have any work to do. Alternatively, if you wish to process the payment
transactions at a later time, then it can be done by skipping the transaction execution in this
activity.
We strongly suggest that this is the last activity in your CheckoutWorkflow
to eliminate
the need to reverse successful authorization transactions for carts with a single payment method.
If the cart includes multiple payments that are to be authorized within the checkout workflow,
then this activity ordering will not avoid the need to reverse an authorization. In that case,
there's a chance that one of the payments will be successfully authorized & then must be reversed
if one of the other payments fails authorization.PaymentSummaryService#shouldConfirmPayment(Payment)
Constructor and Description |
---|
PaymentConfirmationActivity(PaymentConfirmationService paymentConfirmationService,
org.springframework.context.MessageSource messageSource) |
Modifier and Type | Method and Description |
---|---|
com.broadleafcommerce.cart.client.domain.Cart |
execute(@NonNull com.broadleafcommerce.cart.client.domain.Cart cart,
@NonNull String requestId,
com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Method responsible for executing some work against the cart that is required for checkout.
|
com.broadleafcommerce.cart.client.domain.Cart |
execute(@NonNull com.broadleafcommerce.cart.client.domain.Cart cart,
@NonNull String requestId,
@NonNull Map<String,String> securityCodes,
com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Method responsible for executing some work against the cart that requires secure payment
information in checkout.
|
protected String |
getMessage(@NonNull String errorMessage,
Object... args) |
protected org.springframework.context.MessageSource |
getMessageSource() |
protected PaymentConfirmationService |
getPaymentConfirmationService() |
com.broadleafcommerce.cart.client.domain.Cart |
rollback(@NonNull com.broadleafcommerce.cart.client.domain.Cart cart,
@NonNull String requestId,
com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Method responsible for rolling back any work that was done during the execution of the
#execute(Cart, String) method. |
public PaymentConfirmationActivity(PaymentConfirmationService paymentConfirmationService, org.springframework.context.MessageSource messageSource)
public com.broadleafcommerce.cart.client.domain.Cart execute(@NonNull @NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull @NonNull String requestId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
RequiresSecurePaymentInformationActivity
execute
in interface CheckoutWorkflowActivity
execute
in interface RequiresSecurePaymentInformationActivity
cart
- The Cart
that we're attempting to checkout with.requestId
- The id used to identify changes tied to the specific execution requestcontextInfo
- Context information around sandbox and multitenant state.public com.broadleafcommerce.cart.client.domain.Cart execute(@NonNull @NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull @NonNull String requestId, @NonNull @NonNull Map<String,String> securityCodes, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
RequiresSecurePaymentInformationActivity
execute
in interface RequiresSecurePaymentInformationActivity
cart
- The Cart
that we're attempting to checkout with.requestId
- The id used to identify changes tied to the specific execution requestsecurityCodes
- Secure codes that are passed to the gateway for verification during
authorization or capture transactions.contextInfo
- Context information around sandbox and multitenant state.public com.broadleafcommerce.cart.client.domain.Cart rollback(@NonNull @NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull @NonNull String requestId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
CheckoutWorkflowActivity
#execute(Cart, String)
method.rollback
in interface CheckoutWorkflowActivity
cart
- The Cart
that we were attempting to checkout with, but ran into an
exception/error.requestId
- The id used to identify changes tied to the specific execution requestcontextInfo
- Context information around sandbox and multitenant state.protected String getMessage(@NonNull @NonNull String errorMessage, @Nullable Object... args)
protected PaymentConfirmationService getPaymentConfirmationService()
protected org.springframework.context.MessageSource getMessageSource()
Copyright © 2021. All rights reserved.