Playbooks built by the world’s best operations teams
Playbooks built by the world’s best operations teams
Playbooks built by the world’s best operations teams
Write the logic once in natural language. Feather executes it across identity, access, devices, and more.
Write the logic once in natural language. Feather executes it across identity, access, devices, and more.

Password / Login Recovery
Intake — Login Issue
- Customer states forgotten password or cannot log in forgotten-password →identity-verification
- Customer states account appears locked or suspended account-locked →account-status-check
- Customer states they did not initiate any lockout or suspects unauthorised access unauthorised-access →escalation-fraud-review
- Issue is unclear or customer is unsure unclear CRM.LogInteraction, ask one clarifying question →identity-verification
Identity Verification
CRM.PullCustomerRecord using customer.registeredEmail or customer.accountNumber
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
- Identity confirmed on first or second attempt identity-confirmed →account-status-check
- Identity fails first attempt identity-failed-once CRM.IncrementAttemptCount, prompt retry →identity-verification-retry
- Account already shows two or more failed attempts max-attempts-reached →escalation-identity-lockout
Identity Verification — Retry
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
CRM.IncrementAttemptCount
- Identity confirmed on retry identity-confirmed →account-status-check
- Identity fails again on retry identity-failed-twice →escalation-identity-lockout
Account Status Check
CoreBanking.GetAccountStatus for customer.accountNumber
FraudMonitoring.CheckFraudFlag for customer.accountNumber
- Account is clear with no flags or locks account-clear →contact-info-check
- Account is locked due to repeated failed login attempts account-locked-cooldown →cooldown-notice
- Account is flagged for suspicious or fraudulent activity fraud-flag-active →escalation-fraud-review
- Account status is suspended or otherwise restricted account-suspended →escalation-account-review
Contact Info Check
CRM.VerifyContactInfo for customer.registeredEmail and customer.registeredPhone
- Registered email or phone confirmed current by customer contact-confirmed →mfa-challenge
- Customer states contact info is outdated or no longer accessible contact-outdated →escalation-manual-id-verification
MFA Challenge
MFAOTP.SendCode to customer.registeredEmail or customer.registeredPhone based on reset.linkDeliveryMethod
- Customer provides correct OTP code otp-valid →password-reset-initiation
- Customer provides incorrect code otp-invalid →escalation-mfa-failure
- Customer states they did not receive the code otp-not-received MFAOTP.ResendCode, confirm delivery method →mfa-challenge
- Customer states the contact they received it on is not theirs otp-wrong-contact →escalation-fraud-review
Password Reset Initiation
CoreBanking.InitiatePasswordReset for customer.accountNumber
EmailSMSDelivery.SendResetLink to customer.registeredEmail or customer.registeredPhone
- Customer confirms new password set and login successful access-restored →resolution-access-confirmed
- Customer states link expired or not received link-expired EmailSMSDelivery.ResendResetLink →password-reset-initiation
- Customer states they are still unable to log in after reset reset-failed →escalation-account-review
Cooldown Notice
CoreBanking.GetCooldownStatus for customer.accountNumber
- Customer acknowledges and agrees to wait customer-accepts-cooldown →resolution-cooldown-advised
- Customer states they did not make those login attempts customer-denies-attempts →escalation-fraud-review
Resolution — Access Confirmed
CRM.LogInteraction tagged password-reset-successful, linked to customer.accountNumber
CoreBanking.ClearLockStatus for customer.accountNumber
Resolution — Cooldown Advised
CRM.LogInteraction tagged cooldown-in-effect, linked to customer.accountNumber
Escalation — Identity Lockout
CoreBanking.LockAccount for customer.accountNumber
CRM.CreateCase priority: high, tagged identity-verification-failed, linked to customer.accountNumber
CRM.LogInteraction tagged max-attempts-reached
Escalation — Fraud Review
CoreBanking.FreezeAccount for customer.accountNumber
FraudMonitoring.EscalateCase for customer.accountNumber, flag: suspicious-activity
CRM.CreateCase priority: high, tagged fraud-review-required, linked to customer.accountNumber
CRM.LogInteraction tagged fraud-flag-escalation
Escalation — Manual ID Verification
CRM.CreateCase priority: medium, tagged outdated-contact-info-manual-review, linked to customer.accountNumber
CRM.LogInteraction tagged contact-info-outdated-escalation
Escalation — MFA Failure
CRM.CreateCase priority: medium, tagged mfa-failure-escalation, linked to customer.accountNumber
CRM.LogInteraction tagged otp-verification-failed
Escalation — Account Review
CRM.CreateCase priority: medium, tagged account-status-restricted, linked to customer.accountNumber
CRM.LogInteraction tagged account-review-escalation

Card Lost / Stolen Replacement
Intake
- Customer confirms card is lost confirmed →identity-verification
- Customer mentions unauthorized charges or suspected fraud fraud_concern →identity-verification-fraud
- Customer is unresponsive or unclear →identity-verification
Identity Verification
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes on first or second attempt verified →card-block
- Verification fails after multiple attempts failed →verification-failure
Identity Verification — Fraud Path
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes verified →card-block-fraud
- Verification fails after multiple attempts failed →verification-failure
Card Block
CardManagement.BlockCard for card.id
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked
Salesforce.CreateCase type: card-lost-stolen, linked to account.id
- Customer provides last seen details →address-confirmation
- Customer cannot recall details →address-confirmation
Card Block — Fraud Path
CardManagement.BlockCard for card.id
FraudDetection.FlagAccount on account.id tagged: unauthorized-transactions
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked-fraud
Salesforce.CreateCase type: fraud-card-lost-stolen, priority: high, linked to account.id
- Proceed to address confirmation for replacement →address-confirmation-fraud
Address Confirmation
- Customer confirms existing address confirmed →replacement-issuance
- Customer requests a new or different address new_address →address-review
Address Confirmation — Fraud Path
- Customer confirms existing address confirmed →replacement-issuance-fraud
- Customer requests a new or different address new_address →address-review
Address Review
Salesforce.UpdateCase add: unrecognized-replacement-address, replacement.address, flagged-for-review
ShippingFulfillment.HoldOrder pending address verification on account.id
- Address approved approved →replacement-issuance
- Address flagged or rejected rejected →escalation-human
Replacement Issuance
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited
- Customer accepts standard delivery standard →replacement-standard
- Expedited requested but not eligible expedited →replacement-standard
Replacement Issuance — Fraud Path
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited-fraud
- Customer accepts standard delivery standard →replacement-standard-fraud
Replacement — Standard
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines digital card →resolution
Replacement — Expedited
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines →resolution
Replacement — Standard (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
→escalation-fraud
Replacement — Expedited (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
→escalation-fraud
Digital Card Offer
- Digital card provisioned successfully provisioned →resolution
- Customer not eligible or provisioning fails ineligible →resolution
Verification Failure
Salesforce.CreateCase type: identity-verification-failure, priority: high, linked to account.id
Salesforce.LogNote add: customer-directed-to-branch, verification-failed
- Customer wants branch info →escalation-human
- Customer ends interaction →resolution-no-action
Escalation — Fraud Team
FraudDetection.OpenDisputeCase linked to account.id, flagged: unauthorized-transactions, transaction.unauthorized_flag
Salesforce.UpdateCase priority: high, tagged: fraud-escalation, dispute-opened
Slack.Notify to #fraud-ops with case summary, account.id, card.last4
Escalation — Human Agent
Salesforce.UpdateCase priority: high, tagged: manual-review-required
Slack.Notify to #card-services-review with case summary, account.id, customer.name
Resolution
Salesforce.CloseCase resolution: card-replaced, linked to account.id
Resolution — No Action Taken
Salesforce.CloseCase resolution: blocked-no-replacement-issued, linked to account.id



















New Account Onboarding
Intent Capture
- Customer requests a personal account type (checking, savings, investment) personal-account →info-collection
- Customer requests a business or trust account business-or-trust-account →specialist-routing
- Customer is unsure or needs guidance unsure →account-type-guidance
Account Type Guidance
kb.account-types-overview — retrieve product descriptions, minimum balance requirements, and eligibility criteria
- Customer selects a personal account type personal-account →info-collection
- Customer still wants a business or trust account business-or-trust-account →specialist-routing
- Customer wants to end the conversation end-session →session-close
Info Collection
CRM.CreateDraftRecord to initialize a draft customer profile
kb.minimum-deposit-requirements — validate customer.initialDepositAmount and customer.fundingSource eligibility
- All required fields collected and deposit method is supported fields-complete →identity-verification
- Funding method is unsupported or deposit is below the minimum funding-issue →funding-issue-resolution
- Customer is unwilling to provide required information declined-to-provide →escalation-human
Funding Issue Resolution
kb.funding-methods-policy — retrieve supported funding sources and minimum initial deposit thresholds
- Customer selects a supported alternative funding method alternative-accepted →identity-verification
- Customer cannot or will not meet deposit requirements cannot-meet-requirements →session-close
Identity Verification
KYCService.SubmitVerification with customer.fullLegalName, customer.dateOfBirth, customer.govIdNumber, customer.taxId, customer.address
- Verification passes on first or second attempt kyc-pass →compliance-screening
- Verification fails — first attempt kyc-fail-first →kyc-retry
- Verification fails — second attempt or kyc.attemptCount exceeds 2 kyc-fail-final →escalation-human
KYC Retry
DocUploadPortal.RequestDocument to customer.email for alternative ID submission
- Customer submits alternative document and resubmission passes kyc-pass →compliance-screening
- Customer submits alternative document and resubmission fails kyc-fail-final →escalation-human
- Customer cannot provide alternative documentation cannot-verify →escalation-human
Compliance Screening
ComplianceScreening.RunCheck with customer.fullLegalName, customer.taxId, customer.dateOfBirth, customer.address
- Screening passes with no flags compliance-clear →account-creation
- Any KYC or AML flag is raised compliance-flagged →escalation-compliance
- Customer is identified as a Politically Exposed Person (PEP) compliance.isPEP pep-flag →escalation-compliance
Account Creation
CoreBanking.CreateAccount with customer.fullLegalName, customer.taxId, customer.address, customer.fundingSource, customer.initialDepositAmount, customer.accountType
CRM.UpdateRecord with account.id, mark status: account-created
Twilio.SendSMS to customer.phone: "Your new account has been created. Your account ID is account.id. Your login credentials will arrive by email shortly."
CoreBanking.IssueCredentials to customer.email with account.credentials and welcome packet link
- Account created and credentials delivered successfully account-ready →customer-orientation
- Account creation fails due to a system error system-error →escalation-human
Customer Orientation
kb.new-account-faq — retrieve top questions about first login, mobile app access, and deposit timelines
- Customer has additional questions more-questions →customer-orientation
- Customer is satisfied and ready to end satisfied →session-close
- Customer wants to add a beneficiary or linked account additional-setup →escalation-human
Specialist Routing
CRM.CreateLeadRecord with customer.phone, customer.email, customer.accountType, note: specialist-referral
- Details captured and specialist notified →escalation-human
Escalation to Compliance Officer
ComplianceScreening.FlagRecord with customer.fullLegalName, customer.taxId, compliance.flagCode, compliance.isPEP
CRM.EscalateRecord priority: critical, tag: compliance-review
Escalation to Human Agent
CRM.EscalateRecord priority: high, tag: agent-review
Twilio.SendSMS to customer.phone: "Your account application requires attention from one of our specialists. A team member will reach out to you shortly."
Session Close
CRM.CloseSession with session outcome logged

Balance / Transaction Inquiry
Intake
- Customer asks about current balance balance-inquiry →identity-verification
- Customer asks about a specific transaction or unrecognized charge transaction-inquiry →identity-verification
- Customer immediately alleges fraud or unauthorized access fraud-allegation →escalation-fraud
- Intent unclear — ask a clarifying question, then →identity-verification
Identity Verification
OTPAuth.SendOTP to customer.phone
- Customer provides correct OTP verified IdentityVerification.Confirm →account-lookup
- Customer cannot receive OTP, offer security question fallback otp-failed →security-question-fallback
- Customer has already failed one attempt — verification.attemptCount equals 1 →second-attempt-warning
Second Attempt Warning
- Customer provides correct OTP on second try verified IdentityVerification.Confirm →account-lookup
- Customer fails again unverified →escalation-identity-failure
Security Question Fallback
IdentityVerification.FetchSecurityQuestion for customer.accountNumber
- Customer answers correctly verified IdentityVerification.Confirm →account-lookup
- Customer answers incorrectly unverified →escalation-identity-failure
Account Lookup
CoreBanking.GetAccountSummary for customer.accountNumber including account.status, account.balance, account.availableBalance, and customer.accountType
- Account returned successfully and status is active account-found →inquiry-routing
- Account has a hold, freeze, or legal flag on it account-flagged →escalation-account-flag
- System returns an error or times out lookup-error →system-error
Inquiry Routing
- Customer needs current balance confirmed balance-inquiry →balance-delivery
- Customer needs a specific transaction explained transaction-inquiry →transaction-lookup
- Customer now mentions an unexpected fee fee-concern →fee-review
Balance Delivery
CoreBanking.GetAccountSummary to retrieve account.balance and account.availableBalance for customer.accountType
- Customer is satisfied and has no further questions satisfied →resolution
- Customer wants to see recent transactions as well wants-transactions →transaction-lookup
- Customer disputes a charge or says a transaction looks wrong transaction-dispute →transaction-lookup
- Customer raises concern about an unexpected fee fee-concern →fee-review
Transaction Lookup
CoreBanking.GetTransactionHistory for customer.accountNumber over inquiry.dateRange
- Transactions returned successfully transactions-found →transaction-detail
- No transactions found in the requested range no-results →no-transaction-found
- System returns an error lookup-error →system-error
Transaction Detail
CRM.LogInteraction tagged balance-transaction-inquiry, linked to customer.accountNumber and transaction.id
- Customer recognizes the transaction and is satisfied satisfied →resolution
- Customer does not recognize the transaction and believes it is fraudulent fraud-allegation →escalation-fraud
- Customer recognizes the merchant but wants to dispute the amount amount-dispute →escalation-fraud
- Customer has a question about a fee within the transaction fee-concern →fee-review
No Transaction Found
- Customer provides more details — retry lookup →transaction-lookup
- Customer still cannot locate the transaction and suspects fraud fraud-allegation →escalation-fraud
- Customer is satisfied and wants to close satisfied →resolution
Fee Review
CoreBanking.GetFeeDetail for fee.type and fee.amount on customer.accountNumber
kb.fee-waiver-policy — check one-time waiver eligibility criteria for customer.accountType and account standing
- Customer is eligible and agent applies waiver waiver-applied CoreBanking.ApplyFeeWaiver →fee-waiver-confirmation
- Customer is not eligible for a waiver waiver-ineligible →fee-waiver-declined
- Customer is upset and escalation is warranted needs-escalation →escalation-human
Fee Waiver Confirmation
CRM.LogInteraction tagged fee-waiver-applied, linked to customer.accountNumber and fee.type
- Customer is satisfied satisfied →resolution
- Customer has an additional question →inquiry-routing
Fee Waiver Declined
- Customer accepts the outcome satisfied →resolution
- Customer wants to speak to a specialist or is upset escalation-requested →escalation-human
System Error
CRM.LogIncident tagged system-error, linked to customer.accountNumber and customer.phone
CRM.ScheduleCallback for customer.phone at next available slot
- Customer agrees to callback and conversation ends satisfied →resolution
- Customer wants to try again immediately →account-lookup
- Customer is very frustrated and demands to speak with someone now escalation-requested →escalation-human
Escalation — Fraud or Dispute
FraudDetection.FlagAccount for customer.accountNumber tagged suspected-fraud, linked to transaction.id
CRM.CreateCase priority: high, tagged fraud-dispute, linked to customer.accountNumber and transaction.id
→fraud-alert-follow-up
Escalation — Identity Verification Failed
CRM.LogIncident tagged verification-failure, linked to customer.phone
CRM.CreateCase priority: high, tagged identity-lockout
Escalation — Account Flag
CRM.CreateCase priority: high, tagged account-flag-review, linked to customer.accountNumber
CRM.LogInteraction tagged account-flag-escalation
→escalation-human
Escalation — Human Specialist
CRM.CreateCase priority: high, tagged specialist-handoff, linked to customer.accountNumber
CRM.LogInteraction tagged escalation-human, with case summary
Resolution
CRM.LogInteraction tagged inquiry-resolved, linked to customer.accountNumber



















Fraud Alert Follow-up
Alert Notification
FraudDetectionPlatform.FetchFlaggedTransaction to retrieve transaction.id, transaction.amount, transaction.merchant, transaction.datetime, and transaction.riskScore.
- System lookup succeeds and transaction details are retrieved →identity-verification
- System lookup fails or returns no transaction record system_error →system-lookup-failure
Identity Verification
IdentityVerification.VerifyCustomer using customer.name, customer.dob, and customer.pin or customer.securityAnswer.
- Identity verified successfully confirmed →transaction-confirmation
- Identity cannot be verified after two attempts failed →verification-failure
- Customer is uncertain or provides partial information partial →verification-retry
Verification Retry
IdentityVerification.VerifyCustomer retry with alternate credentials.
- Identity verified on retry confirmed →transaction-confirmation
- Identity still cannot be verified failed →verification-failure
Verification Failure
CRM.LogInteraction tagged verification-failure, linked to account.id, noting no transaction details were disclosed.
Transaction Confirmation
- Customer confirms the transaction is theirs confirmed →resolution-clear
- Customer says the transaction is not theirs denied →disputed-transaction
- Customer is unsure or asks for more time uncertain →transaction-detail-review
Transaction Detail Review
kb.fraud-dispute-policy — review dispute eligibility window for transaction.datetime.
- Customer recognizes the transaction after further detail confirmed →resolution-clear
- Customer confirms the transaction is not theirs denied →disputed-transaction
- Customer remains unsure and cannot confirm or deny uncertain CRM.LogInteraction tagged pending-customer-response →escalation-human
Disputed Transaction
CardManagement.BlockCard for card.last4.
CRM.UpdateCase flagged as fraud-reported, linked to account.id and transaction.id.
- Customer confirms only the single flagged transaction is unrecognized single-transaction →open-dispute
- Customer flags additional unrecognized transactions multiple-transactions →expanded-fraud-event
- Customer is distressed, upset, or requests immediate escalation distressed →escalation-human
Expanded Fraud Event
CoreBanking.FreezeAccount for account.id.
FraudDetectionPlatform.FlagAccountCompromised linked to account.id.
CRM.CreateCase priority: critical, tagged expanded-fraud-account-review, linked to account.id.
DisputeManagement.OpenExpandedReview for account.id, noting all flagged transactions.
- Case created and account frozen →escalation-human
Open Dispute
DisputeManagement.OpenDispute for transaction.id, transaction.amount, transaction.merchant, linked to account.id. Capture dispute.caseId.
→replacement-card
Replacement Card
CardManagement.IssueReplacementCard for card.last4, ship to replacement.deliveryAddress.
- Approved approved →dispute-wrap-up
- Rejected rejected →escalation-human
- No response within 30 min →escalation-human
Dispute Wrap-up
CRM.UpdateCase with dispute.caseId, card block status, and replacement card shipping confirmation.
CoreBanking.ClearFraudAlert on transaction.id.
- Customer has further questions or concerns →escalation-human
- Customer is satisfied and call can close →resolution-clear
System Lookup Failure
CRM.LogInteraction tagged system-error-transaction-lookup, linked to account.id, noting transaction details could not be retrieved.
FraudDetectionPlatform.FlagForManualReview linked to account.id, tagged system-lookup-failure.
Escalation to Human Agent
CRM.CreateCase priority: high, tagged fraud-escalation, linked to account.id and transaction.id.
Slack.Notify to #fraud-ops with case summary including account.id, transaction.id, transaction.amount, card.last4, and reason for escalation.
Resolution — Clear
CoreBanking.ClearFraudAlert on transaction.id.
CRM.LogInteraction tagged alert-cleared-customer-confirmed, linked to account.id.




















Password / Login Recovery
Intake — Login Issue
- Customer states forgotten password or cannot log in forgotten-password →identity-verification
- Customer states account appears locked or suspended account-locked →account-status-check
- Customer states they did not initiate any lockout or suspects unauthorised access unauthorised-access →escalation-fraud-review
- Issue is unclear or customer is unsure unclear CRM.LogInteraction, ask one clarifying question →identity-verification
Identity Verification
CRM.PullCustomerRecord using customer.registeredEmail or customer.accountNumber
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
- Identity confirmed on first or second attempt identity-confirmed →account-status-check
- Identity fails first attempt identity-failed-once CRM.IncrementAttemptCount, prompt retry →identity-verification-retry
- Account already shows two or more failed attempts max-attempts-reached →escalation-identity-lockout
Identity Verification — Retry
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
CRM.IncrementAttemptCount
- Identity confirmed on retry identity-confirmed →account-status-check
- Identity fails again on retry identity-failed-twice →escalation-identity-lockout
Account Status Check
CoreBanking.GetAccountStatus for customer.accountNumber
FraudMonitoring.CheckFraudFlag for customer.accountNumber
- Account is clear with no flags or locks account-clear →contact-info-check
- Account is locked due to repeated failed login attempts account-locked-cooldown →cooldown-notice
- Account is flagged for suspicious or fraudulent activity fraud-flag-active →escalation-fraud-review
- Account status is suspended or otherwise restricted account-suspended →escalation-account-review
Contact Info Check
CRM.VerifyContactInfo for customer.registeredEmail and customer.registeredPhone
- Registered email or phone confirmed current by customer contact-confirmed →mfa-challenge
- Customer states contact info is outdated or no longer accessible contact-outdated →escalation-manual-id-verification
MFA Challenge
MFAOTP.SendCode to customer.registeredEmail or customer.registeredPhone based on reset.linkDeliveryMethod
- Customer provides correct OTP code otp-valid →password-reset-initiation
- Customer provides incorrect code otp-invalid →escalation-mfa-failure
- Customer states they did not receive the code otp-not-received MFAOTP.ResendCode, confirm delivery method →mfa-challenge
- Customer states the contact they received it on is not theirs otp-wrong-contact →escalation-fraud-review
Password Reset Initiation
CoreBanking.InitiatePasswordReset for customer.accountNumber
EmailSMSDelivery.SendResetLink to customer.registeredEmail or customer.registeredPhone
- Customer confirms new password set and login successful access-restored →resolution-access-confirmed
- Customer states link expired or not received link-expired EmailSMSDelivery.ResendResetLink →password-reset-initiation
- Customer states they are still unable to log in after reset reset-failed →escalation-account-review
Cooldown Notice
CoreBanking.GetCooldownStatus for customer.accountNumber
- Customer acknowledges and agrees to wait customer-accepts-cooldown →resolution-cooldown-advised
- Customer states they did not make those login attempts customer-denies-attempts →escalation-fraud-review
Resolution — Access Confirmed
CRM.LogInteraction tagged password-reset-successful, linked to customer.accountNumber
CoreBanking.ClearLockStatus for customer.accountNumber
Resolution — Cooldown Advised
CRM.LogInteraction tagged cooldown-in-effect, linked to customer.accountNumber
Escalation — Identity Lockout
CoreBanking.LockAccount for customer.accountNumber
CRM.CreateCase priority: high, tagged identity-verification-failed, linked to customer.accountNumber
CRM.LogInteraction tagged max-attempts-reached
Escalation — Fraud Review
CoreBanking.FreezeAccount for customer.accountNumber
FraudMonitoring.EscalateCase for customer.accountNumber, flag: suspicious-activity
CRM.CreateCase priority: high, tagged fraud-review-required, linked to customer.accountNumber
CRM.LogInteraction tagged fraud-flag-escalation
Escalation — Manual ID Verification
CRM.CreateCase priority: medium, tagged outdated-contact-info-manual-review, linked to customer.accountNumber
CRM.LogInteraction tagged contact-info-outdated-escalation
Escalation — MFA Failure
CRM.CreateCase priority: medium, tagged mfa-failure-escalation, linked to customer.accountNumber
CRM.LogInteraction tagged otp-verification-failed
Escalation — Account Review
CRM.CreateCase priority: medium, tagged account-status-restricted, linked to customer.accountNumber
CRM.LogInteraction tagged account-review-escalation

New Account Onboarding
Intent Capture
- Customer requests a personal account type (checking, savings, investment) personal-account →info-collection
- Customer requests a business or trust account business-or-trust-account →specialist-routing
- Customer is unsure or needs guidance unsure →account-type-guidance
Account Type Guidance
kb.account-types-overview — retrieve product descriptions, minimum balance requirements, and eligibility criteria
- Customer selects a personal account type personal-account →info-collection
- Customer still wants a business or trust account business-or-trust-account →specialist-routing
- Customer wants to end the conversation end-session →session-close
Info Collection
CRM.CreateDraftRecord to initialize a draft customer profile
kb.minimum-deposit-requirements — validate customer.initialDepositAmount and customer.fundingSource eligibility
- All required fields collected and deposit method is supported fields-complete →identity-verification
- Funding method is unsupported or deposit is below the minimum funding-issue →funding-issue-resolution
- Customer is unwilling to provide required information declined-to-provide →escalation-human
Funding Issue Resolution
kb.funding-methods-policy — retrieve supported funding sources and minimum initial deposit thresholds
- Customer selects a supported alternative funding method alternative-accepted →identity-verification
- Customer cannot or will not meet deposit requirements cannot-meet-requirements →session-close
Identity Verification
KYCService.SubmitVerification with customer.fullLegalName, customer.dateOfBirth, customer.govIdNumber, customer.taxId, customer.address
- Verification passes on first or second attempt kyc-pass →compliance-screening
- Verification fails — first attempt kyc-fail-first →kyc-retry
- Verification fails — second attempt or kyc.attemptCount exceeds 2 kyc-fail-final →escalation-human
KYC Retry
DocUploadPortal.RequestDocument to customer.email for alternative ID submission
- Customer submits alternative document and resubmission passes kyc-pass →compliance-screening
- Customer submits alternative document and resubmission fails kyc-fail-final →escalation-human
- Customer cannot provide alternative documentation cannot-verify →escalation-human
Compliance Screening
ComplianceScreening.RunCheck with customer.fullLegalName, customer.taxId, customer.dateOfBirth, customer.address
- Screening passes with no flags compliance-clear →account-creation
- Any KYC or AML flag is raised compliance-flagged →escalation-compliance
- Customer is identified as a Politically Exposed Person (PEP) compliance.isPEP pep-flag →escalation-compliance
Account Creation
CoreBanking.CreateAccount with customer.fullLegalName, customer.taxId, customer.address, customer.fundingSource, customer.initialDepositAmount, customer.accountType
CRM.UpdateRecord with account.id, mark status: account-created
Twilio.SendSMS to customer.phone: "Your new account has been created. Your account ID is account.id. Your login credentials will arrive by email shortly."
CoreBanking.IssueCredentials to customer.email with account.credentials and welcome packet link
- Account created and credentials delivered successfully account-ready →customer-orientation
- Account creation fails due to a system error system-error →escalation-human
Customer Orientation
kb.new-account-faq — retrieve top questions about first login, mobile app access, and deposit timelines
- Customer has additional questions more-questions →customer-orientation
- Customer is satisfied and ready to end satisfied →session-close
- Customer wants to add a beneficiary or linked account additional-setup →escalation-human
Specialist Routing
CRM.CreateLeadRecord with customer.phone, customer.email, customer.accountType, note: specialist-referral
- Details captured and specialist notified →escalation-human
Escalation to Compliance Officer
ComplianceScreening.FlagRecord with customer.fullLegalName, customer.taxId, compliance.flagCode, compliance.isPEP
CRM.EscalateRecord priority: critical, tag: compliance-review
Escalation to Human Agent
CRM.EscalateRecord priority: high, tag: agent-review
Twilio.SendSMS to customer.phone: "Your account application requires attention from one of our specialists. A team member will reach out to you shortly."
Session Close
CRM.CloseSession with session outcome logged

Fraud Alert Follow-up
Alert Notification
FraudDetectionPlatform.FetchFlaggedTransaction to retrieve transaction.id, transaction.amount, transaction.merchant, transaction.datetime, and transaction.riskScore.
- System lookup succeeds and transaction details are retrieved →identity-verification
- System lookup fails or returns no transaction record system_error →system-lookup-failure
Identity Verification
IdentityVerification.VerifyCustomer using customer.name, customer.dob, and customer.pin or customer.securityAnswer.
- Identity verified successfully confirmed →transaction-confirmation
- Identity cannot be verified after two attempts failed →verification-failure
- Customer is uncertain or provides partial information partial →verification-retry
Verification Retry
IdentityVerification.VerifyCustomer retry with alternate credentials.
- Identity verified on retry confirmed →transaction-confirmation
- Identity still cannot be verified failed →verification-failure
Verification Failure
CRM.LogInteraction tagged verification-failure, linked to account.id, noting no transaction details were disclosed.
Transaction Confirmation
- Customer confirms the transaction is theirs confirmed →resolution-clear
- Customer says the transaction is not theirs denied →disputed-transaction
- Customer is unsure or asks for more time uncertain →transaction-detail-review
Transaction Detail Review
kb.fraud-dispute-policy — review dispute eligibility window for transaction.datetime.
- Customer recognizes the transaction after further detail confirmed →resolution-clear
- Customer confirms the transaction is not theirs denied →disputed-transaction
- Customer remains unsure and cannot confirm or deny uncertain CRM.LogInteraction tagged pending-customer-response →escalation-human
Disputed Transaction
CardManagement.BlockCard for card.last4.
CRM.UpdateCase flagged as fraud-reported, linked to account.id and transaction.id.
- Customer confirms only the single flagged transaction is unrecognized single-transaction →open-dispute
- Customer flags additional unrecognized transactions multiple-transactions →expanded-fraud-event
- Customer is distressed, upset, or requests immediate escalation distressed →escalation-human
Expanded Fraud Event
CoreBanking.FreezeAccount for account.id.
FraudDetectionPlatform.FlagAccountCompromised linked to account.id.
CRM.CreateCase priority: critical, tagged expanded-fraud-account-review, linked to account.id.
DisputeManagement.OpenExpandedReview for account.id, noting all flagged transactions.
- Case created and account frozen →escalation-human
Open Dispute
DisputeManagement.OpenDispute for transaction.id, transaction.amount, transaction.merchant, linked to account.id. Capture dispute.caseId.
→replacement-card
Replacement Card
CardManagement.IssueReplacementCard for card.last4, ship to replacement.deliveryAddress.
- Approved approved →dispute-wrap-up
- Rejected rejected →escalation-human
- No response within 30 min →escalation-human
Dispute Wrap-up
CRM.UpdateCase with dispute.caseId, card block status, and replacement card shipping confirmation.
CoreBanking.ClearFraudAlert on transaction.id.
- Customer has further questions or concerns →escalation-human
- Customer is satisfied and call can close →resolution-clear
System Lookup Failure
CRM.LogInteraction tagged system-error-transaction-lookup, linked to account.id, noting transaction details could not be retrieved.
FraudDetectionPlatform.FlagForManualReview linked to account.id, tagged system-lookup-failure.
Escalation to Human Agent
CRM.CreateCase priority: high, tagged fraud-escalation, linked to account.id and transaction.id.
Slack.Notify to #fraud-ops with case summary including account.id, transaction.id, transaction.amount, card.last4, and reason for escalation.
Resolution — Clear
CoreBanking.ClearFraudAlert on transaction.id.
CRM.LogInteraction tagged alert-cleared-customer-confirmed, linked to account.id.

Card Lost / Stolen Replacement
Intake
- Customer confirms card is lost confirmed →identity-verification
- Customer mentions unauthorized charges or suspected fraud fraud_concern →identity-verification-fraud
- Customer is unresponsive or unclear →identity-verification
Identity Verification
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes on first or second attempt verified →card-block
- Verification fails after multiple attempts failed →verification-failure
Identity Verification — Fraud Path
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes verified →card-block-fraud
- Verification fails after multiple attempts failed →verification-failure
Card Block
CardManagement.BlockCard for card.id
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked
Salesforce.CreateCase type: card-lost-stolen, linked to account.id
- Customer provides last seen details →address-confirmation
- Customer cannot recall details →address-confirmation
Card Block — Fraud Path
CardManagement.BlockCard for card.id
FraudDetection.FlagAccount on account.id tagged: unauthorized-transactions
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked-fraud
Salesforce.CreateCase type: fraud-card-lost-stolen, priority: high, linked to account.id
- Proceed to address confirmation for replacement →address-confirmation-fraud
Address Confirmation
- Customer confirms existing address confirmed →replacement-issuance
- Customer requests a new or different address new_address →address-review
Address Confirmation — Fraud Path
- Customer confirms existing address confirmed →replacement-issuance-fraud
- Customer requests a new or different address new_address →address-review
Address Review
Salesforce.UpdateCase add: unrecognized-replacement-address, replacement.address, flagged-for-review
ShippingFulfillment.HoldOrder pending address verification on account.id
- Address approved approved →replacement-issuance
- Address flagged or rejected rejected →escalation-human
Replacement Issuance
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited
- Customer accepts standard delivery standard →replacement-standard
- Expedited requested but not eligible expedited →replacement-standard
Replacement Issuance — Fraud Path
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited-fraud
- Customer accepts standard delivery standard →replacement-standard-fraud
Replacement — Standard
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines digital card →resolution
Replacement — Expedited
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines →resolution
Replacement — Standard (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
→escalation-fraud
Replacement — Expedited (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
→escalation-fraud
Digital Card Offer
- Digital card provisioned successfully provisioned →resolution
- Customer not eligible or provisioning fails ineligible →resolution
Verification Failure
Salesforce.CreateCase type: identity-verification-failure, priority: high, linked to account.id
Salesforce.LogNote add: customer-directed-to-branch, verification-failed
- Customer wants branch info →escalation-human
- Customer ends interaction →resolution-no-action
Escalation — Fraud Team
FraudDetection.OpenDisputeCase linked to account.id, flagged: unauthorized-transactions, transaction.unauthorized_flag
Salesforce.UpdateCase priority: high, tagged: fraud-escalation, dispute-opened
Slack.Notify to #fraud-ops with case summary, account.id, card.last4
Escalation — Human Agent
Salesforce.UpdateCase priority: high, tagged: manual-review-required
Slack.Notify to #card-services-review with case summary, account.id, customer.name
Resolution
Salesforce.CloseCase resolution: card-replaced, linked to account.id
Resolution — No Action Taken
Salesforce.CloseCase resolution: blocked-no-replacement-issued, linked to account.id

Balance / Transaction Inquiry
Intake
- Customer asks about current balance balance-inquiry →identity-verification
- Customer asks about a specific transaction or unrecognized charge transaction-inquiry →identity-verification
- Customer immediately alleges fraud or unauthorized access fraud-allegation →escalation-fraud
- Intent unclear — ask a clarifying question, then →identity-verification
Identity Verification
OTPAuth.SendOTP to customer.phone
- Customer provides correct OTP verified IdentityVerification.Confirm →account-lookup
- Customer cannot receive OTP, offer security question fallback otp-failed →security-question-fallback
- Customer has already failed one attempt — verification.attemptCount equals 1 →second-attempt-warning
Second Attempt Warning
- Customer provides correct OTP on second try verified IdentityVerification.Confirm →account-lookup
- Customer fails again unverified →escalation-identity-failure
Security Question Fallback
IdentityVerification.FetchSecurityQuestion for customer.accountNumber
- Customer answers correctly verified IdentityVerification.Confirm →account-lookup
- Customer answers incorrectly unverified →escalation-identity-failure
Account Lookup
CoreBanking.GetAccountSummary for customer.accountNumber including account.status, account.balance, account.availableBalance, and customer.accountType
- Account returned successfully and status is active account-found →inquiry-routing
- Account has a hold, freeze, or legal flag on it account-flagged →escalation-account-flag
- System returns an error or times out lookup-error →system-error
Inquiry Routing
- Customer needs current balance confirmed balance-inquiry →balance-delivery
- Customer needs a specific transaction explained transaction-inquiry →transaction-lookup
- Customer now mentions an unexpected fee fee-concern →fee-review
Balance Delivery
CoreBanking.GetAccountSummary to retrieve account.balance and account.availableBalance for customer.accountType
- Customer is satisfied and has no further questions satisfied →resolution
- Customer wants to see recent transactions as well wants-transactions →transaction-lookup
- Customer disputes a charge or says a transaction looks wrong transaction-dispute →transaction-lookup
- Customer raises concern about an unexpected fee fee-concern →fee-review
Transaction Lookup
CoreBanking.GetTransactionHistory for customer.accountNumber over inquiry.dateRange
- Transactions returned successfully transactions-found →transaction-detail
- No transactions found in the requested range no-results →no-transaction-found
- System returns an error lookup-error →system-error
Transaction Detail
CRM.LogInteraction tagged balance-transaction-inquiry, linked to customer.accountNumber and transaction.id
- Customer recognizes the transaction and is satisfied satisfied →resolution
- Customer does not recognize the transaction and believes it is fraudulent fraud-allegation →escalation-fraud
- Customer recognizes the merchant but wants to dispute the amount amount-dispute →escalation-fraud
- Customer has a question about a fee within the transaction fee-concern →fee-review
No Transaction Found
- Customer provides more details — retry lookup →transaction-lookup
- Customer still cannot locate the transaction and suspects fraud fraud-allegation →escalation-fraud
- Customer is satisfied and wants to close satisfied →resolution
Fee Review
CoreBanking.GetFeeDetail for fee.type and fee.amount on customer.accountNumber
kb.fee-waiver-policy — check one-time waiver eligibility criteria for customer.accountType and account standing
- Customer is eligible and agent applies waiver waiver-applied CoreBanking.ApplyFeeWaiver →fee-waiver-confirmation
- Customer is not eligible for a waiver waiver-ineligible →fee-waiver-declined
- Customer is upset and escalation is warranted needs-escalation →escalation-human
Fee Waiver Confirmation
CRM.LogInteraction tagged fee-waiver-applied, linked to customer.accountNumber and fee.type
- Customer is satisfied satisfied →resolution
- Customer has an additional question →inquiry-routing
Fee Waiver Declined
- Customer accepts the outcome satisfied →resolution
- Customer wants to speak to a specialist or is upset escalation-requested →escalation-human
System Error
CRM.LogIncident tagged system-error, linked to customer.accountNumber and customer.phone
CRM.ScheduleCallback for customer.phone at next available slot
- Customer agrees to callback and conversation ends satisfied →resolution
- Customer wants to try again immediately →account-lookup
- Customer is very frustrated and demands to speak with someone now escalation-requested →escalation-human
Escalation — Fraud or Dispute
FraudDetection.FlagAccount for customer.accountNumber tagged suspected-fraud, linked to transaction.id
CRM.CreateCase priority: high, tagged fraud-dispute, linked to customer.accountNumber and transaction.id
→fraud-alert-follow-up
Escalation — Identity Verification Failed
CRM.LogIncident tagged verification-failure, linked to customer.phone
CRM.CreateCase priority: high, tagged identity-lockout
Escalation — Account Flag
CRM.CreateCase priority: high, tagged account-flag-review, linked to customer.accountNumber
CRM.LogInteraction tagged account-flag-escalation
→escalation-human
Escalation — Human Specialist
CRM.CreateCase priority: high, tagged specialist-handoff, linked to customer.accountNumber
CRM.LogInteraction tagged escalation-human, with case summary
Resolution
CRM.LogInteraction tagged inquiry-resolved, linked to customer.accountNumber
























































Password / Login Recovery
Intake — Login Issue
- Customer states forgotten password or cannot log in forgotten-password →identity-verification
- Customer states account appears locked or suspended account-locked →account-status-check
- Customer states they did not initiate any lockout or suspects unauthorised access unauthorised-access →escalation-fraud-review
- Issue is unclear or customer is unsure unclear CRM.LogInteraction, ask one clarifying question →identity-verification
Identity Verification
CRM.PullCustomerRecord using customer.registeredEmail or customer.accountNumber
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
- Identity confirmed on first or second attempt identity-confirmed →account-status-check
- Identity fails first attempt identity-failed-once CRM.IncrementAttemptCount, prompt retry →identity-verification-retry
- Account already shows two or more failed attempts max-attempts-reached →escalation-identity-lockout
Identity Verification — Retry
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
CRM.IncrementAttemptCount
- Identity confirmed on retry identity-confirmed →account-status-check
- Identity fails again on retry identity-failed-twice →escalation-identity-lockout
Account Status Check
CoreBanking.GetAccountStatus for customer.accountNumber
FraudMonitoring.CheckFraudFlag for customer.accountNumber
- Account is clear with no flags or locks account-clear →contact-info-check
- Account is locked due to repeated failed login attempts account-locked-cooldown →cooldown-notice
- Account is flagged for suspicious or fraudulent activity fraud-flag-active →escalation-fraud-review
- Account status is suspended or otherwise restricted account-suspended →escalation-account-review
Contact Info Check
CRM.VerifyContactInfo for customer.registeredEmail and customer.registeredPhone
- Registered email or phone confirmed current by customer contact-confirmed →mfa-challenge
- Customer states contact info is outdated or no longer accessible contact-outdated →escalation-manual-id-verification
MFA Challenge
MFAOTP.SendCode to customer.registeredEmail or customer.registeredPhone based on reset.linkDeliveryMethod
- Customer provides correct OTP code otp-valid →password-reset-initiation
- Customer provides incorrect code otp-invalid →escalation-mfa-failure
- Customer states they did not receive the code otp-not-received MFAOTP.ResendCode, confirm delivery method →mfa-challenge
- Customer states the contact they received it on is not theirs otp-wrong-contact →escalation-fraud-review
Password Reset Initiation
CoreBanking.InitiatePasswordReset for customer.accountNumber
EmailSMSDelivery.SendResetLink to customer.registeredEmail or customer.registeredPhone
- Customer confirms new password set and login successful access-restored →resolution-access-confirmed
- Customer states link expired or not received link-expired EmailSMSDelivery.ResendResetLink →password-reset-initiation
- Customer states they are still unable to log in after reset reset-failed →escalation-account-review
Cooldown Notice
CoreBanking.GetCooldownStatus for customer.accountNumber
- Customer acknowledges and agrees to wait customer-accepts-cooldown →resolution-cooldown-advised
- Customer states they did not make those login attempts customer-denies-attempts →escalation-fraud-review
Resolution — Access Confirmed
CRM.LogInteraction tagged password-reset-successful, linked to customer.accountNumber
CoreBanking.ClearLockStatus for customer.accountNumber
Resolution — Cooldown Advised
CRM.LogInteraction tagged cooldown-in-effect, linked to customer.accountNumber
Escalation — Identity Lockout
CoreBanking.LockAccount for customer.accountNumber
CRM.CreateCase priority: high, tagged identity-verification-failed, linked to customer.accountNumber
CRM.LogInteraction tagged max-attempts-reached
Escalation — Fraud Review
CoreBanking.FreezeAccount for customer.accountNumber
FraudMonitoring.EscalateCase for customer.accountNumber, flag: suspicious-activity
CRM.CreateCase priority: high, tagged fraud-review-required, linked to customer.accountNumber
CRM.LogInteraction tagged fraud-flag-escalation
Escalation — Manual ID Verification
CRM.CreateCase priority: medium, tagged outdated-contact-info-manual-review, linked to customer.accountNumber
CRM.LogInteraction tagged contact-info-outdated-escalation
Escalation — MFA Failure
CRM.CreateCase priority: medium, tagged mfa-failure-escalation, linked to customer.accountNumber
CRM.LogInteraction tagged otp-verification-failed
Escalation — Account Review
CRM.CreateCase priority: medium, tagged account-status-restricted, linked to customer.accountNumber
CRM.LogInteraction tagged account-review-escalation

Card Lost / Stolen Replacement
Intake
- Customer confirms card is lost confirmed →identity-verification
- Customer mentions unauthorized charges or suspected fraud fraud_concern →identity-verification-fraud
- Customer is unresponsive or unclear →identity-verification
Identity Verification
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes on first or second attempt verified →card-block
- Verification fails after multiple attempts failed →verification-failure
Identity Verification — Fraud Path
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes verified →card-block-fraud
- Verification fails after multiple attempts failed →verification-failure
Card Block
CardManagement.BlockCard for card.id
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked
Salesforce.CreateCase type: card-lost-stolen, linked to account.id
- Customer provides last seen details →address-confirmation
- Customer cannot recall details →address-confirmation
Card Block — Fraud Path
CardManagement.BlockCard for card.id
FraudDetection.FlagAccount on account.id tagged: unauthorized-transactions
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked-fraud
Salesforce.CreateCase type: fraud-card-lost-stolen, priority: high, linked to account.id
- Proceed to address confirmation for replacement →address-confirmation-fraud
Address Confirmation
- Customer confirms existing address confirmed →replacement-issuance
- Customer requests a new or different address new_address →address-review
Address Confirmation — Fraud Path
- Customer confirms existing address confirmed →replacement-issuance-fraud
- Customer requests a new or different address new_address →address-review
Address Review
Salesforce.UpdateCase add: unrecognized-replacement-address, replacement.address, flagged-for-review
ShippingFulfillment.HoldOrder pending address verification on account.id
- Address approved approved →replacement-issuance
- Address flagged or rejected rejected →escalation-human
Replacement Issuance
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited
- Customer accepts standard delivery standard →replacement-standard
- Expedited requested but not eligible expedited →replacement-standard
Replacement Issuance — Fraud Path
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited-fraud
- Customer accepts standard delivery standard →replacement-standard-fraud
Replacement — Standard
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines digital card →resolution
Replacement — Expedited
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines →resolution
Replacement — Standard (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
→escalation-fraud
Replacement — Expedited (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
→escalation-fraud
Digital Card Offer
- Digital card provisioned successfully provisioned →resolution
- Customer not eligible or provisioning fails ineligible →resolution
Verification Failure
Salesforce.CreateCase type: identity-verification-failure, priority: high, linked to account.id
Salesforce.LogNote add: customer-directed-to-branch, verification-failed
- Customer wants branch info →escalation-human
- Customer ends interaction →resolution-no-action
Escalation — Fraud Team
FraudDetection.OpenDisputeCase linked to account.id, flagged: unauthorized-transactions, transaction.unauthorized_flag
Salesforce.UpdateCase priority: high, tagged: fraud-escalation, dispute-opened
Slack.Notify to #fraud-ops with case summary, account.id, card.last4
Escalation — Human Agent
Salesforce.UpdateCase priority: high, tagged: manual-review-required
Slack.Notify to #card-services-review with case summary, account.id, customer.name
Resolution
Salesforce.CloseCase resolution: card-replaced, linked to account.id
Resolution — No Action Taken
Salesforce.CloseCase resolution: blocked-no-replacement-issued, linked to account.id

New Account Onboarding
Intent Capture
- Customer requests a personal account type (checking, savings, investment) personal-account →info-collection
- Customer requests a business or trust account business-or-trust-account →specialist-routing
- Customer is unsure or needs guidance unsure →account-type-guidance
Account Type Guidance
kb.account-types-overview — retrieve product descriptions, minimum balance requirements, and eligibility criteria
- Customer selects a personal account type personal-account →info-collection
- Customer still wants a business or trust account business-or-trust-account →specialist-routing
- Customer wants to end the conversation end-session →session-close
Info Collection
CRM.CreateDraftRecord to initialize a draft customer profile
kb.minimum-deposit-requirements — validate customer.initialDepositAmount and customer.fundingSource eligibility
- All required fields collected and deposit method is supported fields-complete →identity-verification
- Funding method is unsupported or deposit is below the minimum funding-issue →funding-issue-resolution
- Customer is unwilling to provide required information declined-to-provide →escalation-human
Funding Issue Resolution
kb.funding-methods-policy — retrieve supported funding sources and minimum initial deposit thresholds
- Customer selects a supported alternative funding method alternative-accepted →identity-verification
- Customer cannot or will not meet deposit requirements cannot-meet-requirements →session-close
Identity Verification
KYCService.SubmitVerification with customer.fullLegalName, customer.dateOfBirth, customer.govIdNumber, customer.taxId, customer.address
- Verification passes on first or second attempt kyc-pass →compliance-screening
- Verification fails — first attempt kyc-fail-first →kyc-retry
- Verification fails — second attempt or kyc.attemptCount exceeds 2 kyc-fail-final →escalation-human
KYC Retry
DocUploadPortal.RequestDocument to customer.email for alternative ID submission
- Customer submits alternative document and resubmission passes kyc-pass →compliance-screening
- Customer submits alternative document and resubmission fails kyc-fail-final →escalation-human
- Customer cannot provide alternative documentation cannot-verify →escalation-human
Compliance Screening
ComplianceScreening.RunCheck with customer.fullLegalName, customer.taxId, customer.dateOfBirth, customer.address
- Screening passes with no flags compliance-clear →account-creation
- Any KYC or AML flag is raised compliance-flagged →escalation-compliance
- Customer is identified as a Politically Exposed Person (PEP) compliance.isPEP pep-flag →escalation-compliance
Account Creation
CoreBanking.CreateAccount with customer.fullLegalName, customer.taxId, customer.address, customer.fundingSource, customer.initialDepositAmount, customer.accountType
CRM.UpdateRecord with account.id, mark status: account-created
Twilio.SendSMS to customer.phone: "Your new account has been created. Your account ID is account.id. Your login credentials will arrive by email shortly."
CoreBanking.IssueCredentials to customer.email with account.credentials and welcome packet link
- Account created and credentials delivered successfully account-ready →customer-orientation
- Account creation fails due to a system error system-error →escalation-human
Customer Orientation
kb.new-account-faq — retrieve top questions about first login, mobile app access, and deposit timelines
- Customer has additional questions more-questions →customer-orientation
- Customer is satisfied and ready to end satisfied →session-close
- Customer wants to add a beneficiary or linked account additional-setup →escalation-human
Specialist Routing
CRM.CreateLeadRecord with customer.phone, customer.email, customer.accountType, note: specialist-referral
- Details captured and specialist notified →escalation-human
Escalation to Compliance Officer
ComplianceScreening.FlagRecord with customer.fullLegalName, customer.taxId, compliance.flagCode, compliance.isPEP
CRM.EscalateRecord priority: critical, tag: compliance-review
Escalation to Human Agent
CRM.EscalateRecord priority: high, tag: agent-review
Twilio.SendSMS to customer.phone: "Your account application requires attention from one of our specialists. A team member will reach out to you shortly."
Session Close
CRM.CloseSession with session outcome logged

Balance / Transaction Inquiry
Intake
- Customer asks about current balance balance-inquiry →identity-verification
- Customer asks about a specific transaction or unrecognized charge transaction-inquiry →identity-verification
- Customer immediately alleges fraud or unauthorized access fraud-allegation →escalation-fraud
- Intent unclear — ask a clarifying question, then →identity-verification
Identity Verification
OTPAuth.SendOTP to customer.phone
- Customer provides correct OTP verified IdentityVerification.Confirm →account-lookup
- Customer cannot receive OTP, offer security question fallback otp-failed →security-question-fallback
- Customer has already failed one attempt — verification.attemptCount equals 1 →second-attempt-warning
Second Attempt Warning
- Customer provides correct OTP on second try verified IdentityVerification.Confirm →account-lookup
- Customer fails again unverified →escalation-identity-failure
Security Question Fallback
IdentityVerification.FetchSecurityQuestion for customer.accountNumber
- Customer answers correctly verified IdentityVerification.Confirm →account-lookup
- Customer answers incorrectly unverified →escalation-identity-failure
Account Lookup
CoreBanking.GetAccountSummary for customer.accountNumber including account.status, account.balance, account.availableBalance, and customer.accountType
- Account returned successfully and status is active account-found →inquiry-routing
- Account has a hold, freeze, or legal flag on it account-flagged →escalation-account-flag
- System returns an error or times out lookup-error →system-error
Inquiry Routing
- Customer needs current balance confirmed balance-inquiry →balance-delivery
- Customer needs a specific transaction explained transaction-inquiry →transaction-lookup
- Customer now mentions an unexpected fee fee-concern →fee-review
Balance Delivery
CoreBanking.GetAccountSummary to retrieve account.balance and account.availableBalance for customer.accountType
- Customer is satisfied and has no further questions satisfied →resolution
- Customer wants to see recent transactions as well wants-transactions →transaction-lookup
- Customer disputes a charge or says a transaction looks wrong transaction-dispute →transaction-lookup
- Customer raises concern about an unexpected fee fee-concern →fee-review
Transaction Lookup
CoreBanking.GetTransactionHistory for customer.accountNumber over inquiry.dateRange
- Transactions returned successfully transactions-found →transaction-detail
- No transactions found in the requested range no-results →no-transaction-found
- System returns an error lookup-error →system-error
Transaction Detail
CRM.LogInteraction tagged balance-transaction-inquiry, linked to customer.accountNumber and transaction.id
- Customer recognizes the transaction and is satisfied satisfied →resolution
- Customer does not recognize the transaction and believes it is fraudulent fraud-allegation →escalation-fraud
- Customer recognizes the merchant but wants to dispute the amount amount-dispute →escalation-fraud
- Customer has a question about a fee within the transaction fee-concern →fee-review
No Transaction Found
- Customer provides more details — retry lookup →transaction-lookup
- Customer still cannot locate the transaction and suspects fraud fraud-allegation →escalation-fraud
- Customer is satisfied and wants to close satisfied →resolution
Fee Review
CoreBanking.GetFeeDetail for fee.type and fee.amount on customer.accountNumber
kb.fee-waiver-policy — check one-time waiver eligibility criteria for customer.accountType and account standing
- Customer is eligible and agent applies waiver waiver-applied CoreBanking.ApplyFeeWaiver →fee-waiver-confirmation
- Customer is not eligible for a waiver waiver-ineligible →fee-waiver-declined
- Customer is upset and escalation is warranted needs-escalation →escalation-human
Fee Waiver Confirmation
CRM.LogInteraction tagged fee-waiver-applied, linked to customer.accountNumber and fee.type
- Customer is satisfied satisfied →resolution
- Customer has an additional question →inquiry-routing
Fee Waiver Declined
- Customer accepts the outcome satisfied →resolution
- Customer wants to speak to a specialist or is upset escalation-requested →escalation-human
System Error
CRM.LogIncident tagged system-error, linked to customer.accountNumber and customer.phone
CRM.ScheduleCallback for customer.phone at next available slot
- Customer agrees to callback and conversation ends satisfied →resolution
- Customer wants to try again immediately →account-lookup
- Customer is very frustrated and demands to speak with someone now escalation-requested →escalation-human
Escalation — Fraud or Dispute
FraudDetection.FlagAccount for customer.accountNumber tagged suspected-fraud, linked to transaction.id
CRM.CreateCase priority: high, tagged fraud-dispute, linked to customer.accountNumber and transaction.id
→fraud-alert-follow-up
Escalation — Identity Verification Failed
CRM.LogIncident tagged verification-failure, linked to customer.phone
CRM.CreateCase priority: high, tagged identity-lockout
Escalation — Account Flag
CRM.CreateCase priority: high, tagged account-flag-review, linked to customer.accountNumber
CRM.LogInteraction tagged account-flag-escalation
→escalation-human
Escalation — Human Specialist
CRM.CreateCase priority: high, tagged specialist-handoff, linked to customer.accountNumber
CRM.LogInteraction tagged escalation-human, with case summary
Resolution
CRM.LogInteraction tagged inquiry-resolved, linked to customer.accountNumber

Fraud Alert Follow-up
Alert Notification
FraudDetectionPlatform.FetchFlaggedTransaction to retrieve transaction.id, transaction.amount, transaction.merchant, transaction.datetime, and transaction.riskScore.
- System lookup succeeds and transaction details are retrieved →identity-verification
- System lookup fails or returns no transaction record system_error →system-lookup-failure
Identity Verification
IdentityVerification.VerifyCustomer using customer.name, customer.dob, and customer.pin or customer.securityAnswer.
- Identity verified successfully confirmed →transaction-confirmation
- Identity cannot be verified after two attempts failed →verification-failure
- Customer is uncertain or provides partial information partial →verification-retry
Verification Retry
IdentityVerification.VerifyCustomer retry with alternate credentials.
- Identity verified on retry confirmed →transaction-confirmation
- Identity still cannot be verified failed →verification-failure
Verification Failure
CRM.LogInteraction tagged verification-failure, linked to account.id, noting no transaction details were disclosed.
Transaction Confirmation
- Customer confirms the transaction is theirs confirmed →resolution-clear
- Customer says the transaction is not theirs denied →disputed-transaction
- Customer is unsure or asks for more time uncertain →transaction-detail-review
Transaction Detail Review
kb.fraud-dispute-policy — review dispute eligibility window for transaction.datetime.
- Customer recognizes the transaction after further detail confirmed →resolution-clear
- Customer confirms the transaction is not theirs denied →disputed-transaction
- Customer remains unsure and cannot confirm or deny uncertain CRM.LogInteraction tagged pending-customer-response →escalation-human
Disputed Transaction
CardManagement.BlockCard for card.last4.
CRM.UpdateCase flagged as fraud-reported, linked to account.id and transaction.id.
- Customer confirms only the single flagged transaction is unrecognized single-transaction →open-dispute
- Customer flags additional unrecognized transactions multiple-transactions →expanded-fraud-event
- Customer is distressed, upset, or requests immediate escalation distressed →escalation-human
Expanded Fraud Event
CoreBanking.FreezeAccount for account.id.
FraudDetectionPlatform.FlagAccountCompromised linked to account.id.
CRM.CreateCase priority: critical, tagged expanded-fraud-account-review, linked to account.id.
DisputeManagement.OpenExpandedReview for account.id, noting all flagged transactions.
- Case created and account frozen →escalation-human
Open Dispute
DisputeManagement.OpenDispute for transaction.id, transaction.amount, transaction.merchant, linked to account.id. Capture dispute.caseId.
→replacement-card
Replacement Card
CardManagement.IssueReplacementCard for card.last4, ship to replacement.deliveryAddress.
- Approved approved →dispute-wrap-up
- Rejected rejected →escalation-human
- No response within 30 min →escalation-human
Dispute Wrap-up
CRM.UpdateCase with dispute.caseId, card block status, and replacement card shipping confirmation.
CoreBanking.ClearFraudAlert on transaction.id.
- Customer has further questions or concerns →escalation-human
- Customer is satisfied and call can close →resolution-clear
System Lookup Failure
CRM.LogInteraction tagged system-error-transaction-lookup, linked to account.id, noting transaction details could not be retrieved.
FraudDetectionPlatform.FlagForManualReview linked to account.id, tagged system-lookup-failure.
Escalation to Human Agent
CRM.CreateCase priority: high, tagged fraud-escalation, linked to account.id and transaction.id.
Slack.Notify to #fraud-ops with case summary including account.id, transaction.id, transaction.amount, card.last4, and reason for escalation.
Resolution — Clear
CoreBanking.ClearFraudAlert on transaction.id.
CRM.LogInteraction tagged alert-cleared-customer-confirmed, linked to account.id.


Password / Login Recovery
Intake — Login Issue
- Customer states forgotten password or cannot log in forgotten-password →identity-verification
- Customer states account appears locked or suspended account-locked →account-status-check
- Customer states they did not initiate any lockout or suspects unauthorised access unauthorised-access →escalation-fraud-review
- Issue is unclear or customer is unsure unclear CRM.LogInteraction, ask one clarifying question →identity-verification
Identity Verification
CRM.PullCustomerRecord using customer.registeredEmail or customer.accountNumber
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
- Identity confirmed on first or second attempt identity-confirmed →account-status-check
- Identity fails first attempt identity-failed-once CRM.IncrementAttemptCount, prompt retry →identity-verification-retry
- Account already shows two or more failed attempts max-attempts-reached →escalation-identity-lockout
Identity Verification — Retry
IdentityVerification.InitiateCheck for customer.fullName, customer.dateOfBirth, customer.lastFourSSN
CRM.IncrementAttemptCount
- Identity confirmed on retry identity-confirmed →account-status-check
- Identity fails again on retry identity-failed-twice →escalation-identity-lockout
Account Status Check
CoreBanking.GetAccountStatus for customer.accountNumber
FraudMonitoring.CheckFraudFlag for customer.accountNumber
- Account is clear with no flags or locks account-clear →contact-info-check
- Account is locked due to repeated failed login attempts account-locked-cooldown →cooldown-notice
- Account is flagged for suspicious or fraudulent activity fraud-flag-active →escalation-fraud-review
- Account status is suspended or otherwise restricted account-suspended →escalation-account-review
Contact Info Check
CRM.VerifyContactInfo for customer.registeredEmail and customer.registeredPhone
- Registered email or phone confirmed current by customer contact-confirmed →mfa-challenge
- Customer states contact info is outdated or no longer accessible contact-outdated →escalation-manual-id-verification
MFA Challenge
MFAOTP.SendCode to customer.registeredEmail or customer.registeredPhone based on reset.linkDeliveryMethod
- Customer provides correct OTP code otp-valid →password-reset-initiation
- Customer provides incorrect code otp-invalid →escalation-mfa-failure
- Customer states they did not receive the code otp-not-received MFAOTP.ResendCode, confirm delivery method →mfa-challenge
- Customer states the contact they received it on is not theirs otp-wrong-contact →escalation-fraud-review
Password Reset Initiation
CoreBanking.InitiatePasswordReset for customer.accountNumber
EmailSMSDelivery.SendResetLink to customer.registeredEmail or customer.registeredPhone
- Customer confirms new password set and login successful access-restored →resolution-access-confirmed
- Customer states link expired or not received link-expired EmailSMSDelivery.ResendResetLink →password-reset-initiation
- Customer states they are still unable to log in after reset reset-failed →escalation-account-review
Cooldown Notice
CoreBanking.GetCooldownStatus for customer.accountNumber
- Customer acknowledges and agrees to wait customer-accepts-cooldown →resolution-cooldown-advised
- Customer states they did not make those login attempts customer-denies-attempts →escalation-fraud-review
Resolution — Access Confirmed
CRM.LogInteraction tagged password-reset-successful, linked to customer.accountNumber
CoreBanking.ClearLockStatus for customer.accountNumber
Resolution — Cooldown Advised
CRM.LogInteraction tagged cooldown-in-effect, linked to customer.accountNumber
Escalation — Identity Lockout
CoreBanking.LockAccount for customer.accountNumber
CRM.CreateCase priority: high, tagged identity-verification-failed, linked to customer.accountNumber
CRM.LogInteraction tagged max-attempts-reached
Escalation — Fraud Review
CoreBanking.FreezeAccount for customer.accountNumber
FraudMonitoring.EscalateCase for customer.accountNumber, flag: suspicious-activity
CRM.CreateCase priority: high, tagged fraud-review-required, linked to customer.accountNumber
CRM.LogInteraction tagged fraud-flag-escalation
Escalation — Manual ID Verification
CRM.CreateCase priority: medium, tagged outdated-contact-info-manual-review, linked to customer.accountNumber
CRM.LogInteraction tagged contact-info-outdated-escalation
Escalation — MFA Failure
CRM.CreateCase priority: medium, tagged mfa-failure-escalation, linked to customer.accountNumber
CRM.LogInteraction tagged otp-verification-failed
Escalation — Account Review
CRM.CreateCase priority: medium, tagged account-status-restricted, linked to customer.accountNumber
CRM.LogInteraction tagged account-review-escalation

Fraud Alert Follow-up
Alert Notification
FraudDetectionPlatform.FetchFlaggedTransaction to retrieve transaction.id, transaction.amount, transaction.merchant, transaction.datetime, and transaction.riskScore.
- System lookup succeeds and transaction details are retrieved →identity-verification
- System lookup fails or returns no transaction record system_error →system-lookup-failure
Identity Verification
IdentityVerification.VerifyCustomer using customer.name, customer.dob, and customer.pin or customer.securityAnswer.
- Identity verified successfully confirmed →transaction-confirmation
- Identity cannot be verified after two attempts failed →verification-failure
- Customer is uncertain or provides partial information partial →verification-retry
Verification Retry
IdentityVerification.VerifyCustomer retry with alternate credentials.
- Identity verified on retry confirmed →transaction-confirmation
- Identity still cannot be verified failed →verification-failure
Verification Failure
CRM.LogInteraction tagged verification-failure, linked to account.id, noting no transaction details were disclosed.
Transaction Confirmation
- Customer confirms the transaction is theirs confirmed →resolution-clear
- Customer says the transaction is not theirs denied →disputed-transaction
- Customer is unsure or asks for more time uncertain →transaction-detail-review
Transaction Detail Review
kb.fraud-dispute-policy — review dispute eligibility window for transaction.datetime.
- Customer recognizes the transaction after further detail confirmed →resolution-clear
- Customer confirms the transaction is not theirs denied →disputed-transaction
- Customer remains unsure and cannot confirm or deny uncertain CRM.LogInteraction tagged pending-customer-response →escalation-human
Disputed Transaction
CardManagement.BlockCard for card.last4.
CRM.UpdateCase flagged as fraud-reported, linked to account.id and transaction.id.
- Customer confirms only the single flagged transaction is unrecognized single-transaction →open-dispute
- Customer flags additional unrecognized transactions multiple-transactions →expanded-fraud-event
- Customer is distressed, upset, or requests immediate escalation distressed →escalation-human
Expanded Fraud Event
CoreBanking.FreezeAccount for account.id.
FraudDetectionPlatform.FlagAccountCompromised linked to account.id.
CRM.CreateCase priority: critical, tagged expanded-fraud-account-review, linked to account.id.
DisputeManagement.OpenExpandedReview for account.id, noting all flagged transactions.
- Case created and account frozen →escalation-human
Open Dispute
DisputeManagement.OpenDispute for transaction.id, transaction.amount, transaction.merchant, linked to account.id. Capture dispute.caseId.
→replacement-card
Replacement Card
CardManagement.IssueReplacementCard for card.last4, ship to replacement.deliveryAddress.
- Approved approved →dispute-wrap-up
- Rejected rejected →escalation-human
- No response within 30 min →escalation-human
Dispute Wrap-up
CRM.UpdateCase with dispute.caseId, card block status, and replacement card shipping confirmation.
CoreBanking.ClearFraudAlert on transaction.id.
- Customer has further questions or concerns →escalation-human
- Customer is satisfied and call can close →resolution-clear
System Lookup Failure
CRM.LogInteraction tagged system-error-transaction-lookup, linked to account.id, noting transaction details could not be retrieved.
FraudDetectionPlatform.FlagForManualReview linked to account.id, tagged system-lookup-failure.
Escalation to Human Agent
CRM.CreateCase priority: high, tagged fraud-escalation, linked to account.id and transaction.id.
Slack.Notify to #fraud-ops with case summary including account.id, transaction.id, transaction.amount, card.last4, and reason for escalation.
Resolution — Clear
CoreBanking.ClearFraudAlert on transaction.id.
CRM.LogInteraction tagged alert-cleared-customer-confirmed, linked to account.id.

Balance / Transaction Inquiry
Intake
- Customer asks about current balance balance-inquiry →identity-verification
- Customer asks about a specific transaction or unrecognized charge transaction-inquiry →identity-verification
- Customer immediately alleges fraud or unauthorized access fraud-allegation →escalation-fraud
- Intent unclear — ask a clarifying question, then →identity-verification
Identity Verification
OTPAuth.SendOTP to customer.phone
- Customer provides correct OTP verified IdentityVerification.Confirm →account-lookup
- Customer cannot receive OTP, offer security question fallback otp-failed →security-question-fallback
- Customer has already failed one attempt — verification.attemptCount equals 1 →second-attempt-warning
Second Attempt Warning
- Customer provides correct OTP on second try verified IdentityVerification.Confirm →account-lookup
- Customer fails again unverified →escalation-identity-failure
Security Question Fallback
IdentityVerification.FetchSecurityQuestion for customer.accountNumber
- Customer answers correctly verified IdentityVerification.Confirm →account-lookup
- Customer answers incorrectly unverified →escalation-identity-failure
Account Lookup
CoreBanking.GetAccountSummary for customer.accountNumber including account.status, account.balance, account.availableBalance, and customer.accountType
- Account returned successfully and status is active account-found →inquiry-routing
- Account has a hold, freeze, or legal flag on it account-flagged →escalation-account-flag
- System returns an error or times out lookup-error →system-error
Inquiry Routing
- Customer needs current balance confirmed balance-inquiry →balance-delivery
- Customer needs a specific transaction explained transaction-inquiry →transaction-lookup
- Customer now mentions an unexpected fee fee-concern →fee-review
Balance Delivery
CoreBanking.GetAccountSummary to retrieve account.balance and account.availableBalance for customer.accountType
- Customer is satisfied and has no further questions satisfied →resolution
- Customer wants to see recent transactions as well wants-transactions →transaction-lookup
- Customer disputes a charge or says a transaction looks wrong transaction-dispute →transaction-lookup
- Customer raises concern about an unexpected fee fee-concern →fee-review
Transaction Lookup
CoreBanking.GetTransactionHistory for customer.accountNumber over inquiry.dateRange
- Transactions returned successfully transactions-found →transaction-detail
- No transactions found in the requested range no-results →no-transaction-found
- System returns an error lookup-error →system-error
Transaction Detail
CRM.LogInteraction tagged balance-transaction-inquiry, linked to customer.accountNumber and transaction.id
- Customer recognizes the transaction and is satisfied satisfied →resolution
- Customer does not recognize the transaction and believes it is fraudulent fraud-allegation →escalation-fraud
- Customer recognizes the merchant but wants to dispute the amount amount-dispute →escalation-fraud
- Customer has a question about a fee within the transaction fee-concern →fee-review
No Transaction Found
- Customer provides more details — retry lookup →transaction-lookup
- Customer still cannot locate the transaction and suspects fraud fraud-allegation →escalation-fraud
- Customer is satisfied and wants to close satisfied →resolution
Fee Review
CoreBanking.GetFeeDetail for fee.type and fee.amount on customer.accountNumber
kb.fee-waiver-policy — check one-time waiver eligibility criteria for customer.accountType and account standing
- Customer is eligible and agent applies waiver waiver-applied CoreBanking.ApplyFeeWaiver →fee-waiver-confirmation
- Customer is not eligible for a waiver waiver-ineligible →fee-waiver-declined
- Customer is upset and escalation is warranted needs-escalation →escalation-human
Fee Waiver Confirmation
CRM.LogInteraction tagged fee-waiver-applied, linked to customer.accountNumber and fee.type
- Customer is satisfied satisfied →resolution
- Customer has an additional question →inquiry-routing
Fee Waiver Declined
- Customer accepts the outcome satisfied →resolution
- Customer wants to speak to a specialist or is upset escalation-requested →escalation-human
System Error
CRM.LogIncident tagged system-error, linked to customer.accountNumber and customer.phone
CRM.ScheduleCallback for customer.phone at next available slot
- Customer agrees to callback and conversation ends satisfied →resolution
- Customer wants to try again immediately →account-lookup
- Customer is very frustrated and demands to speak with someone now escalation-requested →escalation-human
Escalation — Fraud or Dispute
FraudDetection.FlagAccount for customer.accountNumber tagged suspected-fraud, linked to transaction.id
CRM.CreateCase priority: high, tagged fraud-dispute, linked to customer.accountNumber and transaction.id
→fraud-alert-follow-up
Escalation — Identity Verification Failed
CRM.LogIncident tagged verification-failure, linked to customer.phone
CRM.CreateCase priority: high, tagged identity-lockout
Escalation — Account Flag
CRM.CreateCase priority: high, tagged account-flag-review, linked to customer.accountNumber
CRM.LogInteraction tagged account-flag-escalation
→escalation-human
Escalation — Human Specialist
CRM.CreateCase priority: high, tagged specialist-handoff, linked to customer.accountNumber
CRM.LogInteraction tagged escalation-human, with case summary
Resolution
CRM.LogInteraction tagged inquiry-resolved, linked to customer.accountNumber

New Account Onboarding
Intent Capture
- Customer requests a personal account type (checking, savings, investment) personal-account →info-collection
- Customer requests a business or trust account business-or-trust-account →specialist-routing
- Customer is unsure or needs guidance unsure →account-type-guidance
Account Type Guidance
kb.account-types-overview — retrieve product descriptions, minimum balance requirements, and eligibility criteria
- Customer selects a personal account type personal-account →info-collection
- Customer still wants a business or trust account business-or-trust-account →specialist-routing
- Customer wants to end the conversation end-session →session-close
Info Collection
CRM.CreateDraftRecord to initialize a draft customer profile
kb.minimum-deposit-requirements — validate customer.initialDepositAmount and customer.fundingSource eligibility
- All required fields collected and deposit method is supported fields-complete →identity-verification
- Funding method is unsupported or deposit is below the minimum funding-issue →funding-issue-resolution
- Customer is unwilling to provide required information declined-to-provide →escalation-human
Funding Issue Resolution
kb.funding-methods-policy — retrieve supported funding sources and minimum initial deposit thresholds
- Customer selects a supported alternative funding method alternative-accepted →identity-verification
- Customer cannot or will not meet deposit requirements cannot-meet-requirements →session-close
Identity Verification
KYCService.SubmitVerification with customer.fullLegalName, customer.dateOfBirth, customer.govIdNumber, customer.taxId, customer.address
- Verification passes on first or second attempt kyc-pass →compliance-screening
- Verification fails — first attempt kyc-fail-first →kyc-retry
- Verification fails — second attempt or kyc.attemptCount exceeds 2 kyc-fail-final →escalation-human
KYC Retry
DocUploadPortal.RequestDocument to customer.email for alternative ID submission
- Customer submits alternative document and resubmission passes kyc-pass →compliance-screening
- Customer submits alternative document and resubmission fails kyc-fail-final →escalation-human
- Customer cannot provide alternative documentation cannot-verify →escalation-human
Compliance Screening
ComplianceScreening.RunCheck with customer.fullLegalName, customer.taxId, customer.dateOfBirth, customer.address
- Screening passes with no flags compliance-clear →account-creation
- Any KYC or AML flag is raised compliance-flagged →escalation-compliance
- Customer is identified as a Politically Exposed Person (PEP) compliance.isPEP pep-flag →escalation-compliance
Account Creation
CoreBanking.CreateAccount with customer.fullLegalName, customer.taxId, customer.address, customer.fundingSource, customer.initialDepositAmount, customer.accountType
CRM.UpdateRecord with account.id, mark status: account-created
Twilio.SendSMS to customer.phone: "Your new account has been created. Your account ID is account.id. Your login credentials will arrive by email shortly."
CoreBanking.IssueCredentials to customer.email with account.credentials and welcome packet link
- Account created and credentials delivered successfully account-ready →customer-orientation
- Account creation fails due to a system error system-error →escalation-human
Customer Orientation
kb.new-account-faq — retrieve top questions about first login, mobile app access, and deposit timelines
- Customer has additional questions more-questions →customer-orientation
- Customer is satisfied and ready to end satisfied →session-close
- Customer wants to add a beneficiary or linked account additional-setup →escalation-human
Specialist Routing
CRM.CreateLeadRecord with customer.phone, customer.email, customer.accountType, note: specialist-referral
- Details captured and specialist notified →escalation-human
Escalation to Compliance Officer
ComplianceScreening.FlagRecord with customer.fullLegalName, customer.taxId, compliance.flagCode, compliance.isPEP
CRM.EscalateRecord priority: critical, tag: compliance-review
Escalation to Human Agent
CRM.EscalateRecord priority: high, tag: agent-review
Twilio.SendSMS to customer.phone: "Your account application requires attention from one of our specialists. A team member will reach out to you shortly."
Session Close
CRM.CloseSession with session outcome logged

Card Lost / Stolen Replacement
Intake
- Customer confirms card is lost confirmed →identity-verification
- Customer mentions unauthorized charges or suspected fraud fraud_concern →identity-verification-fraud
- Customer is unresponsive or unclear →identity-verification
Identity Verification
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes on first or second attempt verified →card-block
- Verification fails after multiple attempts failed →verification-failure
Identity Verification — Fraud Path
KYCVerification.VerifyIdentity with customer.name, customer.dob, customer.ssn_last4, customer.pin
- Verification passes verified →card-block-fraud
- Verification fails after multiple attempts failed →verification-failure
Card Block
CardManagement.BlockCard for card.id
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked
Salesforce.CreateCase type: card-lost-stolen, linked to account.id
- Customer provides last seen details →address-confirmation
- Customer cannot recall details →address-confirmation
Card Block — Fraud Path
CardManagement.BlockCard for card.id
FraudDetection.FlagAccount on account.id tagged: unauthorized-transactions
CoreBanking.UpdateAccountStatus on account.id flagged: card-blocked-fraud
Salesforce.CreateCase type: fraud-card-lost-stolen, priority: high, linked to account.id
- Proceed to address confirmation for replacement →address-confirmation-fraud
Address Confirmation
- Customer confirms existing address confirmed →replacement-issuance
- Customer requests a new or different address new_address →address-review
Address Confirmation — Fraud Path
- Customer confirms existing address confirmed →replacement-issuance-fraud
- Customer requests a new or different address new_address →address-review
Address Review
Salesforce.UpdateCase add: unrecognized-replacement-address, replacement.address, flagged-for-review
ShippingFulfillment.HoldOrder pending address verification on account.id
- Address approved approved →replacement-issuance
- Address flagged or rejected rejected →escalation-human
Replacement Issuance
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited
- Customer accepts standard delivery standard →replacement-standard
- Expedited requested but not eligible expedited →replacement-standard
Replacement Issuance — Fraud Path
ShippingFulfillment.CheckExpedited for account.id
- Customer requests expedited and delivery.expedited_eligible is true expedited →replacement-expedited-fraud
- Customer accepts standard delivery standard →replacement-standard-fraud
Replacement — Standard
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines digital card →resolution
Replacement — Expedited
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
- Customer wants digital card →digital-card-offer
- Customer declines →resolution
Replacement — Standard (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: standard
ShippingFulfillment.CreateShipment linked to account.id, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-standard, replacement.tracking_number
→escalation-fraud
Replacement — Expedited (Fraud Path)
CardManagement.IssueReplacementCard for account.id, ship to customer.address, method: expedited
ShippingFulfillment.CreateShipment linked to account.id, method: expedited, capture replacement.tracking_number
Salesforce.UpdateCase add: replacement-issued-expedited, replacement.tracking_number
→escalation-fraud
Digital Card Offer
- Digital card provisioned successfully provisioned →resolution
- Customer not eligible or provisioning fails ineligible →resolution
Verification Failure
Salesforce.CreateCase type: identity-verification-failure, priority: high, linked to account.id
Salesforce.LogNote add: customer-directed-to-branch, verification-failed
- Customer wants branch info →escalation-human
- Customer ends interaction →resolution-no-action
Escalation — Fraud Team
FraudDetection.OpenDisputeCase linked to account.id, flagged: unauthorized-transactions, transaction.unauthorized_flag
Salesforce.UpdateCase priority: high, tagged: fraud-escalation, dispute-opened
Slack.Notify to #fraud-ops with case summary, account.id, card.last4
Escalation — Human Agent
Salesforce.UpdateCase priority: high, tagged: manual-review-required
Slack.Notify to #card-services-review with case summary, account.id, customer.name
Resolution
Salesforce.CloseCase resolution: card-replaced, linked to account.id
Resolution — No Action Taken
Salesforce.CloseCase resolution: blocked-no-replacement-issued, linked to account.id


Ready to stop experimenting and start deploying?
Learn how teams across every industry are deploying AI agents in production and seeing results from day one.

Ready to stop experimenting and start deploying?
Learn how teams across every industry are deploying AI agents in production and seeing results from day one.

Ready to stop experimenting and start deploying?
Learn how teams across every industry are deploying AI agents in production and seeing results from day one.
