1014 Commits

Author SHA1 Message Date
Liza Ilina
cc5f0a545a Merge pull request #19778 from mozilla/PAY-3417-remove-name-as-it-appears-on-card-field
fix(payments-next): "Name as it appears on credit card" field does not appear prior to entering credit card number
2025-12-12 13:46:16 -05:00
elizabeth-ilina
6b11e4cf7a fix(payments-next): "Name as it appears on credit card" field does not appear prior to entering credit card number
Because:

* We’d like to collect less info and less fields, so we want to remove the Name field.

This commit:

* Removes "Name as it appears on your card" field from ui pages (checkout, submanage)
* Removes any backend code that required the full name field.

Closes #PAY-3417
2025-12-12 09:03:51 -05:00
Reino Muhl
52a0d9c47e fix(payments-iap): handle empty iap data response
Because:

- Apple IAP reponse where data response is an empty array results in a
  unexpected TypeError.

This commit:

- Update logic to support empty IAP data array.

Closes #PAY-3284
2025-12-10 15:54:55 -05:00
Mingyuan Zhao
e30cddd023 Merge pull request #19763 from mozilla/FXA-12630
feat(email): upload email-renderer lib's storybook to GCP
2025-12-09 17:39:21 -05:00
Lisa Chan
7834b1076f fix(payments-management): Display Subscription Not Found if subscription is expired for StaySubscribed 2025-12-09 16:23:45 -05:00
Dan Schomburg
696b737ad3 Merge pull request #19739 from mozilla/FXA-12556
task(admin-panel): Provide instructions to create rpQueue
2025-12-09 11:58:27 -08:00
dschom
a421088cc8 task(admin-panel): Provide instructions to create rpQueue 2025-12-09 11:03:06 -08:00
Lisa Chan
08e8196a2e Merge pull request #19771 from mozilla/fix_subman-access
fix(payments-management): Display Page Not Found if subscription is expired or does not belong to logged in customer
2025-12-09 13:41:04 -05:00
Lisa Chan
6723703f06 fix(payments-management): Display Page Not Found if subscription is expired or does not belong to logged in customer
Because
- Page Not Found should be displayed if subscription is not logged in customers
- Page Not Found should be displayed for expired subscription

This pull request
- Updates SubscriptionManagementService to return flowType not_found for expired subscription and subscription that does not belong to logged in customer
2025-12-09 13:09:30 -05:00
MagentaManifold
0ab7e7dc4f feat(email): upload email-renderer lib's storybook to GCP
Because:

* email-renderer lib's storybook is not uploaded to GCP

This commit:

* make it upload to GCP by adjusting output dir

Closes FXA-12630
2025-12-09 13:03:16 -05:00
MagentaManifold
9112515494 chore(email): turn off AMO phishing warning banner in emails
Because:

* We want to turn off AMO phishing warning banner in emails

This commit:

* deletes the bannerWarning partial

Closes FXA-12729
2025-12-09 12:44:53 -05:00
Lisa Chan
218c8a9814 polish(payments-ui): Prevent Stripe IntegrationError
Because:
- Stripe IntegrationError occurs as PaymentElement is missing when createConfirmationToken is called

This pull request:
- Checks that PaymentElement is on the page before calling createConfirmationToken
2025-12-09 09:46:20 -05:00
Davey Alvarez
c4d9b53b19 feat(payments-next): Capture error presence in CaptureTimingWithStatsD
Because:

* Currently failing methods and successful methods are in the same bucket, and separating out the timing of the two distribution populations is not trivial

This commit:

* Adds in `error: 'true' | 'false'` to the StatsD call depending on whether the wrapped method throws an error

Closes #PAY-3201
2025-12-05 12:20:35 -08:00
Lisa Chan
4f18ae8fb1 Merge pull request #19757 from mozilla/polish_new-subman-pages
polish(payments-ui): Revise mobile layout for Cancel/Stay subscribed pages
2025-12-05 13:32:06 -05:00
Lisa Chan
08d1147ca6 polish(payments-ui): Revise mobile layout for Cancel/Stay subscribed pages 2025-12-05 13:11:46 -05:00
Davey Alvarez
8494d581d3 polish(payments-next): Adjust styling and server action for terms
Because:

* A few code style and css-style tweaks were needed as a follow to the terms page release

This commit:

* addresses some of the outcomes from style conversations

Closes #N/A
2025-12-05 09:33:13 -08:00
Lisa Chan
922acd7994 Merge pull request #19728 from mozilla/PAY-3419
fix(payments-ui): Fix delay between coupon error messages
2025-12-04 16:27:14 -05:00
Lisa Chan
7f63e3993f fix(payments-ui): Fix delay between coupon error messages 2025-12-04 14:47:56 -05:00
Lisa Chan
197e5777ba Merge pull request #19718 from mozilla/PAY-3372
feat(payments-next): Add Cancel and Stay Subscribed pages
2025-12-03 16:47:18 -05:00
Lisa Chan
4bf651202d feat(payments-next): Add Cancel and Stay Subscribed pages 2025-12-03 15:02:32 -05:00
Amri Toufali
6f64251b58 Merge pull request #19725 from mozilla/delete-old-apperrors
chore(): delete old AppError/OauthError code
2025-12-03 09:19:59 -08:00
Davey Alvarez
4455c95464 Merge pull request #19736 from mozilla/PAY-3363 2025-12-03 17:00:56 +00:00
Liza Ilina
d53679adbc Merge pull request #19715 from mozilla/PAY-3362-add-action-when-customer-redeems-churn-coupon
feat(payments-next): Add Action when customer redeems churn coupon
2025-12-03 11:57:25 -05:00
Davey Alvarez
672af074c5 feat(payments-next): Add offering terms details page
Because:

* We need the ability to show terms of churn intervention offers

This commit:

* Adds in a page to display the CMS churn intervention terms details
* Adds in the data fetching logic to from the product configuration manager
* Fixes some graphql query localization logic

Closes #PAY-3363
2025-12-02 16:28:49 -08:00
Liza Ilina
2e9711d655 Merge pull request #19684 from mozilla/PAY-3349-add-expanded-payment-method-metrics-in-statsd
feat(payments-next): Add expanded payment method metrics in statsd/yardstick
2025-12-02 15:59:49 -05:00
elizabeth-ilina
a54db90454 feat(payments-next): Add Action when customer redeems churn coupon
Because:

* Need to add an action when a customer redeems a churn coupon.

This commit:

* Updates payments-ui to add Action to update customer’s subscription when redeeming churn coupon.
* If the customer is eligible and redeems the churn coupon, increments the customer’s redemption count.
* Makes sure the subscription's auto renew is set to false

Closes #PAY-3362
2025-12-02 14:42:52 -05:00
Lisa Chan
c24a5b1ce3 polish(payments): Revise conditional for Link 2025-12-02 11:20:53 -05:00
Amri Toufali
775f5b5e25 chore(): delete old AppError/OauthError code 2025-12-01 23:15:05 -08:00
elizabeth-ilina
c17c78e33c feat(payments-next): Add expanded payment method metrics in statsd/yardstick
Because:

* We currently report stripe vs paypal subscription payments, but with the introduction of expanded payment methods, we should capture that breakdown in statsd/yardstick

This commit:

* Differentiates between different SubPlatPaymentMethodType when reporting the payment provider.

Closes #PAY-3349
2025-11-27 14:11:40 -05:00
elizabeth-ilina
f5afd520b0 feat(payments-next): Add logic to check eligibility and return Churn intervention content
Because:

We will need to check whether:
* A churn coupon type exists for the offering and interval combo

* A customer is eligible to redeem the churn coupon

This commit:

Adds eligibility check for Stay Subscribed flow, based on the following criteria:
* The churn type coupon exists for offering/interval combo in CMS

* The customer can redeem the churn type coupon (compares customer’s redemption count for Churn intervention ID and redemption limit of Churn Intervention ID in CMS)

* The customer’s subscription for auto-renew is set to false.

Closes #PAY-3361
2025-11-27 09:05:03 -05:00
Davey Alvarez
a1d3eab678 Merge pull request #19685 from mozilla/PAY-3369
feat(shared-cms): Fetch Cancel Interstitial Offer
2025-11-19 22:03:50 +00:00
Davey Alvarez
19df582cad feat(shared-cms): Fetch Cancel Interstitial Offer
Because:

* We will be showing customers interstitial offerings to avoid cancellations

This commit:

* Adds in the necessary utils and types to fetch this data from Strapi

Closes #PAY-3369
2025-11-19 13:34:53 -08:00
Nick Shirley
47d89be2da Merge pull request #19675 from mozilla/rollback/FXA-12531
fix(auth): Roll back FXA-12531 changes to accountDevices
2025-11-19 11:49:39 -07:00
Amri Toufali
5d3eeb2127 chore(): remove package, replace with native Node API 2025-11-19 09:34:45 -08:00
Mingyuan Zhao
31714507d9 Merge pull request #19626 from mozilla/mingyuan/experiment-aal-error-handling
feat(settings): add error handler to auth client for AAL mismatch
2025-11-19 10:03:08 -05:00
Reino Muhl
6121c0211a Merge pull request #19679 from mozilla/pay-3411-populate-nimbus-id
feat(next): populate nimbus_user_id for all pay_setup
2025-11-19 08:03:22 -05:00
Dan Schomburg
9369b4a8ee Merge pull request #19664 from mozilla/FXA-12597
task(email-render): Concat en.ftl files into emails.ftl
2025-11-18 19:15:37 -08:00
MagentaManifold
187d16a7f3 feat(settings): add error handler to auth client for AAL mismatch
Because:

* We want a PoC for handling frontend auth errors globally

This commit:

* adds an error handler callback to auth client

Closes #FXA-12605
2025-11-18 19:47:50 -05:00
Davey Alvarez
23933a4049 feat(cms): Fetch Churn Intervention CMS data
Because:

* This data will be used to populate the UI of the churn reduction efforts

This commit:

* Adds a graphQL query to fetch the churn intervention data by its offering and interval
* Updates the product configuration manager to return this data

Closes #PAY-3360
2025-11-18 15:36:03 -08:00
Reino Muhl
4844fb30f0 feat(next): populate nimbus_user_id for all pay_setup
Because:

- `nimbus_user_id` needs to be populated for all pay_setup events.

This commit:

- Updates emitter and glean manager to populate `nimbus_user_id` for all
  pay_setup events.

Closes #PAY-3411
2025-11-18 13:14:32 -05:00
Nicholas Shirley
7fb0827bd1 fix(auth): Roll back FXA-12531 changes to accountDevices
Because:
 - We saw a spike in cpu wait after latest changes
 - And the query on average is slightly slower than prior

This Commit:
 - "Rolls back" the changes to accountDevices sproc. However, it does it
   by rolling forward. We can't revert the commit since it would drop
the stored procedure before code is updated and cause errors until code
deploys
2025-11-17 13:52:40 -07:00
Dan Schomburg
f631575d0e Merge pull request #19666 from mozilla/FXA-12663
chore(admin-panel): Disable account delete for support agents
2025-11-17 09:11:48 -08:00
Reino Muhl
3161b8c338 feat(next): add nimbus preview as query param
Because:

- Nimbus preview should not be enabled via a config variable.

This commit:

- Removes nimbus preview as a config variable.
- Updates nimbus.client to support preview as an input param
- Adds support for preview via query params

Closes #PAY-3410
2025-11-14 13:42:48 -05:00
elizabeth-ilina
179c2a4cf7 fix(payments-next): [Enhancement] Credit card logos are different in "Manage Subscription" and "Manage payment methods" pages
Because:

* Some logo images are outdated and don't match the logos used by Stripe under 'Manage payment methods'.

This commit:

* Uses official credit card brand logo SVGs downloaded from the respective websites.
* Uses digital logo size requirements.
* Note: some card logos will still be different in "Manage Subscription" and "Manage payment methods" pages.

Closes #[PAY-3405](https://mozilla-hub.atlassian.net/browse/PAY-3405)
2025-11-14 10:55:49 -05:00
dschom
f0e6b1de46 chore(admin-panel): Disable account delete for support agents 2025-11-13 16:32:54 -08:00
dschom
19d8681f0d task(email-render): Concat en.ftl files into emails.ftl
Because:
- We want to concatenate en.ftl strings into public/locales/en/emails.ftl

This Commit:
- Concatenates en.ftl string into public/locales/en/emails.ftl
- Updaets rendering code to the emails.ftl file instead the auth.ftl
- Adds nx command l10n-merge, which concats strings
- Adds nx command l10n-watch, which picks up change and concats strings
2025-11-13 15:29:57 -08:00
Lisa Chan
35800f5422 feat(payments): Add warning message when payment method is expired
This pull request
- Updates getCardIcon util to return width and height of icon
- Updates type in DefaultPaymentMethod from PaymentProvidersType to SubPlatPaymentMethodType
- Refactors Payment method section in SubMan page
- Displays error if expired payment method or account issue

Closes PSY-3350
2025-11-12 09:53:47 -05:00
Liza Ilina
161729527c Merge pull request #19608 from mozilla/PAY-3359-create-firestore-repository-for-churn-intervention
feat(payments-next): Create firestore repository for ChurnIntervention
2025-11-07 12:35:28 -05:00
elizabeth-ilina
96ecfe9455 feat(payments-next): Create firestore repository for ChurnIntervention
Because:

* We will need to keep track of whether a customer is eligible to redeem a churn coupon when checking if the customer’s redemption count is less than the redemption limit set for the churn content in Strapi.

This commit:

* Creates a repository for ChurnIntervention
* Adds Action to return Churn Intervention data
*(BOTH STILL IPR)

Closes #PAY-3359
2025-11-07 12:06:44 -05:00
Reino Muhl
48a53c5479 Merge pull request #19616 from mozilla/pay-3250-add-nimbus
feat(next): add experiments to payments-next
2025-11-06 14:06:21 -05:00