# Annuity e-Application — Product Requirements (v1.0)

The Annuity e-Application is an agent portal for fixed indexed annuity new business. Agents sign in, see their own cases, and complete an 11-module wizard (Case & Owner, Annuitant, Trust Certification, Beneficiaries, Suitability, Riders, Premium, Replacement, Bank Draft, Allocation, Agent) whose modules and fields appear according to earlier answers. A review page submits, withdraws or duplicates the case, and a printable application shows visible answers with sensitive numbers masked.

**Problem.** Annuity applications are long, rule-heavy and regulated. Agents need the form to show only what applies, to stop incorrect data (ages, totals, funding order, routing numbers) before submission, and the carrier needs sensitive data protected on every printed or copied record.

## Users
- **Appointed agent** — Enter an application quickly, be told exactly what is wrong, and submit it with a confirmation number.
- **Trainee agent** — Prepare drafts while the carrier appointment is pending without being able to submit.
- **Carrier new-business reviewer** — Receive complete, consistent applications with PII masked in every printout.

## Goals
- Only rule-compliant applications can be submitted.
- Questions appear and disappear with the answers that drive them; hidden answers never persist or print.
- Agents see only their own cases; PII is masked in print and dropped when a case is duplicated.

## Sign-in and access (AUT)

Agent authentication, lockout and case ownership.

- **FR-AUT-01** (Must) A signed-in agent sees only her own applications, newest first.
  - Header shows the agent name "Dana L Rivera" and "NPN 18273645"; heading "My applications"
  - Rows EA-24015, EA-24014, EA-24013, EA-24012, EA-24011, EA-24010; EA-24016 (another agent) is absent
  - EA-24010 Withdrawn; EA-24011 and EA-24012 Submitted; the rest Draft
- **FR-AUT-02** (Must) Five consecutive wrong passwords lock the account; after that even the right password is refused.
  - Each wrong attempt: "Email or password is incorrect"
  - Next attempt with the right password: "Too many sign-in attempts. Your account is locked — contact your agency administrator."
- **FR-AUT-03** (Could) Submitting an empty sign-in form is refused on the client with "Enter your email and password".
- **FR-AUT-04** (Must) An agent cannot open another agent's application by typing its URL.
  - /eapp/case/EA-24016/case shows "This application belongs to another agent" with a link back to My applications

## Case list (LST)

Tabs, search, attention badges and draft deletion.

- **FR-LST-01** (Should) Status tabs filter by status and search matches client name or case id.
  - "Submitted" tab: EA-24012 and EA-24011 only
  - Search "whitf": only EA-24013; "24014": only EA-24014; "zzz": "No applications match."
- **FR-LST-02** (Could) The attention count beside a draft equals the sum of the per-section counts in its wizard.
  - EA-24013 shows 41 = Beneficiaries 1 + Suitability 31 + Premium 4 + Allocation 1 + Agent 4; EA-24015 shows no badge
- **FR-LST-03** (Should) Drafts can be deleted after a confirmation; submitted applications have no Delete action.
  - "Delete this draft?" dialog; Cancel keeps the row
  - "Delete draft" shows toast "Draft EA-24014 deleted" and removes the row

## Case & Owner (OWN)

Product, issue state, plan type and owner details.

- **FR-OWN-01** (Must) A new application gets the next case id, today's application date and the signed-in agent as primary agent at 100%.
  - New application opens EA-24017 on "Case & Owner" with today's date as MM/DD/YYYY
  - Agent module: Total Number of Agents 1, Commission Option A, Primary agent Dana L Rivera, license TX-2209381, NPN 18273645, Northgate Financial Partners, (512) 555-0142, 100%
- **FR-OWN-02** (Must) The owner section follows the owner type.
  - Individual: First/Middle/Last Name, Date of Birth, SSN, Gender, U.S. Citizen, plus annuitant and joint-annuitant questions
  - Corporation: "Corporation Name" and "Tax ID" replace the person fields; annuitant questions disappear
  - Trust: "Owner Name", "Tax ID", "Trust Date" and a "Trust Certification" module appear
- **FR-OWN-03** (Must) Qualified plans cannot have a Joint owner, so Joint is not offered as Owner Type.
  - Non-Qualified: options include Joint
  - Traditional IRA: Individual, Corporation, Trust, Custodian only; help text "Qualified plans can't have joint owners."
- **FR-OWN-04** (Must) The issue state must be one in which the agent is licensed.
  - Nevada for a Texas-licensed agent: "You aren't licensed in Nevada. Choose a state you are licensed in."
  - Choosing Wyoming clears the error
- **FR-OWN-05** (Must) Owner age on the application date must be within the product limits, counting birthdays; Income FIA owners must be 40 to 80.
  - Application date 10/16/2026: DOB 10/16/1945 is age 81 and gives "The owner must be 40–80 on the application date for the Income Fixed Indexed Annuity (age 81)"
  - DOB 10/17/1945 is age 80 and is accepted
  - DOB 10/17/1986 is age 39 and is rejected; 10/16/1986 is age 40 and is accepted
- **FR-OWN-06** (Could) Masked inputs format as typed and invalid values show specific messages.
  - 02/30/1964: "Enter a valid date (MM/DD/YYYY)"; 12/01/2030: "Date of birth can't be in the future"
  - SSN 900123456 formats to 900-12-3456, hidden until "Show", and gives "This SSN isn't valid"
  - Phone 1165550127: "Enter a 10-digit phone number"; email "marisol@vega": "Enter a valid email address"
- **FR-OWN-07** (Could) Address lookup suggests addresses after 3 characters and fills street, city, state and ZIP from the chosen suggestion.
  - "ju": no suggestions
  - "Juniper" then "1418 Juniper Hollow Dr, Austin, TX 78745" fills Street 1418 Juniper Hollow Dr, City Austin, State Texas, Postal Code 78745
  - "nowhere lane": "No matching addresses — enter it below"
- **FR-OWN-08** (Could) Joint ownership adds a joint-owner block; "Same Address as Owner" hides the joint-owner address; the joint-annuitant answer must agree with the joint owner being an annuitant.
  - Owner Type Joint shows "Is the joint owner the spouse?" and a "Joint owner" section
  - Tick "Same Address as Owner": street, city, state and postal code disappear
  - Joint owner is an annuitant = Yes with no joint annuitant: "You said the joint owner is one of the annuitants — answer Yes"
- **FR-OWN-09** (Must) Save & continue is blocked while required fields are empty, listing each one; Save draft still saves.
  - Stays on Case & Owner with a summary "N fields need attention" linking each field
  - Product, Issue state, Plan Type, Owner Type: "Make a selection"
  - Save draft shows "All changes saved"

## Annuitant (ANT)

Annuitant details when different from the owner.

- **FR-ANT-01** (Could) When the annuitant is the owner the module shows only a note; otherwise annuitant details are required.
  - Same: "The owner is the annuitant — no separate annuitant details are needed."
  - Not the same: "Annuitant details" with First/Last Name, Date of Birth, SSN, Gender required

## Trust Certification (TRU)

Trustees, grantors and trust beneficiaries.

- **FR-TRU-01** (Could) Trustee, grantor and trust-beneficiary blocks follow the counts and the trust type.
  - EA-24014: Oakridge Family Trust, Revocable, Tax ID 83-6012457; Trustee 1 Walter Oakridge (Trustee), Trustee 2 Lydia Oakridge-Vance (Officer); Grantor Walter Oakridge 10/08/1949
  - Trust beneficiaries = 2 shows two "Trust beneficiary" blocks
  - Trust Type "Charitable organization or foundation" hides grantors and trust beneficiaries
- **FR-TRU-02** (Could) The printed trust certification names a signer as "Trustee" only when the title is Trustee; any other title signs as Authorized Signer.
  - /eapp/case/EA-24014/pdf, TRC-130 (4/26): "Section 4 — Trustee 1 signs as Trustee", "Section 4 — Trustee 2 signs as Authorized Signer"

## Beneficiaries (BEN)

Primary and contingent beneficiaries.

- **FR-BEN-01** (Must) Primary beneficiary allocations must total exactly 100%.
  - EA-24013 (60 and 30): Primary Total 90% and "Primary allocations must total 100% (now 90%)" on beneficiary 2
  - 60 + 39: Primary Total 99% and still "(now 99%)"
  - 60 + 40: Primary Total 100%, no error
- **FR-BEN-02** (Could) A beneficiary that is not a living person shows entity fields and a limited relationship list; "Self" is offered only to primary beneficiary 1.
  - Living Person = No: Name, DOB, SSN, Gender disappear; Entity Name, Trust Date, Tax ID appear; Relationship offers only "Other (Non-Natural Entities)"
  - Contingent lists never offer "Self"
- **FR-BEN-03** (Should) On an Accumulation FIA with a non-spouse joint owner, primary beneficiary 1 is fixed as Self, 100%, living person, and read-only.
  - Number of Primary Beneficiaries 1: Living Person Yes, Allocation % 100, Relationship Self, all disabled with "(set by the product rules)"

## Suitability (SUI)

Financial profile, objectives and needs.

- **FR-SUI-01** (Should) Income, disposable income, assets, debt and net worth are computed live from the entries.
  - EA-24015: gross monthly income $4,570.00; disposable $970.00; Total assets $457,000.00; Total debt $9,400.00; Net worth $447,600.00
  - Social Security 3,000 shows 3,000.00; income $5,120.00; disposable $1,520.00
- **FR-SUI-02** (Could) Objective ranks 1 to 5 are used once each.
  - A duplicate rank gives "Rank 1 is already used for “…”" on the later field
- **FR-SUI-03** (Could) Insurance need "None" cannot be combined with another need.
  - "“None” can't be combined with other needs"
- **FR-SUI-04** (Could) Follow-up questions appear only when relevant and are then required.
  - Withdrawals Yes: amount, frequency, purpose
  - Employment Employed: employer name and occupation
  - Risk tolerance Aggressive: "Explain why a fixed indexed annuity is appropriate for an aggressive investor"

## Riders (RDR)

Optional riders per product.

- **FR-RDR-01** (Should) Riders are offered per product and any combination of them can be selected at once.
  - Income FIA (EA-24015): Free Withdrawal Enhancement Rider and Enhanced Death Benefit Feature, no Premium Bonus Rider
  - Ticking Free Withdrawal Enhancement Rider keeps Enhanced Death Benefit Feature ticked
  - Accumulation (EA-24013) offers three riders including Premium Bonus Rider

## Premium (PRM)

Payment amounts, funding sources and replacement questions.

- **FR-PRM-01** (Must) The premium must meet the product and plan minimum (Income FIA: $25,000.00) and amounts over $2,000,000.00 need home-office approval.
  - 24,999.99: "Premium Total $24,999.99 is below the $25,000.00 minimum for this product and plan"
  - 25,000 is shown as 25,000.00 with Premium Total $25,000.00 and no error
  - 2,000,000.01: "Premiums over $2,000,000.00 need home-office approval before you submit"
- **FR-PRM-02** (Could) Payment types and methods depend on the plan and the type chosen.
  - Qualified plan: Transfer, Direct Rollover, Indirect Rollover, Contribution (no 1035 Exchange)
  - Transfer: "Is the existing contract issued by this company?" and Policy/Contract Number; methods CD Redemption by Carrier, Mutual Fund Redemption by Carrier, Other Non-Insurance Exchange, Brokerage Account
  - "Another company" adds Company Name
- **FR-PRM-03** (Should) Funding sources must be ordered exchanges first, then transfers, then new money (contributions and rollovers).
  - Source 1 Contribution then source 2 Transfer: "Exchanges come first, then transfers, then new money (contributions and rollovers)" on source 2 Payment Type
- **FR-PRM-04** (Could) The exchange/transfer count must match the source types.
  - Count 1 with a single Contribution source: "You said 1 of the payments come from an exchange or transfer, but 0 sources are set up that way"
- **FR-PRM-05** (Should) Replacement answers must be consistent, and a Yes reveals the Replacement module.
  - No existing contracts and replacing Yes: "You answered that there are no existing contracts — this contract can't replace one"
  - Existing Yes, replacing Yes, 1 policy: "Replacement" appears after Premium

## Replacement (REP)

Replaced policies and state acknowledgements.

- **FR-REP-01** (Could) A Wyoming replacement needs both Wyoming acknowledgements answered Yes, and a partial transfer needs an amount above $0.00.
  - "Replaced policy 1" block and "Notice and acknowledgements" with two Wyoming questions
  - No on the policy list question: "Wyoming requires this before a replacement can be submitted"
  - Amount to transfer Partial with 0: "Partial amount must be more than $0.00"

## Bank Draft (ACH) (ACH)

Bank account for ACH payments.

- **FR-ACH-01** (Must) Choosing ACH adds the Bank Draft module; routing numbers are validated with the ABA checksum and looked up, and the account number is 4 to 17 digits.
  - 123456789: "This routing number isn't valid" (checksum fails)
  - 021000021: "✓ Hudson Valley Trust" and the bank name is filled
  - 011000028 (valid checksum, unknown bank): "No bank found for this routing number — enter the bank name"
  - Account number 12: "Account number must be 4–17 digits"

## Allocation (ALC)

Distribution of the premium across strategies.

- **FR-ALC-01** (Must) Only the strategies available for the product are listed, whole percentages only, and the total must be exactly 100%.
  - Income FIA lists Fixed Account; Large-Cap Equity Index (Annual point-to-point and Monthly average); Global Balanced Index; Volatility-Controlled 5% Index (Annual); not Technology Leaders, Aggregate Bond or 2-year VC
  - Seeded total 100%; Fixed Account 30 gives "Allocations must total 100% (now 105%)"
  - 12.5: "Whole percentages only (0–100)"
- **FR-ALC-02** (Could) "Only show funds with an Allocation Percent" keeps just the funded strategies and their groups.
  - Fixed Account 25, Large-Cap Equity Index Monthly average 25, Volatility-Controlled 5% Index 50; groups Fixed, Index – Cap, Index – Participation only
- **FR-ALC-03** (Could) Dollar Cost Averaging is not available on fixed indexed products, so the Allocation page has no election control for it.
  - No "Elect Dollar Cost Averaging" control, duration or percentage on EA-24015

## Agents and commission (AGT)

Primary and additional agents.

- **FR-AGT-01** (Must) Multiple agents need distinct NPNs and a commission split totalling 100%.
  - Total 2 with additional agent at 40% and a repeated NPN: "The total commission percentage for all agents must equal 100%. (Currently 140%)" and "Each agent needs a different NPN"
  - Rivera 60 and a different NPN: no errors
- **FR-AGT-02** (Should) Florida cases show a FL License Number, a letter followed by 6 digits.
  - EA-24013 Primary agent shows "FL License Number" W123456 with help "A letter followed by 6 digits"
  - 1234567: "FL License Number is a letter followed by 6 digits"

## Saving and conditional data (WIZ)

Concurrent edits and handling of hidden answers.

- **FR-WIZ-01** (Should) Saving over a version changed in another tab or window shows a reload banner and does not overwrite.
  - "This application was changed in another tab or window. Reload to see the latest answers." with "Reload"
  - After Reload the other tab's changes are shown
- **FR-WIZ-02** (Must) Answers to questions that become hidden are dropped on save and never appear in the printed application.
  - Withdrawals Yes 500 / Monthly / "Travel", then No and save; switching back to Yes shows the three fields empty
  - The PDF has no "Withdrawal amount" row (and no "Liquidity" withdrawal rows) under Suitability

## Review, submit, withdraw and duplicate (SUB)

Final review and case lifecycle.

- **FR-SUB-01** (Must) A complete application is submitted only after the agent attestation and then receives a confirmation number and becomes read-only.
  - Submit without attestation: "Confirm the agent attestation to submit"
  - With attestation: banner "Submitted <today> · Confirmation FIA-7733422" and edit links disappear
  - My applications shows EA-24015 Submitted
- **FR-SUB-02** (Must) An incomplete application cannot be submitted and the outstanding fields are listed.
  - EA-24013: "41 fields need attention before you can submit" with a field list; status stays Draft
- **FR-SUB-03** (Must) An agent whose carrier appointment is not active can draft but not submit, enforced by the server.
  - Banner "Your appointment with the carrier isn't active yet. You can save drafts but not submit."
  - Submitting with attestation returns the same appointment message, not a field list
- **FR-SUB-04** (Could) A submitted application can be withdrawn with a reason, after which it is read-only.
  - Empty reason: "Enter a reason for the withdrawal"
  - Banner "Withdrawn <today> — reason: Client chose a different product"; no Withdraw button
- **FR-SUB-05** (Must) Duplicating an application copies answers but not SSNs, Tax IDs, bank numbers, authorizations or signatures.
  - EA-24012 duplicate: toast "Copied to new draft EA-24017", Case & Owner shows Desmond Achebe
  - Owner SSN empty; routing and account empty; authorization unticked; bank name and holder kept
- **FR-SUB-06** (Should) Wizard pages of a submitted application cannot be edited.
  - Banner "This application was submitted … and can't be edited."; inputs disabled; no Save buttons
- **FR-SUB-07** (Could) The review page of a submitted joint exchange case shows the premium breakdown and its sections.
  - EA-24011: Premium Total $75,000.00 (1035 Exchange $60,000.00 from Granite State Life GSL-0048213 + Contribution $15,000.00); Replacement section listed; contingent beneficiary Bayou Literacy Foundation 100%

## Application PDF (PDF)

Printable application of visible answers.

- **FR-PDF-01** (Must) The printable application masks sensitive numbers and never shows a full SSN or bank number.
  - EA-24012 header: "Case EA-24012 · Desmond Achebe · Application date 10/08/2026 · Confirmation FIA-7733418"
  - SSN •••-••-4471; Bank Draft (ACH-04 (3/25)) Routing •••••6780; Account •••••••••6789

## Non-functional requirements

- **NFR-01** (Should) Each browser tab works on its own seeded copy of the data, which can be restored with a reset.

## Glossary and rules

- **FIA** — Fixed indexed annuity. Two products are sold: Income and Accumulation.
- **NPN** — National Producer Number, the agent's unique licence identifier.
- **1035 exchange** — Tax-free transfer of funds from an existing contract into a new one.
- **ABA checksum** — The check-digit rule a 9-digit bank routing number must satisfy.

## Out of scope

- Real carrier submission, e-signature and appointment systems
- Real bank or address services (lookups are synthetic)
- State-specific forms beyond the Florida and Wyoming rules
