Building an AI Private Banker with Agentic Systems for Customer Service and Financial Operations

nubank · Finance · year n/a · source Agentic: yes · promotional bias: med · source-backed · extracted with prompt 0.5.4 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Digital banking customer service and financial operations

Nubank wanted to make AI act like a private banker for a very large customer base, handling customer-service contacts and money-transfer flows while preserving accuracy, trust, and regulatory-grade reliability.

Constraints:

Architecture

Nubank built two major LLM applications: customer-service agents that first handle a large share of chat contacts, and an agentic money-transfer system that can process voice, image, and chat instructions. The team uses tracing and iterative LLM-as-judge evaluation, moving through prompt and fine-tuning iterations until automated judgment neared human evaluator performance.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  customer[Customer] --> customer-service-agent[Customer Service Agent]
  customer[Customer] --> money-transfer-agent[Money Transfer Agent]
  money-transfer-agent --> authentication-and-confirmation[Authentication and Confirmation]
  money-transfer-agent --> banking-systems[Banking Systems]
  customer-service-agent --> tracing-and-evaluation[Tracing and Evaluation]
  money-transfer-agent --> tracing-and-evaluation[Tracing and Evaluation]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Customer Bank customer using chat, voice, image, or WhatsApp. Customer Service Agent, Money Transfer Agent
Customer Service Agent LLM-first support channel for chat contacts. Customer, Tracing and Evaluation
Money Transfer Agent Agentic flow for transfer instructions, confirmation, and execution. Customer, Authentication and Confirmation, Banking Systems
Authentication and Confirmation Verifies account and asks repeated confirmation before transfer. Money Transfer Agent
Banking Systems Executes financial operations after confirmation. Money Transfer Agent
Tracing and Evaluation Online tracing and LLM-as-judge evaluation loop for quality iteration. Customer Service Agent, Money Transfer Agent

Data flow

Customer chat contacts are first handled by LLMs. For money transfer, a user connects through WhatsApp, authenticates, gives a transfer instruction, confirms the recipient and amount, and the system executes the transfer. Evaluation traces feed iterative prompt and fine-tuning work.

“almost users Right. And we get almost 8 and a half million um contacts every month. And out of that chat is our main um channel and in that channel right now 60% of them are first dealt with LLMs.”transcript, stated
“make a transfer to Jose for 100 AIS we confirm this is the one that users want and then once it confirms it makes a transfer”transcript, stated

Why this architecture

Nubank separates customer-service automation from high-stakes money movement but evaluates both through production tracing. Confirmation steps and low inaccuracy targets preserve trust for financial actions, while LLM-as-judge iteration scales quality measurement.

“in the world of finance as you heard from her that the uh complexity of the legal matters are important for finance every single dollar every single penny matters”transcript, stated
“go through these six iterations and we could only do it because we had the online tracing system in place otherwise it wouldn't have been possible. So taking up like wrapping it up all there is no magic in building any agent any LLM it's hard work evals are”transcript, stated

Models used: LLMs · fine-tuned evaluator model

Scale

Alternatives considered (roads not taken)

Traditional nine-screen transfer flow.

Rejected because: The agentic flow made transfers faster while preserving confirmation.

“through nine different screens it's taking less than 30 seconds now and the you can see the seesat is more than 90% uh less than 0.5% inaccuracy so on and so forth and we are doing that at scale and I will talk about that where”transcript, stated

Manual-only evaluation.

Rejected because: Automated judging reached near-human F1 and enabled fast iteration.

“is where we landed where we are at F1 score of 79% compared to 80% of human which is ab quite comparable. Now you might ask that tan why did you move from uh test five to test six the F1 score is 80 and 79 because in 79 we are”transcript, stated

Single prompt/model attempt.

Rejected because: The system improved through six iterations of fine-tuning and prompt changes.

“go through these six iterations and we could only do it because we had the online tracing system in place otherwise it wouldn't have been possible. So taking up like wrapping it up”transcript, stated

Patterns

human-in-the-loop-gate (financial-safety)

The transfer flow asks for explicit confirmation before executing money movement.

“we confirm this is the one that users want and then once it confirms it makes a transfer”transcript, stated

llm-as-judge (evaluation)

Nubank iterated an evaluator until automated F1 was comparable with humans.

“F1 score of 79% compared to 80% of human”transcript, stated

observability-tracing (llmops)

Online tracing enabled rapid prompt and fine-tuning iterations.

“online tracing system in place otherwise”transcript, stated

Tradeoffs

Transfer UX

Chose Agentic voice/image/chat flow with confirmation over Nine-screen manual flow.

Rationale: The new flow is faster but still confirms before executing.

“taking less than 30 seconds now”transcript, stated

Evaluator iteration

Chose Fine-tuned and prompt-iterated LLM judge over Static evaluator.

Rationale: Six iterations improved F1 from 51 to 79 and better caught inaccuracies.

“we increased the accurate F1 score from 51 to 59 9. Next test, we changed the prompt”transcript, stated

Gotchas (what bit them)

Financial agents need a much tighter error budget than ordinary chatbots.

Root cause: Money movement creates direct customer and trust impact.

Resolution: Use confirmation and measure inaccuracy separately from satisfaction.

“every single dollar every single penny matters”transcript, stated

Evaluation F1 can hide which error type matters more.

Root cause: A lower overall F1 may catch more inaccuracies.

Resolution: Choose the iteration that better identifies inaccurate information, not just the highest score.

“in 79 we are identifying the inaccurate information better”transcript, stated

Evaluation

Nubank evaluates with CSAT, inaccuracy rate, transfer time, F1 against human judgment, and online traces from real LLM interactions.

Metrics: CSAT · Inaccuracy rate · Transfer time · F1 score · Human-comparison F1 · Monthly contact volume

“this whole development took us maybe around two weeks with a couple of developers”transcript, stated

Outcomes

The source reports 120 million users, 8.5 million monthly contacts, 60% LLM-first chat handling, sub-30-second transfer, over-90% CSAT, under-0.5% inaccuracy, and six evaluation iterations.

“we are at F1 score of 79% compared to 80% of human”transcript, stated