Interface PaymentGateway3DSTransactionLookupService
- All Superinterfaces:
PaymentGatewayTypeAware
This service is responsible for interacting with the payment gateway to fetch the payment
details. For example, if we need to verify if the customer successfully confirmed the payment for
the 3DS payment flow.
- Author:
- Dima Myroniuk (dmyroniuk)
-
Method Summary
Modifier and TypeMethodDescriptionorg.apache.commons.lang3.tuple.Pair<TransactionIdentifier,
PaymentResponse> Returns the payment details.lookupTransactionDetails
(TransactionLookupRequest transactionLookupRequest, String tenantId, String applicationId) Gathers transaction details from the payment gateway.void
validateRequestParams
(Map<String, String> requestParams) Validates the request parametersMethods inherited from interface com.broadleafcommerce.paymentgateway.service.PaymentGatewayTypeAware
getGatewayType
-
Method Details
-
validateRequestParams
Validates the request parameters- Parameters:
requestParams
- the parameters to validate- Throws:
InvalidFetchPaymentDetailsParamsException
- if the parameters are invalid
-
getTransactionDetails
org.apache.commons.lang3.tuple.Pair<TransactionIdentifier,PaymentResponse> getTransactionDetails(Map<String, String> requestParams, @Nullable String tenantId, @Nullable String applicationId) Returns the payment details.- Parameters:
requestParams
- the gateway-specific parameters on the request. For example, the payment details from Checkout.com will contain "cko-session-id".tenantId
- the id for the current tenantapplicationId
- the id for the current application- Returns:
- the payment details
- Throws:
InvalidGatewayConfigurationException
- when the integration is insufficiently configuredTransactionNotFoundException
- when the related transaction cannot be foundFetchTransactionResultsException
- when an error occurred during fetching of the transaction detailsTransactionResultsNotAvailableException
- when the transaction results are not yet available
-
lookupTransactionDetails
PaymentResponse lookupTransactionDetails(TransactionLookupRequest transactionLookupRequest, @Nullable String tenantId, @Nullable String applicationId) Gathers transaction details from the payment gateway.- Parameters:
transactionLookupRequest
- the request object including transaction-identifying datatenantId
- the id for the current tenantapplicationId
- the id for the current application- Returns:
- the payment details
- Throws:
InvalidGatewayConfigurationException
- when the integration is insufficiently configuredInvalidFetchPaymentDetailsParamsException
- when insufficient data is provided to look up the transactionTransactionNotFoundException
- when the related transaction cannot be foundFetchTransactionResultsException
- when an error occurred during fetching of the transaction detailsTransactionResultsNotAvailableException
- when the transaction results are not yet available
-