Interface PaymentGateway3DSTransactionLookupService
-
- All Superinterfaces:
PaymentGatewayTypeAware
public interface PaymentGateway3DSTransactionLookupService extends 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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description org.apache.commons.lang3.tuple.Pair<TransactionIdentifier,PaymentResponse>
getTransactionDetails(Map<String,String> requestParams, String tenantId, String applicationId)
Returns the payment details.PaymentResponse
lookupTransactionDetails(TransactionLookupRequest transactionLookupRequest, String tenantId, String applicationId)
Gathers transaction details from the payment gateway.void
validateRequestParams(Map<String,String> requestParams)
Validates the request parameters-
Methods inherited from interface com.broadleafcommerce.paymentgateway.service.PaymentGatewayTypeAware
getGatewayType
-
-
-
-
Method Detail
-
validateRequestParams
void validateRequestParams(Map<String,String> requestParams)
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
-
-