Inspiration

Millions of Indian families borrow against their gold: a farmer before sowing, a shopkeeper before a festival, a family facing a hospital bill. The gold stays with the lender, and each loan must stay within a loan-to-value limit set by the Reserve Bank of India.

When gold prices fall, thousands of loans can breach that limit overnight. Branch staff usually find out late and phone borrowers one by one, often in a language the borrower isn't comfortable with. Borrowers who can't be reached face notices and, eventually, the auction of family jewellery. The RBI's 2025 directions on gold lending raised the bar further: continuous loan-to-value monitoring, a strict notice process before any auction, and return of pledged gold within seven working days of closure, with ₹5,000 compensation for every day of delay.

We wanted to see whether an AI agent could reach every borrower early, in their own language, while following the rules more strictly than a busy branch can.

What it does

Swarna reads the lender's loan book every night and starts the conversation itself, on WhatsApp, SMS or email, at a sensible hour and in the borrower's language (English, Hindi, Tamil or Malayalam):

  • Loan at risk: three plain options to fix it: a small UPI payment, pledging more gold, or switching to monthly payments.
  • Silent borrower: the required notice sequence across WhatsApp, SMS and email, with tamper-evident proof of every message and delivery receipt, and a hand-off to a person the moment the borrower replies.
  • Loan closed: a seven-working-day release clock: a collection slot, a one-time code, the release letter, and an escalation to the branch manager before the lender owes compensation.
  • Top-up: when prices rise, borrowers who have opted in can request more funds; the agent records the request, it never approves credit.

The AI handles the conversation, never the money. Every figure comes from the lender's rules engine, balances are shown only after identity verification, and any change to a loan needs approval from two different people in the lender's console.

How we built it

Swarna runs entirely on AWS in the Mumbai region:

  • Channels: AWS End User Messaging (WhatsApp and SMS) and Amazon SES (email)
  • Agent: a Strands agent on Amazon Bedrock AgentCore (runtime, memory, gateway), with Cedar policies limiting which tools it can call and with what values
  • Journeys: AWS Step Functions and AWS Lambda, triggered nightly by Amazon EventBridge Scheduler
  • Data: Amazon DynamoDB for state, Amazon S3 Object Lock for evidence
  • Lender integration: the lender's loan system is an adapter. Our demo uses a simulated lender with synthetic data that sends a nightly file in its own format; a real lender connects through configuration and a data mapping, not new code
  • Operations: a lender console with maker-checker approvals, CloudWatch alarms, dead-letter queues and a rehearsed rollback

Quality is enforced by about 800 automated tests and a 50-conversation evaluation that must pass twice in a row before any change reaches the live system.

Challenges we ran into

  • AI models are not reliable enough to be trusted with money. Early versions invented a payment amount, replied in the wrong language and wrote a tool call as text instead of making it. Each time, the fix was to move that behaviour out of the model and into deterministic code.
  • Identity on a shared family phone. Our first verification question used details Swarna itself had sent in earlier messages, so anyone reading the chat knew the answer. We redesigned it around facts only the lender holds.
  • Memory that remembered too much. An audit showed most stored memories contained amounts or dates the agent should never keep. We added a filter on every memory read and a sweeper that removes violations every five minutes.
  • No real customer data. As a technology partner we built a simulated lender that behaves like a real one, so the full journey can be shown end to end with sample data.

Accomplishments that we're proud of

  • A borrower receives an alert at 8 am in Malayalam, taps Pay and gets a receipt, with no human involved and every step recorded as evidence.
  • The AI cannot change a loan, invent a number or skip a regulatory step.
  • It costs about half a cent per message turn, a few cents per conversation.
  • One codebase serves any lender; customising it means configuration and data mappings, not new code.

What we learned

The most important design work in an AI agent is deciding what the AI must not do. Clear boundaries, deterministic checks and an evaluation gate on every change let us move quickly without losing trust.

What's next for Swarna

  • A pilot with a gold lender on their test data, through their own loan-system adapter
  • Production hardening: customer-managed encryption keys, single sign-on for lender staff, compliance-mode evidence retention and private connectivity to the lender
  • Registered SMS senders for India, more regional languages, and native-speaker review of every borrower message

Built With

Share this project:

Updates

Submission history