earnrate 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/README.md +18 -15
  2. package/data/CHANGELOG.md +79 -0
  3. package/data/VERSION +1 -1
  4. package/data/cards/amex-blue-business-plus.yaml +14 -6
  5. package/data/cards/amex-blue-cash-everyday.yaml +12 -3
  6. package/data/cards/amex-blue-cash-preferred.yaml +17 -3
  7. package/data/cards/amex-gold.yaml +23 -3
  8. package/data/cards/amex-platinum.yaml +19 -3
  9. package/data/cards/bank-of-america-atmos-rewards-ascent.yaml +15 -3
  10. package/data/cards/bank-of-america-atmos-rewards-business.yaml +19 -4
  11. package/data/cards/bank-of-america-atmos-rewards-summit.yaml +9 -2
  12. package/data/cards/bank-of-america-customized-cash-rewards.yaml +10 -4
  13. package/data/cards/bilt-obsidian.yaml +4 -3
  14. package/data/cards/capital-one-kohls-card.yaml +11 -2
  15. package/data/cards/capital-one-kohls-rewards-visa.yaml +8 -2
  16. package/data/cards/capital-one-savor.yaml +32 -10
  17. package/data/cards/capital-one-venture-x.yaml +19 -4
  18. package/data/cards/capital-one-venture.yaml +19 -5
  19. package/data/cards/chase-aeroplan.yaml +15 -3
  20. package/data/cards/chase-freedom-flex.yaml +50 -10
  21. package/data/cards/chase-freedom-unlimited.yaml +6 -2
  22. package/data/cards/chase-ihg-one-rewards-business.yaml +18 -2
  23. package/data/cards/chase-ihg-one-rewards-premier-select.yaml +14 -2
  24. package/data/cards/chase-ihg-one-rewards-premier.yaml +19 -2
  25. package/data/cards/chase-ihg-one-rewards.yaml +15 -2
  26. package/data/cards/chase-ink-business-cash.yaml +7 -3
  27. package/data/cards/chase-ink-business-preferred.yaml +9 -2
  28. package/data/cards/chase-prime-visa.yaml +24 -5
  29. package/data/cards/chase-sapphire-preferred.yaml +59 -6
  30. package/data/cards/chase-sapphire-reserve.yaml +12 -2
  31. package/data/cards/chase-southwest-performance-business.yaml +22 -4
  32. package/data/cards/chase-southwest-plus.yaml +13 -3
  33. package/data/cards/chase-southwest-premier-business.yaml +22 -5
  34. package/data/cards/chase-southwest-premier.yaml +13 -3
  35. package/data/cards/chase-southwest-priority.yaml +18 -2
  36. package/data/cards/chase-united-business.yaml +5 -2
  37. package/data/cards/chase-united-club-business.yaml +2 -2
  38. package/data/cards/chase-united-club.yaml +17 -4
  39. package/data/cards/chase-united-explorer.yaml +5 -2
  40. package/data/cards/chase-united-gateway.yaml +2 -2
  41. package/data/cards/chase-united-quest.yaml +12 -3
  42. package/data/cards/citi-aadvantage-business.yaml +10 -4
  43. package/data/cards/citi-aadvantage-executive.yaml +8 -8
  44. package/data/cards/citi-aadvantage-mileup.yaml +7 -4
  45. package/data/cards/citi-aadvantage-platinum-select.yaml +1 -1
  46. package/data/cards/citi-costco-anywhere-visa-business.yaml +6 -9
  47. package/data/cards/citi-costco-anywhere-visa.yaml +7 -10
  48. package/data/cards/citi-custom-cash.yaml +43 -12
  49. package/data/cards/citi-double-cash.yaml +9 -3
  50. package/data/cards/citi-my-best-buy-visa.yaml +6 -3
  51. package/data/cards/citi-strata-elite.yaml +12 -2
  52. package/data/cards/citi-strata-premier.yaml +24 -2
  53. package/data/cards/sofi-unlimited-2.yaml +17 -3
  54. package/data/cards/td-bank-nordstrom-credit-card.yaml +16 -3
  55. package/data/cards/td-bank-nordstrom-visa.yaml +23 -3
  56. package/data/cards/td-bank-target-circle-card.yaml +13 -4
  57. package/data/cards/usbank-cash-plus.yaml +29 -7
  58. package/data/cards/wells-fargo-active-cash.yaml +9 -2
  59. package/data/cards/wells-fargo-autograph.yaml +31 -7
  60. package/data/categories.yaml +12 -0
  61. package/data/currencies.yaml +2 -0
  62. package/data/issuers.yaml +32 -0
  63. package/data/memberships.yaml +33 -0
  64. package/data/merchants/overrides.yaml +25 -0
  65. package/data/merchants/seed.yaml +7 -0
  66. package/dist/cli/bin.js +10 -1
  67. package/dist/cli/cheatsheet.js +11 -6
  68. package/dist/cli/explore.js +17 -23
  69. package/dist/cli/import.js +10 -10
  70. package/dist/cli/offers.js +19 -8
  71. package/dist/cli/run.js +31 -20
  72. package/dist/cli/wallet.js +50 -5
  73. package/dist/data/file-store.js +9 -7
  74. package/dist/data/integrity.js +22 -2
  75. package/dist/data/load.js +13 -2
  76. package/dist/data/store.js +13 -22
  77. package/dist/data/wallet-edit.js +108 -8
  78. package/dist/engine/cheat-sheet.js +15 -19
  79. package/dist/engine/compare.js +10 -0
  80. package/dist/engine/evaluate.js +2 -4
  81. package/dist/engine/explore.js +13 -56
  82. package/dist/engine/memberships.js +41 -15
  83. package/dist/engine/offers.js +18 -5
  84. package/dist/engine/periods.js +18 -0
  85. package/dist/engine/profiles.js +8 -0
  86. package/dist/engine/recommend.js +23 -37
  87. package/dist/engine/setup.js +28 -40
  88. package/dist/engine/simulate.js +11 -10
  89. package/dist/engine/text.js +49 -23
  90. package/dist/engine/valuation.js +1 -1
  91. package/dist/engine/wallet-change.js +26 -11
  92. package/dist/engine/wallet-summary.js +85 -31
  93. package/dist/format/card-text.js +19 -36
  94. package/dist/format/cards.js +3 -3
  95. package/dist/format/explore.js +15 -16
  96. package/dist/format/offers.js +10 -15
  97. package/dist/format/recommendation.js +6 -6
  98. package/dist/format/wallet.js +5 -2
  99. package/dist/import/analyze.js +2 -1
  100. package/dist/mcp/context.js +61 -13
  101. package/dist/mcp/inputs.js +16 -7
  102. package/dist/mcp/schemas.js +9 -0
  103. package/dist/mcp/server.js +8 -1
  104. package/dist/mcp/tools/account.js +45 -17
  105. package/dist/mcp/tools/answers.js +84 -29
  106. package/dist/mcp/tools/wallet.js +109 -22
  107. package/dist/merchants/cache.js +0 -10
  108. package/dist/merchants/resolve.js +81 -4
  109. package/dist/schema/card.js +8 -12
  110. package/dist/schema/category.js +4 -0
  111. package/dist/schema/currency.js +2 -0
  112. package/dist/schema/issuer.js +8 -0
  113. package/dist/schema/membership.js +15 -0
  114. package/dist/schema/merchant.js +4 -0
  115. package/dist/schema/wallet.js +1 -1
  116. package/package.json +1 -1
@@ -3,10 +3,11 @@ name: Citi Strata Premier Card
3
3
  issuer: citi
4
4
  network: mastercard
5
5
  currency: TYP
6
- last_verified: 2026-10-26
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://www.citi.com/credit-cards/citi-strata-premier-credit-card
10
+ - https://www.thankyou.com/terms
10
11
  base_rate: 1
11
12
  annual_fee: 95
12
13
  welcome_offer:
@@ -60,6 +61,9 @@ evidence:
60
61
  - rule: citi-travel-hotels-cars-attractions
61
62
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
62
63
  quote: '10 points per dollar spent on Hotels, Car Rentals and Attractions booked on cititravel.com'
64
+ - rule: citi-travel-hotels-cars-attractions
65
+ url: https://www.thankyou.com/terms
66
+ quote: 'you won’t earn points on the portion of the purchase that is offset by the benefit'
63
67
  - rule: air-travel-and-other-hotels
64
68
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
65
69
  quote: '3 points per dollar spent on Air Travel and Other Hotel Purchases'
@@ -72,12 +76,30 @@ evidence:
72
76
  - rule: restaurants
73
77
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
74
78
  quote: '3 points per dollar spent at Restaurants'
79
+ - rule: restaurants
80
+ url: https://www.thankyou.com/terms
81
+ quote: 'fast-food restaurants, restaurant delivery services, and take out restaurants'
82
+ - rule: restaurants
83
+ url: https://www.thankyou.com/terms
84
+ quote: 'Excludes purchases at bakeries, caterers, and restaurants located inside another business'
75
85
  - rule: supermarkets
76
86
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
77
87
  quote: '3 points per dollar spent at Supermarkets'
88
+ - rule: supermarkets
89
+ url: https://www.thankyou.com/terms
90
+ quote: 'Excludes purchases made at general merchandise/discount superstores; freezer/meat locker provisioners'
91
+ - rule: supermarkets
92
+ url: https://www.thankyou.com/terms
93
+ quote: 'drugstores; warehouse/wholesale clubs; specialty food markets; bakeries'
94
+ - rule: supermarkets
95
+ url: https://www.thankyou.com/terms
96
+ quote: 'if the merchant does not classify itself as a supermarket by using the supermarket merchant code'
78
97
  - rule: gas-and-ev-charging
79
98
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
80
99
  quote: '3 points per dollar spent on Gas & EV Charging Stations'
100
+ - rule: gas-and-ev-charging
101
+ url: https://www.thankyou.com/terms
102
+ quote: 'Excludes gas and EV charging purchases at warehouse clubs, discount stores, department stores, convenience stores'
81
103
  - rule: annual_fee
82
104
  url: https://www.citi.com/credit-cards/citi-strata-premier-credit-card
83
105
  quote: 'Annual fee - $95. Fee for foreign purchases - None.'
@@ -3,17 +3,19 @@ name: SoFi Unlimited 2% Credit Card
3
3
  issuer: sofi
4
4
  network: mastercard
5
5
  currency: sofi-rewards
6
- last_verified: 2026-10-24
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://www.sofi.com/credit-card/unlimited/
10
+ - https://www.sofi.com/card/rewards?cardType=c
11
+ - https://www.sofi.com/card/terms?cardType=c
10
12
  base_rate: 2
11
13
  annual_fee: 0
12
14
  rules:
13
15
  - id: sofi-travel
14
16
  match: { merchants: [sofi-travel] }
15
17
  rate: 3
16
- note: Trips booked through the SoFi Travel portal (run by Expedia).
18
+ note: Trips booked through the SoFi Travel portal (run by Expedia), reached from SoFi's website or app. Booking on Expedia's own site or app doesn't count.
17
19
  # Issuer text backing each rule; `yarn check-sources` checks it weekly.
18
20
  evidence:
19
21
  - rule: base_rate
@@ -22,8 +24,20 @@ evidence:
22
24
  - rule: sofi-travel
23
25
  url: https://www.sofi.com/credit-card/unlimited/
24
26
  quote: 'equal to 3% of the total amount you spend'
27
+ - rule: base_rate
28
+ url: https://www.sofi.com/card/rewards?cardType=c
29
+ quote: 'You will earn 2 SoFi Rewards Point for each dollar ($1.00) you spend on your SoFi Credit Card.'
30
+ - rule: sofi-travel
31
+ url: https://www.sofi.com/card/rewards?cardType=c
32
+ quote: 'You will earn 3% cash back Rewards Points for SoFi Travel purchases.'
33
+ - rule: sofi-travel
34
+ url: https://www.sofi.com/credit-card/unlimited/
35
+ quote: 'Travel booked directly on Expedia’s website or app, or any other site operated or powered by Expedia is not eligible.'
25
36
  - rule: annual_fee
26
37
  url: https://www.sofi.com/credit-card/unlimited/
27
38
  quote: 'you’ll pay no annual fee whatsoever'
39
+ - rule: annual_fee
40
+ url: https://www.sofi.com/card/terms?cardType=c
41
+ quote: 'FEES Annual Fee None Transaction Fees'
28
42
  todo:
29
43
  - 'No public welcome offer: the page says the card is currently invite only (apply with a mailed reservation code), and shows no bonus.'
@@ -4,8 +4,8 @@ issuer: td-bank
4
4
  network: store
5
5
  only_at: [nordstrom, nordstrom-rack]
6
6
  currency: nordy-club
7
- last_verified: 2026-10-26
8
- verified_by: collin
7
+ last_verified: 2026-11-01
8
+ verified_by: claude
9
9
  source_urls:
10
10
  - https://www.nordstrom.com/browse/nordy-club
11
11
  - https://www.nordstrom.com/browse/nordy-club/faq
@@ -21,12 +21,13 @@ welcome_offer:
21
21
  spend: 0
22
22
  months: 1
23
23
  valid_to: 2026-12-01
24
+ not_with: [td-bank-nordstrom-visa]
24
25
  note: A $60 Nordstrom Note, not a statement credit, for applying and getting approved for a new Nordstrom credit card between October 12 and December 1, 2026 (the terms say 9pm PT October 11 to 9pm PT December 1). No purchase is required; the Note posts to the Nordy Club account 7-10 business days after approval, so months is only a placeholder. Current and previous Nordstrom credit cardmembers and Nordstrom employees are not eligible.
25
26
  rules:
26
27
  - id: nordstrom
27
28
  match: { merchants: [nordstrom] }
28
29
  rate: 1
29
- note: Card's own share only. Cardmembers start at Influencer status and earn 2 points per dollar at Nordstrom and Nordstrom.com, 1 of which any member earns paying any way. Paid through Apple Pay, Google Pay or PayPal it's 1 point per dollar, so nothing extra.
30
+ note: Card's own share only. Cardmembers start at Influencer status and earn 2 points per dollar at Nordstrom and Nordstrom.com, 1 of which any member earns paying any way. Apple Pay and Google Pay with the card still earn the full rate; through PayPal or another third-party processor, or another contactless method, it's 1 point per dollar, so nothing extra.
30
31
  - id: nordstrom-ambassador
31
32
  match: { merchants: [nordstrom] }
32
33
  rate: 2
@@ -67,3 +68,15 @@ evidence:
67
68
  - rule: welcome_offer
68
69
  url: https://www.nordstrom.com/becomecardmember
69
70
  quote: 'approved for a new Nordstrom credit card October 12 - December 1'
71
+ - rule: not_with
72
+ url: https://www.nordstrom.com/becomecardmember
73
+ quote: 'Current and previous Nordstrom credit cardmembers and Nordstrom employees are not eligible for this offer'
74
+ - rule: nordstrom
75
+ url: https://www.nordstrom.com/browse/nordy-club/faq
76
+ quote: "If you use your Nordstrom card via Google Pay or Apple Pay, you'll earn your standard Nordy Club base points"
77
+ - rule: nordstrom
78
+ url: https://www.nordstrom.com/browse/nordy-club/terms-conditions
79
+ quote: 'For purchases made with a third-party payment processor, including those linked to a Nordstrom credit or debit card'
80
+ - rule: nordstrom-rack
81
+ url: https://www.nordstrom.com/browse/nordy-club/terms-conditions
82
+ quote: 'Eligible purchases exclude gift cards, alterations, charitable donations, taxes, shipping fees'
@@ -3,8 +3,8 @@ name: Nordstrom Visa Credit Card
3
3
  issuer: td-bank
4
4
  network: visa
5
5
  currency: nordy-club
6
- last_verified: 2026-10-26
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://www.nordstrom.com/browse/nordy-club
10
10
  - https://www.nordstrom.com/browse/nordy-club/faq
@@ -19,12 +19,13 @@ welcome_offer:
19
19
  spend: 0
20
20
  months: 1
21
21
  valid_to: 2026-12-01
22
+ not_with: [td-bank-nordstrom-credit-card]
22
23
  note: A $60 Nordstrom Note, not a statement credit, for applying and getting approved for a new Nordstrom credit card between October 12 and December 1, 2026 (the terms say 9pm PT October 11 to 9pm PT December 1). No purchase is required; the Note posts to the Nordy Club account 7-10 business days after approval, so months is only a placeholder. Current and previous Nordstrom credit cardmembers and Nordstrom employees are not eligible.
23
24
  rules:
24
25
  - id: nordstrom
25
26
  match: { merchants: [nordstrom] }
26
27
  rate: 1
27
- note: Card's own share only. Cardmembers start at Influencer status and earn 2 points per dollar at Nordstrom and Nordstrom.com, 1 of which any member earns paying any way. Paid through Apple Pay, Google Pay or PayPal it's 1 point per dollar, so nothing extra.
28
+ note: Card's own share only. Cardmembers start at Influencer status and earn 2 points per dollar at Nordstrom and Nordstrom.com, 1 of which any member earns paying any way. Apple Pay and Google Pay with the card still earn the full rate; through PayPal or another third-party processor, or another contactless method, it's 1 point per dollar, so nothing extra.
28
29
  - id: nordstrom-ambassador
29
30
  match: { merchants: [nordstrom] }
30
31
  rate: 2
@@ -50,6 +51,10 @@ rules:
50
51
  match: { categories: [dining] }
51
52
  rate: 2
52
53
  note: Includes fast food, bars, caterers and third-party delivery. Restaurants inside Nordstrom earn as Nordstrom purchases.
54
+ - id: caterers
55
+ match: { mccs: [5811] }
56
+ rate: 2
57
+ note: Caterers count as dining.
53
58
  - id: streaming
54
59
  match: { categories: [streaming, tv_internet] }
55
60
  rate: 2
@@ -103,3 +108,18 @@ evidence:
103
108
  - rule: welcome_offer
104
109
  url: https://www.nordstrom.com/becomecardmember
105
110
  quote: 'approved for a new Nordstrom credit card October 12 - December 1'
111
+ - rule: not_with
112
+ url: https://www.nordstrom.com/becomecardmember
113
+ quote: 'Current and previous Nordstrom credit cardmembers and Nordstrom employees are not eligible for this offer'
114
+ - rule: nordstrom
115
+ url: https://www.nordstrom.com/browse/nordy-club/faq
116
+ quote: "If you use your Nordstrom card via Google Pay or Apple Pay, you'll earn your standard Nordy Club base points"
117
+ - rule: nordstrom
118
+ url: https://www.nordstrom.com/browse/nordy-club/terms-conditions
119
+ quote: 'For purchases made with a third-party payment processor, including those linked to a Nordstrom credit or debit card'
120
+ - rule: nordstrom-rack
121
+ url: https://www.nordstrom.com/browse/nordy-club/terms-conditions
122
+ quote: 'Eligible purchases exclude gift cards, alterations, charitable donations, taxes, shipping fees'
123
+ - rule: caterers
124
+ url: https://www.nordstrom.com/browse/nordy-club/terms-conditions
125
+ quote: 'cocktail lounges, caterers, fast-food locations, and third-party restaurant delivery and takeout services'
@@ -4,8 +4,8 @@ issuer: td-bank
4
4
  network: store
5
5
  only_at: [target]
6
6
  currency: cash
7
- last_verified: 2026-10-26
8
- verified_by: collin
7
+ last_verified: 2026-11-01
8
+ verified_by: claude
9
9
  source_urls:
10
10
  - https://www.target.com/circlecard
11
11
  - https://www.target.com/c/target-circle-card-program-rules/-/N-4tgj0
@@ -17,12 +17,12 @@ welcome_offer:
17
17
  dollars: 50
18
18
  spend: 50
19
19
  months: 2
20
- note: Paid as $50 in Target Circle Rewards, redeemable through Target Circle, not cash. Spend $50 or more on qualifying purchases in-store or at Target.com with the Target Circle Credit Card within 60 days of approval. Not for the Target Circle Debit Card or mail-in applications. Qualifying purchases exclude alcohol and gift cards, among others.
20
+ note: Paid as $50 in Target Circle Rewards, redeemable through Target Circle, not cash. Spend $50 or more on qualifying purchases in-store or at Target.com with the Target Circle Credit Card within 60 days of approval. Not for the Target Circle Debit Card or mail-in applications. Qualifying purchases exclude alcohol, Target GiftCards, prepaid Visa/Mastercard/Amex cards, CVS pharmacy, clinic and Target Optical.
21
21
  rules:
22
22
  - id: target
23
23
  match: { merchants: [target] }
24
24
  rate: 5
25
- note: An instant 5% discount at checkout in Target stores and on Target.com, after other discounts, on the part of the purchase paid with the card. Not on prescriptions, pharmacy-counter items or clinic services, Target Optical eye exams and protection plans (glasses and contacts do count), Target GiftCards or prepaid Visa/Mastercard/Amex cards, Starbucks gift cards bought at in-store Starbucks, Shipt or Target Circle 360 fees, taxes, shipping or other fees.
25
+ note: An instant 5% discount at checkout in Target stores and on Target.com, after other discounts, on the part of the purchase paid with the card. Not on prescriptions, pharmacy-counter items or clinic services, Target Optical eye exams and protection plans (glasses and contacts do count), Target GiftCards, prepaid Visa/Mastercard/Amex cards or sports betting gift cards, Starbucks gift cards bought at in-store Starbucks, Shipt or Target Circle 360 fees, wireless protection plans and carrier deposits, gift wrapping, alcohol in Indiana, taxes, shipping or other fees.
26
26
  todo:
27
27
  - The debit version (Target Circle Debit Card) gets the same 5% discount but isn't modeled as a separate card.
28
28
  - Target considers credit applicants for the Target Mastercard first, which also earns 2% on dining and gas and 1% elsewhere. Not modeled; target.com doesn't say what form those earnings take.
@@ -49,3 +49,12 @@ evidence:
49
49
  - rule: welcome_offer
50
50
  url: https://www.target.com/circlecard
51
51
  quote: 'within 60 days of approval'
52
+ - rule: target
53
+ url: https://www.target.com/c/target-circle-card-program-rules/-/N-4tgj0
54
+ quote: 'Game On, DraftsKings, and other sports betting gift cards'
55
+ - rule: target
56
+ url: https://www.target.com/c/target-circle-card-program-rules/-/N-4tgj0
57
+ quote: 'Wireless protection program purchases and deposits required by mobile carrier'
58
+ - rule: welcome_offer
59
+ url: https://www.target.com/circlecard
60
+ quote: 'Qualifying purchases exclude alcohol, Target GiftCards, Visa, American Express and Mastercard gift cards/prepaid cards'
@@ -3,8 +3,8 @@ name: U.S. Bank Cash+ Visa Signature Card
3
3
  issuer: usbank
4
4
  network: visa
5
5
  currency: cash
6
- last_verified: 2026-10-24
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
10
10
  - https://cashplus.usbank.com/cash-plus/samplemerchants
@@ -64,14 +64,16 @@ choices:
64
64
  rules:
65
65
  - id: five-percent
66
66
  match: { choice: five-percent }
67
+ # Ground transportation leaves out parking and tolls (also cruises and
68
+ # tickets bought through travel agencies); no other 5% option covers them.
69
+ exclude: { mccs: [7523, 4784] }
67
70
  rate: 5
68
71
  cap: five-percent-combined
69
72
  - id: two-percent
70
73
  match: { choice: two-percent }
71
- # Gas and grocery exclude discount stores/supercenters and wholesale clubs.
72
- # Grocery-store gas stations may still count as gas, per U.S. Bank's
73
- # sample merchants (Kroger Fuel Center is listed).
74
- exclude: { categories: [gas.superstore] }
74
+ # Fast food is its own 5% option, not part of Restaurants. Gas at grocery
75
+ # stores is left in until the todo below is settled.
76
+ exclude: { categories: [gas.superstore, dining.fast_food] }
75
77
  rate: 2
76
78
  - id: travel-center
77
79
  match: { merchants: [usbank-travel-center] }
@@ -94,9 +96,29 @@ evidence:
94
96
  - rule: five-percent
95
97
  url: https://cashplus.usbank.com/cash-plus/samplemerchants
96
98
  quote: 'This category includes only the merchants listed below'
99
+ - rule: five-percent
100
+ url: https://cashplus.usbank.com/cash-plus/samplemerchants
101
+ quote: 'steam ships, cruise lines, freight trains, parking meters, parking garages and toll stations'
102
+ - rule: five-percent
103
+ url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
104
+ quote: 'Purchases over $2,000 in the 5% categories will earn 1% cash back.'
105
+ - rule: two-percent
106
+ url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
107
+ quote: 'Gas station and electric vehicle charging station purchases at discount stores/supercenters, wholesale clubs and grocery stores/supermarkets'
108
+ - rule: two-percent
109
+ url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
110
+ quote: 'Excludes discount stores/supercenters and wholesale clubs'
111
+ - rule: two-percent
112
+ url: https://cashplus.usbank.com/cash-plus/samplemerchants
113
+ quote: "Excludes most fast food restaurants like McDonald's"
114
+ - rule: travel-center
115
+ url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
116
+ quote: 'additional 4% cash back for every $1 in eligible Net Purchases spent on prepaid air, car and hotel reservations'
97
117
  - rule: annual_fee
98
118
  url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
99
- quote: 'ANNUAL FEE $0 Annual fee'
119
+ quote: '$0 Annual fee'
100
120
  - rule: welcome_offer
101
121
  url: https://www.usbank.com/credit-cards/cash-plus-visa-signature-credit-card.html
102
122
  quote: 'Earn a $200 rewards bonus after you spend $1,000 in eligible purchases within the first 90 days of account opening'
123
+ todo:
124
+ - "Gas at grocery stores (Kroger, Hy-Vee, Meijer) is modeled at 2%, as U.S. Bank's sample merchants page says it may qualify, varying by location; the card page's footnote says 1%, so it may earn 1% at some stations."
@@ -3,10 +3,11 @@ name: Wells Fargo Active Cash Card
3
3
  issuer: wells-fargo
4
4
  network: visa
5
5
  currency: cash
6
- last_verified: 2026-10-26
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://creditcards.wellsfargo.com/active-cash-credit-card/
10
+ - https://www.wellsfargo.com/credit-cards/active-cash/terms/
10
11
  base_rate: 2
11
12
  annual_fee: 0
12
13
  welcome_offer:
@@ -23,6 +24,9 @@ evidence:
23
24
  - rule: base_rate
24
25
  url: https://creditcards.wellsfargo.com/active-cash-credit-card/
25
26
  quote: '2% cash rewards are earned for every $1 spent in net purchases'
27
+ - rule: base_rate
28
+ url: https://www.wellsfargo.com/credit-cards/active-cash/terms/
29
+ quote: 'For every $1.00 you spend with this Credit Card for net purchases, you earn two cents ($0.02) in Cash Rewards.'
26
30
  - rule: annual_fee
27
31
  url: https://creditcards.wellsfargo.com/active-cash-credit-card/
28
32
  quote: '$0 annual fee'
@@ -32,3 +36,6 @@ evidence:
32
36
  - rule: welcome_offer
33
37
  url: https://creditcards.wellsfargo.com/active-cash-credit-card/
34
38
  quote: 'To qualify for the $100 cash rewards bonus, a total of at least $500 in net purchases'
39
+ - rule: welcome_offer
40
+ url: https://www.wellsfargo.com/credit-cards/active-cash/terms/
41
+ quote: 'opened one within the last 48 months from the date of this application'
@@ -3,11 +3,12 @@ name: Wells Fargo Autograph Card
3
3
  issuer: wells-fargo
4
4
  network: visa
5
5
  currency: WFR
6
- last_verified: 2026-10-26
7
- verified_by: collin
6
+ last_verified: 2026-11-01
7
+ verified_by: claude
8
8
  source_urls:
9
9
  - https://creditcards.wellsfargo.com/autograph-visa-credit-card/
10
10
  - https://www.wellsfargo.com/credit-cards/autograph-visa/streaming/
11
+ - https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
11
12
  base_rate: 1
12
13
  annual_fee: 0
13
14
  welcome_offer:
@@ -18,8 +19,9 @@ welcome_offer:
18
19
  rules:
19
20
  - id: dining
20
21
  match: { categories: [dining] }
22
+ exclude: { merchants: [doordash, uber-eats] }
21
23
  rate: 3
22
- note: Restaurants, bars (drinking places), fast food and caterers, by Visa merchant code.
24
+ note: Restaurants, bars (drinking places), fast food and caterers, by Visa merchant code. Wells Fargo says bakeries, food at grocery stores and third-party delivery services may not earn 3X.
23
25
  - id: travel
24
26
  match: { categories: [travel] }
25
27
  rate: 3
@@ -31,43 +33,65 @@ rules:
31
33
  note: Passenger rail, taxis, limousines, ferries, tolls and parking. Intercity bus lines aren't on Wells Fargo's list.
32
34
  - id: gas
33
35
  match: { categories: [gas, ev_charging] }
36
+ exclude: { categories: [gas.superstore, gas.grocery_store] }
34
37
  rate: 3
35
- note: Gas stations, automated fuel dispensers and EV charging stations, by Visa merchant code.
38
+ note: Gas stations, automated fuel dispensers and EV charging stations, by Visa merchant code. Fuel or charging at superstores, warehouse clubs, grocery stores, car washes and auto repair shops may not earn 3X.
36
39
  - id: streaming
37
40
  match: { categories: [streaming, tv_internet] }
38
41
  rate: 3
39
- note: Cable and pay TV, digital goods (books, movies, music) and subscription services. Subscriptions bundled with another product or billed by a third party (an app store, a car) may not count. An internet-only bill may not code as pay TV.
42
+ note: Cable and pay TV, digital goods (books, movies, music) and subscription services. Subscriptions bundled with another product or billed by a third party (an app store, a cable, phone or internet provider, an online retailer, a car) may not count. An internet-only bill may not code as pay TV.
40
43
  - id: phone
41
44
  match: { categories: [phone] }
42
45
  rate: 3
43
- note: Landline and cell phone providers.
46
+ note: Landline and cell phone providers. Phones, accessories, add-ons like insurance or extra data, and plans bundled or billed by a third party (an internet provider, a car) may not count.
44
47
  # Not modeled: cell phone protection.
45
48
  # Issuer text backing each rule; `yarn check-sources` checks it weekly.
46
49
  evidence:
47
50
  - rule: base_rate
48
51
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
49
52
  quote: '1 rewards point will be earned per $1 spent on other net purchases'
53
+ - rule: travel
54
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
55
+ quote: 'Airlines Hotel/motels Campgrounds Timeshares Cruise lines Travel agencies Discount travel sites Vehicle/auto rentals'
50
56
  - rule: dining
51
57
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
52
58
  quote: 'Dining: eating places and restaurants, drinking places, fast food restaurants'
59
+ - rule: dining
60
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
61
+ quote: 'Grocery stores and other miscellaneous places that serve food or operate restaurants on site Third-party delivery services'
53
62
  - rule: travel
54
63
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
55
64
  quote: 'Travel: airline, hotel/motel, timeshare, or vehicle/auto rental, cruise lines'
56
65
  - rule: transit
57
66
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
58
- quote: 'Transit: passenger railway, taxis, limousines, ferries, toll bridges and highways'
67
+ quote: 'Transit: passenger railway, taxis, limousines, ferries, toll bridges and highways, parking lots and garages'
68
+ - rule: transit
69
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
70
+ quote: 'Ferries Parking lots and garages Limousines Taxis Passenger railway Toll bridges and highways'
59
71
  - rule: gas
60
72
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
61
73
  quote: 'Gas: gas stations, automated fuel dispensers, and electric vehicle charging stations'
74
+ - rule: gas
75
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
76
+ quote: 'Gas or electric vehicle charging purchases made at the following locations may not earn bonus Points'
77
+ - rule: gas
78
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
79
+ quote: 'Auto repair stores Superstores Car washes Warehouse/membership clubs Grocery stores'
62
80
  - rule: streaming
63
81
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
64
82
  quote: 'Popular streaming services: cable and other pay television, digital goods, books'
65
83
  - rule: streaming
66
84
  url: https://www.wellsfargo.com/credit-cards/autograph-visa/streaming/
67
85
  quote: 'You may earn 3X on these streaming services'
86
+ - rule: streaming
87
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
88
+ quote: 'Streaming services that a third party bills, such as a digital platform; a cable, telecommunications, or internet provider'
68
89
  - rule: phone
69
90
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
70
91
  quote: 'Phone plans: landline and cell phone providers considered telecommunication services'
92
+ - rule: phone
93
+ url: https://www.wellsfargo.com/credit-cards/autograph-visa/terms/
94
+ quote: 'Phone-plan services that a third party bundles or bills, such as an internet provider or in-vehicle service'
71
95
  - rule: annual_fee
72
96
  url: https://creditcards.wellsfargo.com/autograph-visa-credit-card/
73
97
  quote: '$0 Annual Fee'
@@ -58,11 +58,13 @@
58
58
  - id: gas.superstore
59
59
  name: Gas at superstores and warehouse clubs
60
60
  - id: ev_charging
61
+ preposition: on
61
62
  name: EV charging
62
63
  aliases: [ev, charging]
63
64
  mccs: [5552]
64
65
 
65
66
  - id: transit
67
+ preposition: on
66
68
  name: Transit
67
69
  aliases: [public transit, train, trains, bus, commuting]
68
70
  mccs: [4111, 4112, 4131, 4784, 7523]
@@ -72,6 +74,7 @@
72
74
  mccs: [4121]
73
75
 
74
76
  - id: travel
77
+ preposition: on
75
78
  name: Travel
76
79
  mccs: [4722]
77
80
  - id: travel.flights
@@ -92,18 +95,22 @@
92
95
  mccs: [4411]
93
96
 
94
97
  - id: streaming
98
+ preposition: on
95
99
  name: Streaming services
96
100
  aliases: [streaming, subscriptions]
97
101
  mccs: [4899, 5815]
98
102
  - id: tv_internet
103
+ preposition: on
99
104
  name: TV and internet service
100
105
  aliases: [internet, cable]
101
106
  mccs: [4899]
102
107
  - id: phone
108
+ preposition: on
103
109
  name: Cell phone service
104
110
  aliases: [phone, cell phone, wireless]
105
111
  mccs: [4814]
106
112
  - id: utilities
113
+ preposition: on
107
114
  name: Home utilities
108
115
  aliases: [utilities, electric, electricity]
109
116
  mccs: [4900]
@@ -117,6 +124,7 @@
117
124
  aliases: [movies, movie theater]
118
125
  mccs: [7832]
119
126
  - id: entertainment
127
+ preposition: on
120
128
  name: Live entertainment and events
121
129
  aliases: [concerts, events, tickets]
122
130
  mccs: [7922, 7941]
@@ -146,15 +154,19 @@
146
154
  mccs: [5712]
147
155
 
148
156
  - id: online_retail
157
+ preposition: on
149
158
  name: Online retail
150
159
  aliases: [online shopping, shopping online, online]
151
160
  - id: office_supply
152
161
  name: Office supply stores
153
162
  - id: shipping
163
+ preposition: on
154
164
  name: Shipping and couriers
155
165
  - id: online_advertising
166
+ preposition: on
156
167
  name: Social media and search advertising
157
168
 
158
169
  - id: other
170
+ slug: everyday-spending
159
171
  name: Everything else
160
172
  aliases: [everything, everything else, other]
@@ -27,6 +27,8 @@
27
27
  value_cents: 1.0
28
28
  redemptions:
29
29
  sofi-account: 1.0 # SoFi Checking, Savings, Invest, the SoFi Credit Card account, loans, or SoFi Travel
30
+ redemption_names:
31
+ sofi-account: into a SoFi account
30
32
  sources:
31
33
  - https://www.sofi.com/credit-card/unlimited/
32
34
  - https://www.sofi.com/card/rewards?cardtype=c
@@ -0,0 +1,32 @@
1
+ # The banks behind the cards: the name shown for each, and other words people
2
+ # search with ("bofa", "amex"). Every card's `issuer` must be one of these.
3
+
4
+ - id: amex
5
+ name: American Express
6
+ search: [amex, american express]
7
+ - id: bank-of-america
8
+ name: Bank of America
9
+ search: [bofa, boa, bankofamerica]
10
+ - id: capital-one
11
+ name: Capital One
12
+ search: [capitalone]
13
+ - id: chase
14
+ name: Chase
15
+ - id: citi
16
+ name: Citi
17
+ search: [citibank]
18
+ - id: column
19
+ # Column N.A. issues the Bilt card; people know it as Bilt.
20
+ name: Bilt
21
+ search: [bilt]
22
+ - id: sofi
23
+ name: SoFi
24
+ - id: td-bank
25
+ name: TD Bank
26
+ search: [td]
27
+ - id: usbank
28
+ name: U.S. Bank
29
+ search: [us bank]
30
+ - id: wells-fargo
31
+ name: Wells Fargo
32
+ search: [wf, wellsfargo]
@@ -0,0 +1,33 @@
1
+ # Memberships that raise a card's rates (a rule's `requires.membership`) or
2
+ # that a card can't be had without (a card's `requires_membership`). The
3
+ # fee for one a card needs is quoted in that card's evidence.
4
+
5
+ - id: amazon-prime
6
+ name: Amazon Prime
7
+ ask: I have Amazon Prime
8
+ - id: costco
9
+ name: Costco membership
10
+ ask: I have a Costco membership
11
+ # Gold Star, the basic tier. Executive ($130) pays some of its cost back
12
+ # as Costco's own 2% reward, which earnrate doesn't model.
13
+ annual_fee: 65
14
+ members_shop_at: [costco, costco-gas, costco-travel]
15
+ - id: bank-of-america-account
16
+ name: Bank of America checking or savings
17
+ ask: I bank with Bank of America
18
+ - id: bank-of-america-small-business-account
19
+ name: Bank of America small business checking or savings
20
+ - id: bofa-rewards-member
21
+ name: BofA Rewards Member
22
+ group: bofa-preferred-rewards
23
+ - id: bofa-rewards-preferred-plus
24
+ name: BofA Rewards Preferred Plus
25
+ group: bofa-preferred-rewards
26
+ - id: bofa-rewards-preferred-honors
27
+ name: BofA Rewards Preferred Honors
28
+ group: bofa-preferred-rewards
29
+ - id: bofa-rewards-premier
30
+ name: BofA Rewards Premier
31
+ group: bofa-preferred-rewards
32
+ - id: nordy-club-ambassador
33
+ name: Nordy Club Ambassador