Free tools / Financial Services Cloud test cases

What should a Salesforce Financial Services Cloud test suite cover?

What should a Salesforce Financial Services Cloud test suite cover?

What should a Salesforce Financial Services Cloud test suite cover?

Start where money moves, a regulator sets a clock, or a sharing rule decides who sees a client: household rollups, KYC and beneficial ownership, card disputes, lending decisions, Compliant Data Sharing, and policy and claim math for insurers. Below are 47 test cases mapped to real Financial Services Cloud (now Agentforce Financial Services) objects, each with test data and a pass condition you check in the data, not on the screen.

47test cases with given, when, then
25P1 cases to run before every release
9processes, mapped to real objects
8cases tied to a rule, deadline or event

filter // process

Showing 47 of 47
IDScenarioGivenWhenThen (check the data)
F-001
P1
Joint account counted onceHouseholds and relationships · SOQLGivenHousehold of two. Member A: checking $12,000 (sole). A and B: joint savings $8,000WhenHousehold totals recalculateThenHousehold deposits = $20,000, not $28,000
F-002
P2
New member updates the totalsHouseholds and relationships · UI + SOQLGivenHousehold above; member C joins with a $5,000 CDWhenC is added and totals recalculateThenHousehold total $25,000; C’s accounts show on the household
F-003
P2
Splitting a householdHouseholds and relationships · UIGivenCouple separates; the joint savings stays jointWhenB moves to a new householdThenBoth households show the joint account under the rollup rule you chose; no account loses its owner
F-004
P1
One primary owner per accountHouseholds and relationships · SOQLGivenChecking account with A as primary ownerWhenB is set as primaryThenA becomes joint or is removed per your rule; exactly 1 primary owner role on the account
F-005
P3
Business hierarchyHouseholds and relationships · UIGivenParent company with two subsidiariesWhenRelationships are createdThenAccountAccountRelation shows the parent and subsidiary roles from both sides
F-006
P2
Deceased client handlingHouseholds and relationships · SOQLGivenClient marked deceased on 2026-11-02WhenMarketing and annual review jobs runThenNo campaigns or review tasks for the client; estate case opened; accounts flagged
F-007
P1
Replayed feed changes nothingFinancial accounts and feeds · IntegrationGivenCore banking file of 1,250 transactions already loadedWhenThe same file is loaded againThenFinancialAccountTransaction count and balances unchanged
F-008
P2
Balance lands on the right dateFinancial accounts and feeds · SOQLGivenBalances posted 2026-11-30 at 23:00 ET (2026-12-01 04:00 UTC)WhenStatement-date logic runs in a UTC jobThenBalance stored for 2026-11-30, not 2026-12-01
F-009
P1
Clean onboardingOnboarding and KYC · UI + SOQLGivenIndividual applicant with matching ID and addressWhenIdentity verification and screening runThenPartyIdentityVerification verified; screening clear; account opened and linked to the applicant
F-010
P1
Identity mismatch holds the applicationOnboarding and KYC · IntegrationGivenDate of birth differs from the ID document by one dayWhenVerification runsThenVerification fails; application on hold; no FinancialAccount created
F-011
P1
Possible sanctions matchOnboarding and KYC · IntegrationGivenScreening stub returns a potential matchWhenScreening completesThenPartyScreeningSummary flagged; compliance case opened; applicant sees a neutral “under review” message
F-012
P1
The 25% ownership boundaryOnboarding and KYC · UI + SOQL31 CFR 1010.230GivenLLC owned 30% / 25% / 24% / 21%WhenBeneficial ownership is collectedThenOwners at 30% and 25% plus one control person required; the 24% owner optional
F-013
P2
Nobody owns 25%Onboarding and KYC · UIGivenLLC with five owners at 20% eachWhenBeneficial ownership is collectedThenOnly the control person is required
F-014
P2
Existing entity opens a second accountOnboarding and KYC · UIFIN-2026-R001GivenLegal entity onboarded in 2025; no risk changeWhenIt opens a new account in 2026ThenNo forced re-collection of beneficial owners unless your policy or a risk trigger needs it
F-015
P1
High risk triggers enhanced due diligenceOnboarding and KYC · SOQLGivenApplicant is a politically exposed personWhenRisk rating runsThenPartyProfileRisk High; EDD tasks created; next review date set to your EDD cycle
F-016
P2
Missing document blocks submissionOnboarding and KYC · UIGivenChecklist needs ID and proof of address; only ID uploadedWhenBanker submitsThenBlocked; the proof-of-address DocumentChecklistItem stays open
F-017
P1
Debt-to-income at the edgeLending · UI + SOQLGivenMonthly debts $2,450; gross monthly income $7,000WhenDTI calculatesThen35.00%. With debts of $2,449: 34.99%. A 35% cutoff must treat these two differently
F-018
P1
Credit score cutoffLending · UIGivenProduct minimum 620; applicants at 619, 620 and 621WhenProducts are offeredThen619 not offered; 620 and 621 offered
F-019
P1
Adverse action on timeLending · UI + SOQLReg B, 12 CFR 1002.9GivenCompleted application received 2026-11-02, then declinedWhenDecline is recordedThenAdverse action notice with principal reasons generated, due by 2026-12-02
F-020
P2
Incomplete applicationLending · UIGivenIncome documents missing for 10 daysWhenIncompleteness check runsThenNotice of incompleteness generated per your Reg B procedure
F-021
P2
Co-applicant removedLending · UI + SOQLGivenJoint applicationWhenCo-applicant removed before submissionThenTheir income, debts and consents leave the application; DTI recalculates
F-022
P2
Declined files are keptLending · SOQLReg B, 12 CFR 1002.12GivenDeclined application, notice sent 2025-01-10WhenPurge job runs on 2026-11-07ThenApplication still present; earliest purge 25 months after the notice
F-023
P3
Rate lock about to expireLending · UIGiven45-day rate lock set 2026-11-01 (expires 2026-12-16)WhenLoan not closed by 2026-12-11ThenLoan officer alerted 5 days before expiry, per your policy
F-024
P1
Ten-business-day investigation clockCard disputes (Reg E) · UI + SOQLReg E, 12 CFR 1005.11GivenDebit card dispute received Monday 2027-03-01WhenDispute is loggedThenInvestigation due Monday 2027-03-15 (10 business days); extended limit 2027-04-15 (45 days)
F-025
P1
Provisional credit when the clock runs outCard disputes (Reg E) · UI + SOQLReg E, 12 CFR 1005.11GivenSame dispute, still open on day 10WhenDay-10 job runsThenDisputed amount credited by 2027-03-15; customer told within 2 business days; funds usable
F-026
P2
New account gets 20 and 90Card disputes (Reg E) · UIReg E, 12 CFR 1005.11GivenFirst deposit on 2027-02-20; dispute on 2027-03-01WhenDispute is loggedThen20-business-day and 90-day clocks apply, not 10 and 45
F-027
P1
No error foundCard disputes (Reg E) · UI + SOQLReg E, 12 CFR 1005.11GivenInvestigation finds no error on day 30WhenResult recordedThenResults sent within 3 business days; provisional credit reversed only with the required notice
F-028
P2
Three transactions, three itemsCard disputes (Reg E) · SOQLGivenOne dispute covering three card transactionsWhenTwo charged back, one deniedThenThree DisputeItem records with separate outcomes; chargebacks on two only
F-029
P2
Same transaction disputed twiceCard disputes (Reg E) · UIGivenOpen dispute on transaction 8841WhenA second dispute is logged for 8841ThenBlocked or linked; never two open disputes for one transaction
F-030
P1
Advisor without a role sees nothingCompliant Data Sharing · SecurityGivenAdvisor B, same branch, not a participant on client XWhenB searches for X and opens X’s financial accounts by URLThenNo access in search, reports or by URL
F-031
P1
Removing a participant removes accessCompliant Data Sharing · SecurityGivenAdvisor A is a participant on client XWhenA’s participant record is deletedThenA loses access to X and X’s accounts once sharing recalculates
F-032
P1
Information barrierCompliant Data Sharing · SecurityGivenInvestment banking user and a wealth client in one orgWhenIB user searches for the clientThenNo access to wealth records
F-033
P2
Branch manager visibilityCompliant Data Sharing · SecurityGivenBranch manager with participant-based accessWhenManager opens their advisors’ clientsThenAccess matches your Compliant Data Sharing setup, nothing wider
F-034
P1
Premium adds upInsurance policies · UI + SOQLGivenAuto policy: liability $640, collision $380, comprehensive $120, surcharge $60WhenPolicy is issuedThenPremium $1,200; each coverage and the surcharge stored as its own line
F-035
P1
Mid-term endorsement is pro-ratedInsurance policies · SOQLGiven365-day policy; driver added on day 120; annual premium change $600WhenEndorsement is issuedThenAdditional premium $402.74 (600 × 245 ÷ 365)
F-036
P1
Pro-rata cancellation refundInsurance policies · SOQLGiven$1,200 annual premium, cancelled after 73 daysWhenCancellation processesThenRefund $960.00 (1,200 × 292 ÷ 365); short-rate policies use their own table
F-037
P2
Leap-year termInsurance policies · SOQLGivenTerm 2027-07-01 to 2028-07-01 (366 days)WhenA day-200 endorsement is pro-ratedThenDenominator 366, or whatever your rating rule states; a hard-coded 365 fails
F-038
P1
Unlicensed producer cannot bindInsurance policies · UIGivenProducer licensed in TX only; policy state NYWhenProducer tries to bindThenBlocked with a licensing message
F-039
P2
Commission calculatedInsurance policies · SOQLGivenCommission 12% on $1,200 written premiumWhenCommission statement runsThenCommissionStatementLineItem shows $144.00
F-040
P1
Loss outside the policy periodInsurance claims · UI + SOQLGivenPolicy ended 2026-10-31; loss on 2026-11-03WhenFirst notice of loss is enteredThenClaim flagged no coverage; no reserve set automatically
F-041
P1
Deductible applied onceInsurance claims · SOQLGivenCovered loss $3,000; deductible $500WhenTwo payments are made on the claimThenFirst payment $2,500; the deductible is not taken again from the second
F-042
P1
Payment over reserve needs approvalInsurance claims · UIGivenClaimCoverage reserve $5,000WhenAdjuster enters a $5,200 paymentThenPayment held for authority approval; reserve change logged
F-043
P2
Everyone on the claimInsurance claims · SOQLGivenClaimant, insured and a third-party driverWhenClaim is createdThenThree ClaimParticipant records with the right roles; letters go to the right party
F-044
P1
Lost card through an AI agentService, goals and referrals · UI + SOQLGivenCustomer tells the agent their card is lostWhenAgent blocks and reorders the cardThenCard blocked in the core system; one replacement ordered; full card number never read back
F-045
P3
Action plan skips weekendsService, goals and referrals · UIGivenOnboarding template, first task at +1 day, skip weekends onWhenPlan starts Friday 2026-11-06ThenFirst task due Monday 2026-11-09, not Saturday
F-046
P3
Goal progressService, goals and referrals · SOQLGivenFinancialGoal target $50,000; funded $12,500WhenGoal recalculatesThenProgress 25%
F-047
P3
Referral creditService, goals and referrals · UIGivenBanker refers a client to wealthWhenReferral is convertedThenReferral routed to the wealth queue and credited to the banker

Values are examples. Rules are US federal requirements as we read them on November 7, 2026; state law, contracts and your SOPs may be stricter. Swap in your own numbers before you run the suite.

// the numbers //

Numbers your tests must enforce

Numbers your tests must enforce

10 business days, 45 days

Reg E error resolution: investigate within 10 business days, or credit the customer provisionally and take up to 45 days. New accounts get 20 business days and 90 days (12 CFR 1005.11).

2 and 3 business days

Tell the customer about a provisional credit within 2 business days, and send results within 3 business days of finishing the investigation. Both are dates your tests can assert.

25% plus one

CDD rule: identify each person who owns 25% or more of a legal entity customer, plus one person who controls it (31 CFR 1010.230). Since February 2026, FIN-2026-R001 relieves re-collection when an existing customer opens a new account.

30 days

Reg B: notify an applicant of action taken within 30 days of a completed application, with the principal reasons for any adverse action (12 CFR 1002.9).

25 months

Reg B record retention for consumer credit applications after notice of action (12 CFR 1002.12). Your purge job is a test case.

More than $10,000

Cash transactions above $10,000 trigger a Currency Transaction Report under the Bank Secrecy Act. If your org tracks cash activity, test $10,000.00 and $10,000.01.

Check these with your compliance team

These are US federal rules as we read them on November 7, 2026. State law, card network rules and your own policies are often stricter. Use them as starting oracles, then replace each number with the one your policy sets.

// object map //

Which objects each process touches

Which objects each process touches

ProcessObjects and APIs to checkWhat usually breaks
ProcessHouseholds and relationships6 cases · 2 P1 · F-001 to F-006Objects and APIsAccount (household, person, business)AccountContactRelationAccountAccountRelationFinancialAccountPartyWhat usually breaksJoint accounts counted twice in household totals; two primary owners on one account.
ProcessFinancial accounts and feeds2 cases · 1 P1 · F-007 to F-008Objects and APIsFinancialAccountFinancialAccountBalanceFinancialAccountTransactionSecuritiesHoldingWhat usually breaksReplayed core banking files; balances stored on the wrong date.
ProcessOnboarding and KYC8 cases · 5 P1 · F-009 to F-016Objects and APIsApplicationFormApplicantPartyProfilePartyIdentityVerificationPartyScreeningSummaryPartyProfileRiskIdentityDocumentDocumentChecklistItemWhat usually breaksScreening stubs that always clear; the 25% ownership boundary.
ProcessLending7 cases · 3 P1 · F-017 to F-023Objects and APIsResidentialLoanApplicationApplicationFormApplicationFormProductApplicantWhat usually breaksRatios rounded the wrong way; notices missed when an application stalls.
ProcessCard disputes (Reg E)6 cases · 3 P1 · F-024 to F-029Objects and APIsDisputeDisputeItemDisputeItemChargebackDisputeReasonWhat usually breaksBusiness-day clocks counted in calendar days; provisional credit never posted.
ProcessCompliant Data Sharing4 cases · 3 P1 · F-030 to F-033Objects and APIsAccountParticipantCustomObjectParticipantparticipant rolesWhat usually breaksTests run as an admin; access kept after a participant is removed.
ProcessInsurance policies6 cases · 4 P1 · F-034 to F-039Objects and APIsInsurancePolicyInsurancePolicyCoverageInsurancePolicyParticipantInsurancePolicySurchargeInsurancePolicyTransactionProducerWhat usually breaksPro-rata math at the cent; 366-day terms; unlicensed producers.
ProcessInsurance claims4 cases · 3 P1 · F-040 to F-043Objects and APIsClaimClaimItemClaimCoverageClaimParticipantClaimCoveragePaymentDetailWhat usually breaksPayments over reserve without approval; losses outside the policy period.
ProcessService, goals and referrals4 cases · 1 P1 · F-044 to F-047Objects and APIsActionPlanFinancialGoalReferralAgentforce actionsWhat usually breaksAgents that read back sensitive data; task dates landing on weekends.

// field notes //

Seven ways FSC tests pass and still miss the bug

Seven ways FSC tests pass and still miss the bug

01

Joint accounts counted twice

Household rollups that add each owner’s share separately double the joint balance. Put one joint account in every household test set and assert the total.

02

Tests that run as an admin

An admin ignores Compliant Data Sharing. Run access tests as an advisor with a participant role, one without, a branch manager and an IB user.

03

Calendar days where the rule says business days

Reg E counts business days for the first clock and calendar days for the second. Test a dispute logged before a holiday weekend and check both dates.

04

Boundaries skipped

Exactly 25%, a 620 score, DTI of 35.00% and day 10 versus day 11 are where rules flip. Test the value on each side of the line.

05

Rounding at the cent

Pro-rata premiums and refunds round at the cent, and leap-year terms change the denominator. Assert the exact amount, not “about right”.

06

Vendor stubs that always clear

Identity, screening and credit stubs that only return a clean answer leave holds, flags and compliance cases untested. Script the mismatch and the possible match.

07

Old FinServ package objects

FSC started as the FinServ managed package (FinServ__FinancialAccount__c) and now ships standard objects such as FinancialAccount. Mixed orgs break tests that query the wrong one.

// test data //

The test data that finds these bugs

The test data that finds these bugs

FSC defects hide in edge data: the joint account, the 25% owner, the dispute logged before a holiday, the advisor who isn’t on the client team. Build these sets once and reuse them every release.

Data setMinimumWhat to include
Data setHouseholdsMinimum12What to includeJoint accounts, a split household, a deceased member, a business owner who is also a person client
Data setLegal entitiesMinimum6What to includeOwnership 30/25/24/21, five owners at 20%, a trust, a nested LLC, a nonprofit, one owner who is a PEP
Data setApplicantsMinimum9What to includeCredit scores 619, 620, 621; DTI 34.99% and 35.00%; an ID with a one-day birth-date mismatch
Data setDispute datesMinimum5What to includeA holiday-free Monday, a Friday before a holiday, an account under 30 days old, a dispute open on day 10, one resolved
Data setPoliciesMinimum8What to include365- and 366-day terms; endorsements on day 1, mid-term and the last day; pro-rata and short-rate cancellations
Data setUsersMinimum8 profilesWhat to includeBanker, advisor with and without a participant role, branch manager, IB user, compliance analyst, adjuster, producer. Never an admin.
Generate the date cases, don’t hand-write them

The clocks are where the combinations hide. Five received-date patterns × two account ages (under 30 days, older) × three outcomes (error, no error, partial) is 30 dispute cases, each with three dates to assert: investigation, extended limit and notice. Build them as a data table, run one UI journey to prove the screens, and check the other 29 with SOQL.

// questions //

Questions about testing Financial Services Cloud

What should I test first in Financial Services Cloud?

Anything that moves money, starts a regulatory clock or controls who sees a client: household rollups, KYC screening, dispute deadlines, adverse action notices and Compliant Data Sharing. Those are the P1 cases on this page.

Is Financial Services Cloud now Agentforce Financial Services?

Yes. Salesforce renamed Financial Services Cloud to Agentforce Financial Services after Dreamforce 2025. Many orgs have also moved from the older FinServ package objects to standard objects such as FinancialAccount, so check which ones your tests and code query.

How do I test Reg E dispute deadlines?

Log disputes on dates you can count by hand and assert three things on the record: the 10-business-day investigation date, the 45-day extended limit, and the provisional credit notice within 2 business days. Accounts opened within 30 days get 20 business days and 90 days.

How do I test Compliant Data Sharing?

Log in as an advisor with a participant role and one without, in the same branch. Try search, reports, list views and direct record URLs. Then remove the participant and confirm the access goes once sharing recalculates.

Should FSC tests run through the UI or the API?

Both. Keep a few UI journeys per process to prove the screens and flows, then load volume through the API and assert balances, rollups and access with SOQL.

Can TestZeus run these FSC test cases?

Yes. Import the cases in plain English or Gherkin, run them as different profiles in a sandbox, and validate with SOQL, API calls and generated letters. TestZeus is SOC 2 Type II and ISO 27001 certified, can mask data before it reaches an LLM, and can run on-prem.

// next step //

Run these cases on your own sandbox

Bring your ten most important cases. We will run them on your sandbox as real profiles, check the records and letters they produce, and walk you through the report.

// Start testing //

balance cost, quality and deadlines with TestZeus' Agents.

balance cost, quality and deadlines with TestZeus' Agents.