diff --git a/Sources/ProcessOut/Sources/Repositories/Shared/Responses/Failure/POFailureCode.swift b/Sources/ProcessOut/Sources/Repositories/Shared/Responses/Failure/POFailureCode.swift index f4771cb3a..156068d55 100644 --- a/Sources/ProcessOut/Sources/Repositories/Shared/Responses/Failure/POFailureCode.swift +++ b/Sources/ProcessOut/Sources/Repositories/Shared/Responses/Failure/POFailureCode.swift @@ -365,6 +365,9 @@ extension POFailureCode { /// The type field is missing. public static let missingType = POFailureCode(rawValue: "request.validation.missing-type") + + /// The redirect result is not support and can't be handled. + public static let redirectResultInvalid = POFailureCode(rawValue: "request.validation.redirect-result-invalid") } public enum Request { diff --git a/Sources/ProcessOutUI/Sources/Modules/NativeAlternativePayment/Interactor/NativeAlternativePaymentDefaultInteractor.swift b/Sources/ProcessOutUI/Sources/Modules/NativeAlternativePayment/Interactor/NativeAlternativePaymentDefaultInteractor.swift index 794391abb..d15dcc90c 100644 --- a/Sources/ProcessOutUI/Sources/Modules/NativeAlternativePayment/Interactor/NativeAlternativePaymentDefaultInteractor.swift +++ b/Sources/ProcessOutUI/Sources/Modules/NativeAlternativePayment/Interactor/NativeAlternativePaymentDefaultInteractor.swift @@ -1002,6 +1002,9 @@ final class NativeAlternativePaymentDefaultInteractor: } private nonisolated func didReceive(event: PONativeAlternativePaymentDeepLinkResolutionFailedEvent) -> Bool { + guard event.error.failureCode != .RequestValidation.redirectResultInvalid else { + return false + } Task { @MainActor in switch state { case .starting(let currentState):