Platform / AI voice
A voice agent that holds the conversation, not a script
attpro's voice agents speak ten Indian languages plus Hinglish, listen through interruptions, and carry seventeen in-call tools - so a call ends in a promise, a payment link, a callback, or a clean handoff to a human, never in a dead end.
- Press playA two-minute collections call, compressed to twenty seconds.
How it runs
AI voice end to end
The same shape on every account: the flow acts, the world answers, the account is written. Nothing depends on someone remembering.
Dial
Window, cap, consent and DNC checked before the trunk is touched.
Disclose
Lender named, recording notice given, before anything else is said.
Verify
Identity confirmed before a single figure is mentioned.
Negotiate
The actual conversation, in the borrower's language, interruptible.
- Agrees to paycapture_ptp + send_payment_link
- Wants timeschedule_callback
- Disputes the amountmark_dispute
- In hardshiplog_hardship
- Wrong personmark_wrong_number
- Needs a humanrequest_human_warm_transfer
What it does
The working parts
Each part is a real record in the platform, not a feature on a slide. 8 of them make up AI voice.
Live, interruptible conversation
Barge-in and turn-taking tuned for Indian speech patterns. The borrower can talk over the agent and the agent adjusts, the way a good telecaller does.
Seventeen in-call tools
Record a promise to pay, send a payment link, schedule a callback, mark do-not-call, log a dispute, escalate to a supervisor, end the call gracefully - each one writes a real record, not a note.
Answering machine detection
Voicemail is detected, a compliant message is dropped, and the flow moves on. No agent minutes burned on beeps.
Warm transfer with context
When a call needs a human, the telecaller receives the live transcript, the account state and the conversation so far. The borrower never repeats themselves.
Per-agent persona and prompt
Each agent has a name, a register, a language set and a system prompt you control - firm, kind, formal, colloquial. Audition changes on a test call before they go live.
Gated before it dials
Calling window, concurrency cap and do-not-call are checked before the call is placed over the SIP trunk. Recording disclosure is enforced, not optional.
Scored after it hangs up
Summary, sentiment, auto-disposition, QA score and PII redaction are written to the account the moment the call ends.
A realism layer, off by default
Backchannel fillers, a pronunciation dictionary, boosted keywords, ambience, sentiment-adaptive delivery and cross-call borrower memory - switched on per agent when it earns its place.
- 10 + 1
- 17
- Per agent
Ten Indian languages plus Hinglish, set per agent.
Each one writes a real record, not a note.
Enforced before dialling, per agent and per tenant.
The toolbelt
17 tools, and when each one fires
A script can only say things. An agent with tools can do them, mid-call, and leave a record behind that the rest of the platform can act on.
Before the conversation can legitimately start.
- confirm_call_recordingStates the recording notice and logs that it was given.
- lookup_account_detailReads the balance, due date or last payment mid-sentence.
Answering what the borrower actually asked.
- search_knowledge_baseFinds the lender's own answer rather than improvising one.
- send_kb_docSends the policy or explainer the borrower asked for.
- switch_languageFollows the borrower when they change language mid-call.
Turning agreement into a record and a way to pay.
- capture_ptpA promise with a date and an amount, as fields.
- send_payment_linkDelivered while the call is still live.
- send_statementThe account statement, on request, during the call.
- schedule_callbackA time the borrower chose, held by the flow.
The paths a script would have no answer for.
- log_hardshipRecords distress and routes the account away from pressure.
- mark_disputeOpens a dispute with a category, and pauses collection.
- mark_wrong_numberStops the number being dialled again.
- mark_do_not_callHonoured across every channel, immediately.
Ending the call in a state the platform understands.
- request_human_warm_transferA person picks up holding the transcript.
- request_field_visitRaises a visit when the doorstep is the next step.
- fill_dispositionThe outcome code the next branch is chosen on.
- end_callA graceful close, not a dropped line.
Controls and outputs
What you set, and what you get back
Every control is a setting in the admin app with an audit trail; every output is a record on the borrower, not a spreadsheet.
Settings are per tenant and per campaign, and every change is attributable. Outputs are written as the work happens, not assembled afterwards.
At volume
A day inside the calling window
Concurrency is capped, the window is enforced at dispatch, and the language mix follows the book rather than a setting somebody picked.
- Hindi
- Tamil
- Telugu
- Marathi
- English
- plus Hinglish and four more
- Accounts dialled10,000
- Connected to the right party5,80058% of previous
- Held a real conversation4,10071% of previous
Past the identity check and into the reason for the call.
- Promise captured with a date1,95048% of previous
- Promise kept1,18061% of previous
The only rung that becomes money.
Illustrative shape, not a claim about a real book. Every rung is computed from records the platform already holds, so the drop between any two opens the accounts inside it.
How it gets better
An agent that is not measured is not improving
The realism layer, the objection handling and the tone are not set once. They are tuned against what QA hears, and every change is auditioned before a borrower hears it.
- 1SampleQA pulls calls by disposition, sentiment and outcome, not at random.
- 2ScoreAgainst the script boundaries and the conduct rules, on a fixed rubric.
- 3TunePrompt, tone, objection handling and the tool allowlist per agent.
- 4AuditionThe change is heard on a test call before it reaches a borrower.
- 5ShipPer agent, per campaign, with the previous version still on record.
- 6MeasureKept promises and complaint rate on the cohort that heard it.
What QA finds becomes the next thing tuned. An agent that is not being measured is not being improved.
Part of one system
AI voice does not work alone
The signals it produces are read by the rest of the platform the same second. These two are the closest neighbours.
Flow builder
Draw the strategy once. The engine runs it a lakh times.
A recovery strategy is a graph: contact, wait for what happens, branch on the outcome, escalate. attpro's flow builder makes the graph visible, validates it before publish, and...
Open flow builderCompliance
Compliance as physics, not policy
Quiet hours, consent, contact caps and evidence are enforced by the engine itself. A call that would breach the rules is not flagged afterwards - it is never placed.
Open complianceQuestions
Before a pilot on AI voice
The questions a collections head or an infosec team asks first. Anything else, an engineer answers on the demo call.
Which languages does the agent actually speak?
Ten Indian languages plus Hinglish, with the language set chosen per agent. It can switch mid-call when the borrower does, if you allow it, and the switch is logged.
What happens when the borrower asks for a human?
The agent warm-transfers to a telecaller or a queue you name in the flow, with the live transcript and account state on the caller's screen. The borrower does not repeat themselves.
Do we bring our own telephony?
Yes. The platform dials over your Exotel account and your DIDs, so caller ID, recording retention and telecom compliance stay under your name and your contracts.
How is a bad call caught?
Every call is scored after hangup and a QA sample is routed for human review. Compliance annotations flag disclosure misses, tone and prohibited phrases; a supervisor can pull an agent from the floor in one click.
Further reading
Notes that go deeper
Written for practitioners, ungated, and specific to Indian lending.
Anatomy of an AI collections call
What actually happens in the seconds between a borrower saying 'haan, bol raha hoon' and a payment link arriving on WhatsApp.
ReadAI voice or a human caller: choosing per bucket, not per belief
The question is not whether AI voice is as good as your best telecaller. It is which conversations need your best telecaller at all, and what it costs you to spend them on reminders.
ReadBring one delinquent cohort. We will run it.
A demo here is not a slideshow. Pick a segment of your book, watch a flow built for it, and hear an agent call a test number in your language.