Bakkt is redefining how money is held, moved, and programmed. The company needed a conversational AI Agent capable of handling real financial transactions, but the hard part was making it safe.
With The Software House's fintech-native team now on board, in just five months, Bakkt has delivered Zaira – a production-ready AI banking Agent with payment guardrails built in, ensuring no hallucination moves a single dollar the user didn't authorize.
Partnership goal:
→ To build a unified conversational AI Agent for onboarding, KYC, funding, and transfers in real time, with payment guardrails that keep every transaction safe regardless of model output, operating across 63+ countries.
About the client
Founded in 2018, Bakkt Inc. is a regulated financial technology company building infrastructure for the future of finance. Bakkt's platform serves financial institutions, fintechs, and consumer finance products, providing the compliance, security, and scale required to deliver trusted financial services globally.
Through its core business pillars, Bakkt powers institutional-grade trading capabilities, AI-enabled programmable finance, and cross-border payment infrastructure.
Zaira is Bakkt's AI financial Agent that lets users send money to 63+ countries through natural conversation. No forms, no fragmented flows, just a message. Bakkt’s Zaira delivers institutional-grade compliance and cross-border payment capabilities in an experience as simple as texting.
INDUSTRY
Fintech
COUNTRY
International
SERVICE
Agentic Payments, AI Financial Agent
Business context
Bakkt's product team set out to streamline traditional digital banking flows that fragmented the user journey. Until now, to complete any process, onboarding, KYC, funding, or a simple transfer, users had to navigate multiple separate steps, each handled by a different service with no shared coordination layer.
The result was drop-offs at every transition point, operational overhead for the team managing the platform, and an experience that felt slow and disjointed by design.
The platform had to stay compliant regardless of which financial service provider powered transactions, making any architecture tightly coupled to a single FSP a risk.
But consolidating those flows into a single conversational interface introduced a new risk.
In a standard product, a hallucination is an inconvenience. In a financial platform, it can mean money going somewhere the user never intended.
Bakkt approached The Software House to solve both problems: replace fragmented flows with a seamless conversational experience, and make every transaction verifiably safe, regardless of the LLM’s mistakes.
Non-negotiables:
Building a safeguard layer around the AI that ensures every transaction is reliable, compliant, and hallucination-proof;
Drop-offs and friction across onboarding and KYC flows;
Compliance requirements across all financial operations;
Financial provider-agnostic architecture future-proofed by design;
Operating at scale with stablecoin-to-fiat conversion across 63+ countries.
Team formation
TSH assembled a team of four fintech-native engineers: two full-stack developers, one DevOps/architecture specialist, and one QA engineer.
Bakkt’s project manager coordinated requirements and priorities.
The team worked together towards a firm deadline, as the solution needed to be production-ready in time for a live demonstration to a strategic financial partner.
Architecture approach

Technology choice
Technology | Role in the project |
Google Cloud’s Vertex AI | Powers language understanding, reasoning, and response generation across all customer interactions. |
n8n | Orchestrates agent workflows, connecting them with internal systems and third-party services via MCP. |
Model Context Protocol | Enables agents to securely access tools, data sources, and business systems through a standardized interface. |
PostgreSQL | Stores structured business data and operational records required by the platform. |
Redis | High-speed caching, session management, and real-time state handling to keep conversations responsive. |
Notion | Knowledge source agents reference to answer questions and retrieve product information. |
Product Solution
Payment guardrails and caching
Integrating LLMs into financial workflows introduces a risk that doesn't exist in conventional software: the model can generate confidently incorrect output.
A hallucinated account reference or a corrupted payment identifier doesn't just produce a bad user experience; it means money going to the wrong place.
Bakkt uses immutable transaction description entities with unique hash signatures, in tandem with Redis's capabilities, to ensure transaction validity throughout the process.
Payment guardrails. Mismatches between model-generated and user-confirmed identifiers were caught and blocked at the system level
Response caching. Redis cached frequent responses and shared knowledge to reduce latency under concurrent load
Antihallucination payment guardrails schema
Conversational orchestration layer
We replaced form-based navigation with a single natural-language interface powered by Vertex AI (Gemini models). The Agent managed the full user journey (onboarding, KYC, funding, and transfers) solely through conversation.
Voice interactions. Vertex AI speech-to-text enabled hands-free banking operations.
Document-based KYC. Image processing extracted and verified identity documents without breaking the conversational flow.
Event-driven workflow automation
We built modular, event-driven workflows in n8n to orchestrate backend services across the platform. Each workflow was orchestrated through n8n, using webhooks to handle asynchronous operations (such as completing a payment after OTP verification) while keeping the conversational interface uninterrupted.
Asynchronous processing. Backend operations ran without blocking the conversation.
Webhook-based execution. Each workflow step triggered independently to eliminate latency at the user-facing layer.
Unified integration layer
We designed a centralized integration gateway using Model Context Protocol (MCP) to standardize communication with all external systems. Financial services and third-party APIs connected through a single, consistent protocol, reducing complexity and making the architecture straightforward to extend.
Provider-agnostic design. The integration layer supported any FSP without changes to the core architecture; Zaira launched with Bakkt, but onboarding a new provider required no rework
Centralized API gateway. All external communication ran through one gateway, keeping integration overhead low
Agent swarm architecture diagram for Payments
Fintech API integration
We took an API-first approach to integrate with Bakkt across various financial operations.
Onboarding, non-doc KYC, and document KYC as a fallback,
Top-ups and balance tracking,
Support and account management
Secure Transfers, transparent fee calculations, and FX conversions.
Compliance metadata attached to every transaction for consistent auditability.
RAG knowledge system
We built a Retrieval-Augmented Generation pipeline to give the Agent reliable, context-aware responses without depending on the base model's general knowledge. The pipeline retrieved structured content from a PostgreSQL database, with Notion serving as the source of truth for product, compliance, and support information.
When a user asked about fees, transfer limits, or compliance requirements, the Agent pulled from verified internal knowledge, not a best guess.

Outcomes
Bakkt delivered a fully conversational banking experience, replacing traditional UI-driven flows.
→ The anti-hallucination safeguard layer ensured that no model-generated error could result in an incorrect transfer; every transaction was validated against user-confirmed identifiers before execution
→ The platform processed KYC, transfers, and funding operations in real time without blocking the conversational interface.
→ Event-driven workflows and Redis caching enabled the architecture to scale under high-concurrency load.
