A sales call can contain objections, commitments and information needed for follow-up. It is possible to turn it into a transcript, summary and assessment automatically, but a model output should not become a definitive grade for an employee or prospect.
The pipeline below is an illustrative architecture. It does not describe a client, an Upwork engagement or achieved results. It shows how to connect an authorized phone system, OpenAI transcription, structured analysis, n8n and a CRM, with human review and data-protection rules.
Start With the Right to Record and Analyze
The first question is not which model to use. Determine why calls are recorded, which legal basis applies, who is affected and how long the data is necessary.
The French data protection authority, CNIL, states that an employer generally cannot record calls permanently or systematically unless a specific law requires it. Employees and callers must be informed. Access must be restricted and logged. For a system used in training or evaluation, purpose, proportionality and rights procedures need to be documented.
The analysis may itself contain personal data and employee-evaluation material. It therefore needs its own retention period, recipients and correction process. An automated score should not be the sole basis for a decision affecting an employee.
A Seven-Step Architecture
The flow can fit in one n8n workflow, but each step needs a clear responsibility:
[Authorized recording]
-> [Retrieve file and metadata]
-> [Transcription]
-> [Transcript checks]
-> [Structured analysis against a rubric]
-> [Human review]
-> [Idempotent CRM write]
1. Receive an Event From the Phone System
The PBX or phone provider sends a webhook when the recording is available. The event should include a stable identifier, time, duration, direction and a reference to the file.
Do not assume that every PBX records calls or that recording may be enabled without conditions. Check the contract, configuration and legal framework before development.
2. Download Without Multiplying Copies
n8n retrieves the file through temporary access. The workflow avoids writing signed URLs, full phone numbers or audio content to logs. If a working copy is needed, encrypt it and delete it after processing according to the defined policy.
Use the call identifier as an idempotency key. Retrying the workflow must not create a second CRM analysis.
3. Transcribe With a Current Model
In August 2026, OpenAI documentation recommends gpt-transcribe for transcribing a recorded file in its original language. The /v1/audio/transcriptions endpoint accepts documented inputs including MP3, M4A, WAV and WebM, with a 25 MB file limit.
whisper-1 may remain in historical integrations. A new workflow should use an identifier present in current documentation and version that choice in configuration.
Context may help with product names or domain vocabulary, but measure its effect on a test set. It does not guarantee an accurate transcript. Names, amounts, dates and commitments should be checked against the audio when they trigger an action.
4. Reject Unusable Transcripts
Before analysis, check observable signals: complete file, plausible duration, non-empty text, expected language and no upstream service error.
A very short, silent or heavily distorted call goes to review. The system should not invent an analysis merely to populate the CRM.
5. Analyze Against an Explicit Rubric
The model receives the transcript, necessary context and a versioned sales rubric. Require a JSON schema such as:
{
"summary": "string",
"observed_steps": ["string"],
"missing_steps": ["string"],
"customer_questions": ["string"],
"commitments_to_verify": ["string"],
"suggested_next_action": "string",
"needs_human_review": true
}
Avoid presenting a global score from 1 to 10 as objective. If the organization keeps a score, each criterion needs a definition, examples and a disagreement process. The model's score remains a proposal for an authorized reviewer.
Short quotations can help locate a passage, but reviewers should verify them against the audio. A transcript is not a perfect source.
6. Review Before Managerial or Commercial Use
A manager or sales representative checks anything that could affect coaching, the prospect or the next action. The workflow may create a task and draft follow-up. It should not send a reminder, change a sensitive opportunity or definitively evaluate a person without the corresponding rule and authorization.
Human corrections provide evaluation data. They should not be fed automatically into a prompt without quality and confidentiality checks.
7. Write to the CRM With a Readable Record
The workflow searches for the contact using a normalized identifier, but shared or reassigned numbers can cause a bad match. If ambiguous, create a reconciliation task instead of overwriting a record.
Twenty exposes documented REST and GraphQL APIs. Another CRM is suitable if its API supports idempotency, access rights, note association and deletion. The choice should use features and prices verified at project time, not a figure remembered in an article.
Multilingual Calls
A call may switch languages mid-conversation. Test the actual languages, accents and switching patterns separately. Automatic detection can fail on a short or noisy passage.
The analysis can use the team's working language, but retain the authorized source transcript and state the detected language. Translation adds another transformation and another opportunity for error.
Measuring Quality Before Rollout
Build a corpus of authorized calls annotated by competent reviewers. Include short calls, silence, proper names, amounts, multiple speakers, objections and cases where no next action should be proposed.
Measure at least:
- transcription errors on business-critical terms;
- rubric steps falsely detected or missed;
- commitments assigned to the wrong speaker;
- incorrect CRM matches;
- user corrections;
- failures and duplicates during retries.
Time savings or better coaching can only be claimed after comparison on a stable scope. Call volume alone cannot establish how many sales were lost or recovered.
Sources Consulted
- OpenAI, file transcription, accessed August 13, 2026.
- Twenty, REST and GraphQL APIs, accessed August 13, 2026.
- n8n, HTTP Request node, accessed August 13, 2026.
- CNIL, call monitoring and recording in the workplace, accessed August 13, 2026.
A Reasonable First Scope
Start with a limited sample, review every analysis and automate no decisions. Verify transcription, the rubric, access rights and deletion before connecting every team.
Kirako's AI agents and automation page describes how I scope this kind of pipeline. The article on Pennylane with n8n applies the same idempotency and control principles to another workflow.
Also available: Read in French