Ringostat: setup from scratch — a step-by-step example
From an empty account to the first call in the CRM: three typical number schemes, staff, the CRM phone, the webhook and a test run.
This page is a hands-on example: we take a Ringostat project and bring it to the point where every inbound call becomes a lead, the customer card opens for the rep while the phone rings, and recordings and missed calls sit in the CRM. Pick a number scheme first — steps 4 and 5 depend on it. For a reference of every field, see Connect Ringostat.
#Step 0. Pick a number scheme
| Scheme | When it fits | Who the call belongs to |
|---|---|---|
| A. A personal number per rep | Customers have “their” rep and call them directly: B2B, high-ticket sales, service | Answered — whoever picked up. Missed — the owner of the dialed number |
| B. One number for the whole project | A shared sales or store line: whoever is free picks up | Answered — whoever picked up. Missed — the person responsible for the line |
| C. Mixed | Ads point to the shared number, regular customers call their reps directly | As in A for personal numbers, as in B for the shared line |
The second decision is where the rep talks: the built-in CRM phone (in the browser — the card opens during the call and the call survives moving between leads) or the Ringostat app, as before. The call log, leads, recordings and missed calls work the same either way. Comparison: Two modes.
#Step 1. Prepare Ringostat
- Every rep is set up in Ringostat as an employee (not just a SIP account) with their own SIP account. The CRM sees employees.
- Scheme A: each personal number routes to its rep's SIP account.
- Scheme B: the shared number routes to one SIP account — that's the one we connect to the CRM phone (e.g.
office). If reps stay in the Ringostat app, route it to a group of their SIP accounts. - In every routing rule, set where the call goes if nobody answers: another employee or voicemail. Otherwise the caller hears “busy”.
- Turn on call recording if you want it in the CRM.

#Step 2. API key
Ringostat account → Integrations → Ringostat API. Copy the project ID and the Auth-key.

#Step 3. Connect in the CRM
- CRM → Settings → Telephony → Ringostat → “Add connection”.
- Paste the Ringostat project ID and Auth-key; time zone
Europe/Kyiv. - CRM projects — the project where call leads should appear.
- Call mode: “SIP trunk via the xCRM phone” if reps talk in the CRM; “Ringostat Callback” if they use the Ringostat app.
- Turn on Call log, Call recordings and Lead for an unknown number.
- “Save settings” — the CRM checks the key and loads the staff.

#Step 4. Staff and numbers
On the same page is the “Ringostat staff and SIP accounts” table. For each rep, pick the “CRM user” and fill in “Ringostat numbers” according to your scheme, then “Save mapping”.
| Scheme | What goes into “Ringostat numbers” |
|---|---|
| A. Personal number | Each rep gets their own number |
| B. One number, reps in the Ringostat app | The shared number goes to one owner (a team lead or whoever is on duty). Nothing for the rest |
| B. One number, reps in the CRM phone | Nothing. Don't link the line's SIP account (office) to anyone: the CRM phone handles those calls, see step 5 |
| C. Mixed | Personal numbers to their reps, the shared one to its owner |

The CRM imports calls of linked staff only. If someone works in another system and has no CRM user, just leave them unlinked.
#Step 5. The CRM phone (if reps talk in the CRM)
Skip this step in Ringostat Callback mode. For the CRM phone, do three things for every Ringostat SIP account that should ring in the CRM — following Telephony in the CRM:
- 01
SIP trunk
Telephony step 3: host
sip.ringostat.net, port5060, the SIP account login and password from Ringostat, “Register with the provider” on. - 02
Number
Step 4: a number bound to this trunk. Fill in “CRM project” and “Number owner” — leads from new inbound callers land in that project, assigned to that owner.
- 03
Route
Step 7: scheme A — number → the operator who owns the SIP account; scheme B — number → a ring group with every rep on the line.
- 04
Attach and apply
In the Ringostat settings pick this trunk under “Ringostat SIP trunk”, then apply the configuration.


#Step 6. Webhook
Without a webhook a call appears in the CRM 1–2 minutes after it ends. With one, the lead is created while the phone is ringing. Webhooks can only be created in your Ringostat account.
- In the CRM, on the Ringostat page, copy the Webhook URL.
- Ringostat account → Integrations → Webhooks → Add.
- First webhook: event “Before the call” (inbound), method POST, format JSON, address — the Webhook URL with
?event=startat the end. - Second webhook: event “After the call” (inbound), the same, but ending with
?event=finish. - Add the parameters to both: the name as below, the value — the matching Ringostat variable.
uniqueid
caller
dst
call_type
employee_number
connected_with
billsec
duration
disposition
#Step 7. Test calls
The rep signs in to the CRM and keeps the tab open (for the CRM phone, the browser asks for microphone access once — “Allow”). Then make three calls from a number that isn't in the CRM:
| Call | What should happen |
|---|---|
| The rep answers | CRM phone: the new lead's card opens during the call. Ringostat app: the lead appears in the CRM. Either way — the call and recording are in the card |
| Nobody answers | A lead is created and the line's rep gets a “Пропущений виклик” (missed call) notification linking to it (scheme A — the number's owner; scheme B — the line owner or the whole ring group) |
| The same number calls again | No new lead — the call joins the first one |

#How the CRM behaves during a call
| The rep, when the phone rings | What happens |
|---|---|
| Idle or viewing a lead with no edits | The caller's card opens right away |
| Filling in a lead, not saved yet | The card doesn't switch — nothing typed is lost. After “Save” (no page reload) the caller's card opens |
| Already talking to another customer | The current call isn't interrupted. The second call follows your Ringostat routing (another employee, voicemail) and the rep gets a missed-call notification |
| Clicks a link that reloads the page | The CRM warns that leaving will drop the call |
#Common mistakes
| Symptom | What's wrong |
|---|---|
| A rep's calls don't show up | They aren't linked to a user (step 4) |
| Answered calls arrive, missed ones don't | The number isn't in anyone's “Ringostat numbers” (step 4) |
| Someone is missing from the staff table | In Ringostat they're only a SIP account — add them as an employee and sync again |
| Inbound calls don't ring in the browser | The SIP account is also active in the Ringostat app, or the telephony configuration wasn't applied (step 5) |
| The lead appears 1–2 minutes late | No webhook (step 6) |
| A new lead has no owner | The number's “Number owner” is empty in the CRM (step 5) |
#Checklist
- Number scheme chosen; Ringostat routing and a no-answer fallback set up
- Reps are Ringostat employees with SIP accounts
- CRM connection saved, staff loaded
- Every rep linked, numbers filled in per the scheme, the shared line has an owner
- For the CRM phone: trunk, number with project and owner, route, configuration applied
- Two webhooks in Ringostat
- All three test calls passed