> ## Documentation Index
> Fetch the complete documentation index at: https://docs.quivly.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Customer Information Not Linking

> Why synced data — call recordings, billing, support, and more — sometimes doesn't appear on a customer, and how to fix it

## The symptom

A customer looks emptier than it should:

* The **Calls** tab says "No calls yet" even though you know calls have happened.
* **Revenue** shows no Stripe subscriptions or invoices even though the customer is paying.
* Contacts, support tickets, or usage data are missing.

In the large majority of cases, the cause is the same: **the customer has no domain set.**

<Warning>
  A missing domain is the single most common reason synced data doesn't appear on a customer. Check this **first** before digging into the integration itself.
</Warning>

***

## Why the domain matters

Quivly doesn't get a tidy "customer ID" from every integration. Many sources — call recorders, billing, support — only tell us **who was involved**: a list of email addresses. To attach that data to the right customer, Quivly matches the **email domain** against the domains on your customers.

```
alex@acme.com  ──▶  domain "acme.com"  ──▶  Customer where customer_domain = acme.com
```

No domain on the customer → nothing to match against → the call (or subscription, or ticket) stays unlinked and never shows up on the profile.

***

## The fix: add a domain

<Steps>
  <Step title="Open the customer">
    Go to the customer's profile in Quivly. If the domain is missing, you'll see an amber **"Domain missing"** badge next to the customer name at the top.
  </Step>

  <Step title="Add the domain">
    Click the badge and enter the customer's primary domain — e.g. `acme.com`. You can also set it in the **Account Info** panel (the building icon in the top-right of the customer header).

    Use the bare domain: lowercase, no `https://`, no `www.`, no trailing path.
  </Step>

  <Step title="Save">
    New data links automatically. Existing records link on the next sync.
  </Step>
</Steps>

***

## Domain mismatch: the customer has a domain, but data still doesn't link

Sometimes the customer *does* have a domain, yet data still doesn't attach. This is almost always a **domain mismatch** — the people involved email from a domain that isn't the one set on the customer.

Common causes:

* The customer uses **more than one domain** — a parent company, an acquired brand, or a regional domain like `acme.co.uk`.
* The primary domain is set to one thing (`acme.com`) but the data comes in under another (`acme.io`).

**Fix: add the other domains as secondary domains.** Data from *any* listed domain — primary or secondary — links to the customer.

<Steps>
  <Step title="Open Account Information">
    On the customer, open the **Account Info** panel (the building icon at the top-right of the customer header).
  </Step>

  <Step title="Add a secondary domain">
    Under **Secondary Domains**, add each additional domain the customer uses. Use the bare domain (`acme.io`), one per entry — the same format as the primary domain.
  </Step>

  <Step title="Save">
    Existing records re-match on the next sync; new data matches immediately.
  </Step>
</Steps>

<Tip>
  Not sure which domains to add? Open the customer's **Contacts** tab — the email domains you see there are the ones that should be listed as the primary or a secondary domain.
</Tip>

***

## Where domains normally come from

Ideally you never set domains by hand — they flow in from your CRM.

| Source     | Field that becomes the domain        |
| ---------- | ------------------------------------ |
| Salesforce | Account **Website**                  |
| HubSpot    | Company **Domain**                   |
| Manual     | The **Domain** field in Account Info |

If domains are consistently missing after a sync, the upstream CRM record is usually missing its website/domain field. Fixing it there means every future customer comes in linked correctly, with no manual step.

***

## By data type

The domain drives linking, but each integration has a small nuance worth knowing.

### Call recordings

Call recorders (Fireflies, Fathom, Granola) link a call by the **email domains of the external attendees**.

* A call attended only by your own team — no external `@customer.com` participant — has nothing to match on and won't link.
* Attendees on **personal email** (`@gmail.com`, `@outlook.com`) won't match a customer domain.
* If a call was attended from a domain the customer uses but that isn't listed, add it as a **secondary domain** (see the mismatch section above).

### Billing information

Stripe subscriptions and invoices link by the **Stripe customer's email domain**.

* If the Stripe customer has **no email**, there's no domain to match — the subscription can't link automatically. Add the email in Stripe, or link the customer manually.
* If billing comes in under a different domain than the CRM record (common when finance uses a `billing@` alias on another domain), add that domain as a **secondary domain**.

### Support tickets

Support tickets (Pylon) link by the **account's domain**.

* A ticket from a domainless account can't match — set the domain on the customer.
* Tickets opened from a secondary or regional domain link once that domain is added as a **secondary domain**.

***

## Still not linking after adding a domain?

If data still doesn't appear once a correct domain is set:

* **Give it a sync cycle.** Existing records link on the next scheduled sync, not instantly.
* **Check the source domain.** The email domain on the call, invoice, or ticket must match the customer's primary or a secondary domain exactly — `acme.io` won't match `acme.com`.
* **Confirm the integration is connected** and syncing under **Settings → Integrations**.

If you've confirmed all of the above and data is still missing, reach out to Quivly support with the customer name and an example call or invoice that should have linked.
