Skip to content

Commit a6e9468

Browse files
committed
card approve analytics changes
1 parent 8c99fde commit a6e9468

File tree

1 file changed

+19
-13
lines changed

1 file changed

+19
-13
lines changed

Sources/CardPayments/CardClient.swift

+19-13
Original file line numberDiff line numberDiff line change
@@ -109,23 +109,19 @@ public class CardClient: NSObject {
109109
guard getQueryStringParameter(url: url, param: "flow") == "3ds",
110110
url.contains("helios"),
111111
let url = URL(string: url) else {
112-
self.notifyCheckoutFailure(with: CardError.threeDSecureURLError, completion: completion)
112+
self.notify3dsCheckoutFailure(with: CardError.threeDSecureURLError, completion: completion)
113113
return
114114
}
115115

116-
analyticsService?.sendEvent("card-payments:confirm-payment-source:challenge-required")
116+
analyticsService?.sendEvent("card-payments:approve-order:auth-challenge-required")
117117
startThreeDSecureChallenge(url: url, orderId: result.id, completion: completion)
118118
} else {
119-
analyticsService?.sendEvent("card-payments:confirm-payment-source:succeeded")
120-
121119
let cardResult = CardResult(orderID: result.id, status: result.status, didAttemptThreeDSecureAuthentication: false)
122120
notifyCheckoutSuccess(for: cardResult, completion: completion)
123121
}
124122
} catch let error as CoreSDKError {
125-
analyticsService?.sendEvent("card-payments:confirm-payment-source:failed")
126123
notifyCheckoutFailure(with: error, completion: completion)
127124
} catch {
128-
analyticsService?.sendEvent("card-payments:confirm-payment-source:failed")
129125
notifyCheckoutFailure(with: CardError.unknownError, completion: completion)
130126
}
131127
}
@@ -161,25 +157,25 @@ public class CardClient: NSObject {
161157
context: self,
162158
sessionDidDisplay: { [weak self] didDisplay in
163159
if didDisplay {
164-
self?.analyticsService?.sendEvent("card-payments:3ds:challenge-presentation:succeeded")
160+
self?.analyticsService?.sendEvent("card-payments:approve-order:challenge-presentation:succeeded")
165161
} else {
166-
self?.analyticsService?.sendEvent("card-payments:3ds:challenge-presentation:failed")
162+
self?.analyticsService?.sendEvent("card-payments:approve-order:challenge-presentation:failed")
167163
}
168164
},
169165
sessionDidComplete: { _, error in
170166
if let error = error {
171167
switch error {
172168
case ASWebAuthenticationSessionError.canceledLogin:
173-
self.notifyCheckoutCancelWithError(with: CardError.threeDSecureCanceledError, completion: completion)
169+
self.notify3dsCheckoutCancelWithError(with: CardError.threeDSecureCanceledError, completion: completion)
174170
return
175171
default:
176-
self.notifyCheckoutFailure(with: CardError.threeDSecureError(error), completion: completion)
172+
self.notify3dsCheckoutFailure(with: CardError.threeDSecureError(error), completion: completion)
177173
return
178174
}
179175
}
180176

181177
let cardResult = CardResult(orderID: orderId, status: nil, didAttemptThreeDSecureAuthentication: true)
182-
self.notifyCheckoutSuccess(for: cardResult, completion: completion)
178+
self.notify3dsCheckoutSuccess(for: cardResult, completion: completion)
183179
}
184180
)
185181
}
@@ -229,13 +225,23 @@ public class CardClient: NSObject {
229225
completion(result, nil)
230226
}
231227

228+
private func notify3dsCheckoutSuccess(for result: CardResult, completion: (CardResult?, CoreSDKError?) -> Void) {
229+
analyticsService?.sendEvent("card-payments:approve-order:auth-challenge-succeeded")
230+
completion(result, nil)
231+
}
232+
232233
private func notifyCheckoutFailure(with error: CoreSDKError, completion: (CardResult?, CoreSDKError?) -> Void) {
233234
analyticsService?.sendEvent("card-payments:approve-order:failed")
234235
completion(nil, error)
235236
}
236237

237-
private func notifyCheckoutCancelWithError(with error: CoreSDKError, completion: (CardResult?, CoreSDKError?) -> Void) {
238-
analyticsService?.sendEvent("card-payments:approve-order:challenge:user-canceled")
238+
private func notify3dsCheckoutFailure(with error: CoreSDKError, completion: (CardResult?, CoreSDKError?) -> Void) {
239+
analyticsService?.sendEvent("card-payments:approve-order:auth-challenge-failed")
240+
completion(nil, error)
241+
}
242+
243+
private func notify3dsCheckoutCancelWithError(with error: CoreSDKError, completion: (CardResult?, CoreSDKError?) -> Void) {
244+
analyticsService?.sendEvent("card-payments:approve-order:auth-challenge-canceled")
239245
completion(nil, error)
240246
}
241247

0 commit comments

Comments
 (0)