Closed Bug 2048383 Opened 21 days ago Closed 13 days ago

"Manage payment methods" list empty when a saved card has no expiration date

Categories

(Firefox :: Settings UI, defect, P2)

defect

Tracking

()

VERIFIED FIXED
154 Branch
Tracking Status
firefox152 + verified
firefox153 + verified
firefox154 + verified

People

(Reporter: mtigley, Assigned: mtigley)

References

(Blocks 1 open bug)

Details

(Whiteboard: [fxcm-settings-redesign])

Attachments

(3 files, 1 obsolete file)

The "Manage payment methods" list in about:preferences renders empty when any saved credit card has no expiration date. The cards are not lost (they still remain in autofill-profiles.json and still appear in the autocomplete dropdown on web pages), but the entire settings list fails to display because a record can throws during rendering:

Uncaught (in promise) TypeError: can't access property "replace", record['cc-exp'] is undefined

Steps to reproduce

  1. Save a credit card without an expiration date (or add a record to autofill-profiles.json with no cc-exp/cc-exp-month/cc-exp-year).
  2. Open about:preferences → Manage payment methods.

Expected: all saved cards are listed.
Actual: the list is empty (including all other valid cards). The Browser Console shows a TypeError from FormAutofillPreferences.sys.mjs.

Assignee: nobody → mtigley
Status: NEW → ASSIGNED
Severity: -- → S2
Priority: -- → P3
Priority: P3 → P2
Whiteboard: [fxcm-settings-redesign]
Attachment #9598544 - Attachment is obsolete: true
Status: ASSIGNED → RESOLVED
Closed: 13 days ago
Resolution: --- → FIXED
Target Milestone: --- → 154 Branch

The patch landed in nightly and beta is affected.
:mtigley, is this bug important enough to require an uplift?

For more information, please visit BugBot documentation.

Flags: needinfo?(mtigley)

Also Release.

Attachment #9601694 - Flags: approval-mozilla-beta?

firefox-beta Uplift Approval Request

  • User impact if declined/Reason for urgency: Users who have a payment method saved with no expiry date won't be able to view their list of stored payments in the settings page

  • Code covered by automated testing?: yes

  • Fix verified in Nightly?: yes

  • Needs manual QE testing?: yes

  • Steps to reproduce for manual QE testing: Steps to reproduce

    1. Save a credit card without an expiration date (or add a record to autofill-profiles.json with no cc-exp/cc-exp-month/cc-exp-year).
    2. Open about:preferences → Manage payment methods.

Expected: all saved cards are listed.
Actual: the list is empty (including all other valid cards). The Browser Console shows a TypeError from FormAutofillPreferences.sys.mjs.

  • Risk associated with taking this patch: low
  • Explanation of risk level: low. only affects payments page of Firefox settings page
  • String changes made/needed?: no
  • Is Android affected?: no
Flags: qe-verify+
QA Whiteboard: [uplift][qa-ver-needed-c154/b153]
QA Contact: ailea

Verified - Fixed in Nightly 154.0a1(2026-06-26). Waiting for Beta uplift in order to verify it there as well.

Has STR: --- → yes
Attachment #9601694 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Flags: needinfo?(mtigley)

Verified - Fixed in Beta 153.0b6 (build id: 20260628073909). The list of cards is still displayed even if there are entries without expiry date saved.

This seems worth fixing on Release also. Please nominate for uplift if you agree.

Flags: needinfo?(mtigley)
Attachment #9601694 - Attachment description: Bug 2048383 - Don't let a card with no expiration date empty the payment methods list. → Bug 2048383 - Don't let a card with no expiration date empty the payment methods list. a=pascalc
Attachment #9601694 - Attachment description: Bug 2048383 - Don't let a card with no expiration date empty the payment methods list. a=pascalc → Bug 2048383 - Don't let a card with no expiration date empty the payment methods list - uplift for release. a=pascalc
Attachment #9603998 - Flags: approval-mozilla-release?
Flags: needinfo?(mtigley)
Attachment #9603998 - Flags: approval-mozilla-release? → approval-mozilla-release+

Verified - Fixed in Release 152.0.5 (build id: 20260706120035). The list of cards is still displayed even if there are entries without expiry date saved.

Status: RESOLVED → VERIFIED
QA Whiteboard: [uplift][qa-ver-needed-c154/b153] → [uplift][qa-ver-done-c154/b153]
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: