[Woo POS][Surveys] Add feature flag. Define "potential merchant" notification #16229
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

Closes WOOMOB-1456
Description
This PR adds the feature flag for POS Surveys, as well as defines the
LocalNotificationcase for the "potential merchant" case (unused). A potential merchant right now is just anybody that creates an order in the app, later on will narrow down the conditions further to send this notification.Changes
We expand the current behavior of
handleNotificationInTheForeground, which at the moment only handles remote push notifications, not local ones. This method is currently only used for tests, also I've confirmed with Kiwi how current Blaze notifications work at: p1760012173127899-slack-C03L1NF1EA3 just to be sure, and these only happen in the background.Testing
The notification code is not currently used:
PaymentMethodsViewModel, and add a call toscheduleNotification()insidePaymentMethodsViewModel.trackFlowCompleted:/// Tracks the `paymentsFlowCompleted` event. /// func trackFlowCompleted(method: WooAnalyticsEvent.PaymentsFlow.PaymentMethod, cardReaderType: WooAnalyticsEvent.PaymentsFlow.CardReaderType?) { let currencyFormatter = CurrencyFormatter(currencySettings: currencySettings) let amountNormalized = currencyFormatter.convertToDecimal(total) ?? 0 let amountInSmallestUnit = amountNormalized .multiplying(by: NSDecimalNumber(value: currencySettings.currencyCode.smallestCurrencyUnitMultiplier)) .intValue + scheduleNotification()Screenshots
ScreenRecording_10-09-2025.19-20-50_1.MP4