XoreVoice · voice compliance
Prove what was actually said
Regulators increasingly ask you to show that a conversation happened, in a language the customer understood, covering everything it was required to cover. A signed form doesn't show that. XoreVoice turns the recording itself into objective, auditable evidence.
Recording · 4:38 · Hindi · 2 speakers detected
Diarized transcript
ब्याज दर 14.5% सालाना है, और यह पूरी अवधि के लिए तय है।
समझ गया — तो EMI बाद में नहीं बदलेगी?
सही है। बीमा वैकल्पिक है — आप मना कर सकते हैं।
Rubric v3 · disclosure — personal loan
The problem
A signature is not evidence of understanding
Most conduct and disclosure obligations are discharged verbally, in a regional language, by one person in the field. Almost none of it is captured in a way anyone can later verify.
Attestation, not proof
A ticked box says the disclosure was made. It says nothing about whether it was made in a language the customer followed.
Language gap
The conversation happens in Hindi or Kannada. The compliance team reviews in English. Nothing bridges the two at scale.
No sampling reach
Manual review covers a fraction of a percent of cases. The mis-sold ones are exactly the ones nobody listened to.
Discovered too late
Conduct failures surface as complaints or regulatory findings months later, when the recording — if it exists — is gone.
How it works
From a recording in the field to a defensible score
Everything after upload runs asynchronously. The phone stays fast; the heavy processing is decoupled and retried on failure.
Capture
Executive records consent, works through the mandated questions, adds a photo and GPS, submits.
Transcribe
Regional-language speech recognition runs on your GPU, returning timestamped text.
Separate speakers
Diarization splits executive from customer, so an unanswered disclosure can't pass as acknowledged.
Score
A language model checks each turn against your versioned rubric and quotes the evidence for every item.
Review
Compliance sees the full breakdown, agrees or overrides with notes. Every action is logged immutably.
Two apps, one system of record
The field sees an outcome. Compliance sees everything.
This split is deliberate. If executives can see their score, they optimise for the score. The mobile app returns Accepted or Needs review and nothing else — the composite, the per-item breakdown and the evidence live on the compliance console alone.
Field executive — mobile app
Assigned worklist, customer details, consent capture, guided questions, recording, photo, GPS, offline-tolerant submit, own history.
Compliance team — web console
Transcripts in both languages, per-item scores with quoted evidence, keyword-missing flags, GPS, review and override, analytics by branch and language, exports.
Re-evaluate, don't overwrite
When recognition or the rubric improves, re-run scoring from the stored audio. The new result is a new record; the original scoring stays intact.
Most-missed rubric items
Pass rate by language
Built for regulated data
The recordings never have to leave the country
Voice recordings of customers are among the most sensitive data you hold. XoreVoice is designed so that processing them doesn't create a new cross-border transfer problem.
Self-hosted by default
Speech recognition and scoring both run on models you host. No per-token bill, no third-party retention, and the option to fine-tune on your own labelled data later.
Data residency
Database and object storage stay in-region, aligned to DPDP expectations. Personal fields are encrypted at rest and masked by role in every API response.
Immutable audit trail
Every create, update, review, override and configuration change is written append-only with actor, timestamp and IP. Nothing in the history can be edited after the fact.
Scoped access control
Six roles from super admin to read-only viewer. Regional and branch managers see only their own scope, executives only their own sessions — enforced at the data layer, not per endpoint.
Language-extensible
A central language registry drives recognition routing, translation and rubric localisation. Adding a language is configuration plus a model mapping — not a code change.
No model lock-in
Scoring runs behind a provider abstraction. Switch between self-hosted and managed providers from the admin console — no redeploy, and you can shadow-run two to compare before cutting over.
Where it fits
Any conversation you're required to get right
The rubric is yours. Anywhere a mandated verbal exchange happens in the field, the same pipeline applies.
Lending & loan disclosure
Verify that rate, EMI, tenure, charges, prepayment terms and grievance channels were disclosed — and that optional insurance was genuinely presented as optional, not bundled. Gate the case on the result.
Insurance & mis-selling
Check that exclusions, waiting periods, premium escalation and free-look rights were explained in the customer's own language before a policy was written.
Collections conduct
Monitor field collections for prohibited language, coercion and disclosure to third parties — across every visit, not a hand-picked sample.
Field sales & onboarding
Confirm that pricing, contract terms and cancellation rights were stated, and use the aggregate misses to target coaching where it will actually move the number.
Under the hood
Right-sized architecture
Two cohesive deployables behind a gateway — not a swarm of microservices. Separation happens where tiers genuinely differ: business logic versus GPU inference.
| Component | Technology | Responsibility |
|---|---|---|
| Mobile app | Flutter | Consent, guided questions, recording, photo, GPS, offline-tolerant submit. Shows outcome only. |
| Compliance console | Next.js | Transcripts, per-item scores with evidence, review and override, analytics, exports. |
| Business tier | ASP.NET Core (.NET 8) | Modular monolith: identity and RBAC, org hierarchy, customers and tasks, sessions and review, rubrics, analytics. System of record. |
| AI tier | Python + GPU | Orchestration, speech recognition, diarization, translation, rubric scoring, language registry. Stateless; writes results back. |
| Model server | Ollama / vLLM | Serves the self-hosted scoring model. Swappable per tenant from admin settings. |
| Gateway | Kong | TLS, authentication offload, per-consumer rate limiting — a capture burst can't starve the console. |
| Storage | PostgreSQL · Redis · S3/MinIO | Relational data with JSONB results, the session queue, and audio and photo objects — all in-region. |
FAQ
Questions we get asked
Hindi and Kannada are supported in the current release, with English throughout. The platform routes audio through a language registry, so adding a language is a configuration and model-mapping change rather than a rewrite — Tamil, Telugu, Marathi, Bengali, Gujarati, Malayalam and Punjabi are on the roadmap.
Not by default. Speech recognition and scoring both run on self-hosted models on infrastructure you control, with audio and personal data kept in-country. A managed API provider can be switched on per tenant from the admin console if you prefer, but nothing is sent externally unless you enable it.
No. The mobile app returns only an outcome — Accepted or Needs review. The composite score, per-item breakdown and evidence are visible to the compliance team alone, so scores cannot be gamed in the field.
Sessions can be re-evaluated from the stored audio. A re-evaluation re-runs recognition and scoring with the current model and rubric version, and the result is written as a new record — the original scoring is never overwritten.
Rubrics are versioned per product and per language, with weighted items, mandatory flags and keyword hints. Compliance officers edit and activate them from the console; every session records the rubric version it was scored against, so historical results stay interpretable.
Typically a pilot on one product line and one or two languages, sized on your session volume, followed by a staged rollout by region. Recognition needs a GPU node; scoring can share it at low volume or take a second card as you scale. We'll size it with you against your actual monthly session count.
See it score one of your own conversations
Bring a role-played recording in your language and your actual disclosure checklist. We'll run it through and show you the transcript, the per-item evidence and the score.