How to Track Your Credit Cards in MyFam360 — The Foundation
Add credit cards to MyFam360 with joint cardholders, billing-cycle days, and an automatic account mirror that powers every downstream feature.
Most personal finance apps treat a credit card the same way they treat a bank account — one row in a list of “accounts” with a balance number. That works fine if you spend ₹20,000 a month on one card and never touch the others.
It falls apart the moment you carry three cards. The HDFC Millennia for online. The SBI SimplyClick for everything else. The Flipkart Axis for the Big Billion Day binge in October. Each has its own billing cycle, its own minimum due, its own rewards rate, its own annual fee. A single “balance” field can’t model any of that.
MyFam360’s Credit Card Manager is built differently. It treats each card as a first-class object with a cycle, a statement history, a rewards profile, and a relationship to the underlying account. This post walks through the foundation — how to add a card and what’s happening behind the scenes so the rest of the feature works.
If you’re brand new to MyFam360 and haven’t set up your budget yet, the step-by-step family budget guide is the better starting point.
What the Credit Card Manager Replaces
Before this feature shipped, if you wanted to track a credit card in MyFam360 you had two bad options:
- Add it as a regular savings account with a manually maintained negative balance — every payment was a separate entry, every statement reconciliation was a spreadsheet exercise.
- Track it as a revolving loan under the Loans module — got you statements and EMIs but no rewards tracking, no joint cardholders, no cycle awareness.
Neither modelled what a credit card actually is. The Credit Card Manager is the dedicated container for it.
The old revolving-loan workaround is now deprecated. There’s a one-shot migration script (scripts/migrate_credit_card_revolving_loans_to_cards.py) that converts existing revolving-loan rows into proper credit card rows, and a migration banner on the Loans page that points to the new home.
Step 1: Open the Credit Cards Page
Tap Credit Cards in the sidebar (or the More menu on mobile). If it’s your first time, the Active tab will be empty with a single CTA: Add Credit Card. Three other tabs (Statements, Staged, Rewards) are visible but locked until you add at least one card.
Step 2: The 4-Step Add Card Flow
Adding a card walks through four screens.
Screen 1 — Basics
- Nickname — a short, human label. “HDFC for groceries” is better than “HDFC Bank”. The nickname is what appears everywhere in the app.
- Issuer — pick from the dropdown (HDFC, SBI, ICICI, Axis, Tata, Standard Chartered, American Express, RBL, IndusInd, IDFC First, Yes, Kotak).
- Card name — the issuer’s marketing name (e.g., “Millennia”, “SimplyClick”). Used as a fallback display label if nickname is empty.
- Last 4 digits — for visual identification only. Never displayed in notifications.
Screen 2 — Cycle & Limit
- Credit limit — the issuer’s approved limit. Used for the utilisation calculation (the
credit_high_utilizationnotification fires at >80%). - Billing cycle day — the day of the month your statement closes. Most issuers print this on the statement (e.g., “Statement generated on the 15th of every month”). MyFam360 uses this date to materialise statements automatically (more on that in the statements post).
- Payment due day — usually 18–20 days after the cycle day.
- Current outstanding — what you currently owe on the card. If you’re entering a card mid-cycle with an existing balance, fill this in; otherwise leave it at zero.
Screen 3 — Joint Cardholders
- Pick zero or more family members who are co-cardholders.
- The primary cardholder (the user creating the card) gets full edit access by default.
- Joint cardholders can view the card and log expenses; they cannot edit card settings or record payments.
- Family owner and admin roles bypass this and have edit access to every card.
This step is gated by RBAC at the API layer (_require_credit_card_access in credit_card_service.py), so you can’t add yourself as a joint cardholder on someone else’s card by editing the request.
Screen 4 — Confirm & Create
A summary screen showing all four fields. Tap Create Card and the card is saved. Three things happen server-side:
- A new
credit_accountrow is inserted with the fields above. - If a family-scoped account group named “Credit Cards” doesn’t exist, it’s created.
- A new regular
accountrow is created inside that group withaccount_type='credit_card', and the card’slinked_account_idis set to it.
The third step is the mirror. Every expense you later log against this card writes to that mirror account, which is what every downstream feature reads.
Why the Mirror Account Matters
This design decision deserves a dedicated section because it powers everything else in the Credit Card Manager.
A credit card in MyFam360 is not a special, walled-off entity. It’s a regular account inside a special group, with extra metadata layered on top. This means:
- Quick Add works unchanged. The card shows up in the account picker like any other account. The rewards engine watches the mirror’s expense stream and computes points/cashback from it.
- Reports include credit card spend. The Reports → By Account view shows the mirror like any other account. You don’t lose the card’s spending from your regular reports.
- Account migration is clean. If you ever delete the card, the mirror persists and its historical expenses are preserved. Nothing is orphaned.
- One source of truth for the rewards engine. The engine in
credit_rewards_service.pysources spend exclusively fromexpensesvia the mirror — it never queries a separatecredit_transactionstable (one doesn’t exist; AU-Card.3 is deferred indefinitely per project strategy).
The pattern is documented in CLAUDE.md as DL.13 — the mirror relationship is credit_accounts.linked_account_id → accounts.id ← Expense.account_id.
A Quick Look at What Gets Tracked Per Card
Once a card exists, MyFam360 starts tracking far more than balance:
| Field | What it does |
|---|---|
current_outstanding | The revolving balance — decremented on payment, never below zero |
current_utilization_pct | Real-time outstanding / credit_limit for the high-util notification |
current_cycle_window | Computed from billing_cycle_day; used by the rewards engine and the cycle dot |
manual_reward_config | JSON config for the per-card chip strip (covered in a later post) |
next_due | Statement-aware due-date payload (statement_id, risk_band, amounts, status) |
linked_account_id | FK to the mirror account |
replacement_history | Tracks card replacements (lost card, upgrade) without losing history |
The Dashboard widget reads the aggregate of all active cards and renders the per-card top-3 mini-rows, the cycle progress dot, and an overuse alerter strip.
Plan Limits and the credit_cards_per_org Quota
Adding cards is plan-gated:
| Plan | Max credit cards per family group |
|---|---|
| Free | 1 |
| Duo | 2 |
| Pro | 5 |
| Family+ | ∞ |
The quota is enforced server-side via check_quota(db, family_id, "credit_cards_per_org") before the card is created. Hitting the cap returns a 402 with an upgrade CTA in the modal.
What This Means For You
If you have credit cards and you’ve been tracking them informally (or not at all), the Credit Card Manager is the part of MyFam360 worth setting up first.
Concrete next step: open MyFam360, tap Credit Cards → Add Credit Card, and add just the card you use most often. Don’t try to add five cards at once — get one set up correctly, see the mirror appear in the Accounts list, log one expense against it from Quick Add, and then add the rest.
The 4-step add flow takes about 90 seconds per card. By the time you’ve added two, you’ll have noticed the mirror group appear in your Accounts list, which is the visual signal that the foundation is working.
See Also
Take control of your family finances — free
MyFam360 lets your whole family track expenses, set budgets, and hit savings goals together. Free to start, no credit card needed.
Free plan available · No credit card required · Cancel anytime
Frequently Asked Questions
Do I need a paid plan to add credit cards in MyFam360?
No. The Credit Card Manager is available across plans, but the number of cards you can add per family group is capped by plan: 1 on Free, 2 on Duo, 5 on Pro, and unlimited on Family+. You can still log credit card expenses against the card on any plan.
What is a 'mirror account' and why does MyFam360 create one for each card?
When you add a credit card, MyFam360 ensures there is a family-scoped 'Credit Cards' account group and creates a regular account row inside it that mirrors the card. Every credit card expense you log writes to this mirror account, which is what the rewards engine, calendar view, and Quick Add bridge all read. You don't have to set this up — it happens automatically when you add the card.
Can two family members share a credit card in MyFam360?
Yes. During the 4-step add-card flow, the Joint Cardholders step lets you pick other family members as cardholders. Joint cardholders can view the card and log expenses against it; the primary cardholder and family owner/admin can edit card settings and record payments. The role-based access control is enforced at every endpoint.
What is the nickname field for?
Cards in MyFam360 are referred to by a nickname rather than the issuer's marketing name. This makes the UI clearer when you have multiple cards from the same bank ('HDFC for groceries', 'HDFC for travel') and avoids leaking the actual card name into screenshots or notification text. The nickname is what appears in the calendar, the dashboard widget, and every reminder. If you leave it blank during creation, the form falls back to the issuer's card_name.
What happens if I delete a credit card I added by mistake?
Deleting a card is a soft-delete (the row is preserved with a deleted_at timestamp). Statements and payments under that card are cascade-soft-deleted at the same time so they don't appear in reports. The mirror account stays linked to its historical expenses — you can still see what you spent against the card before deletion, but you can't add new expenses to it. There is no public restore endpoint for cards yet, so contact support if you deleted by mistake.
Share this article
Related Articles
AskAI History in MyFam360 — Pin, Re-Run, and Why the Cap Doesn't Reset
AskAI in MyFam360 now persists every question, lets you pin favourites, and supports one-click re-runs against current data. Here's how the history flow works.
21 May 2026
App GuideCredit Card Annual Fees and the 'Worth Keeping' Verdict in MyFam360
How MyFam360 charges and tracks annual fees automatically, and the Family+ 'Worth Keeping' verdict that tells you whether the card is paying for itself.
21 May 2026
App GuideRecording a Credit Card Payment in MyFam360 — With the Impact Preview
How MyFam360's Record Payment modal models the finance charge and revolving balance before you confirm, so 'pay minimum' never sneaks up on you again.
21 May 2026