# Dixa

Source: https://gokarla.io/docs/guides/resolve/integrations/dixa

# Dixa

:::info

The Dixa integration creates a structured conversation in your Dixa account
whenever a customer submits a Resolve claim. Photos, affected items, order
context, and the customer's resolution preference are attached automatically.

:::

## What you need

Before you start, gather:

- **Dixa admin access** — to create an API token.
- **A Dixa API token** — created under **Settings → Integrations → API tokens**.
  Dixa uses **bearer-token authentication**, so unlike Zendesk or Gorgias there
  is no account email or subdomain to provide.
- **An email integration ID** — the Dixa email contact endpoint new
  conversations belong to, e.g. `support@acme.dixa.io`. Find it under your Dixa
  contact endpoints. This is required before you can enable the integration.
- **A default agent ID** (optional) — the UUID of the agent new conversations
  should be assigned to. Leave it empty to let Dixa route conversations through
  its own queues.

Karla authenticates with your API token only — not your Dixa account password.

## Connect Dixa for conversation creation

### 1. Create an API token in Dixa

In Dixa, open **Settings → Integrations → API tokens** and create a token with
conversation access.

Name it something recognizable — e.g. `Karla Resolve Integration` — and copy
the token immediately.

:::warning
Treat the API token like a password. Do not share it in email or chat — enter
it only in the Karla portal.
:::

### 2. Note your email contact endpoint

Dixa creates email conversations against a **contact endpoint** — the mailbox
address new conversations belong to. You enter this value as the **Email
Integration ID** in the Karla portal.

Find it in Dixa under your contact endpoints (email channels), or list them via
the Dixa API (`GET /v1/contact-endpoints`). The value looks like:

```text title="Email integration ID"
support@acme.dixa.io
```

Enter the full contact-endpoint address — not a display name or queue label.

### 3. Connect Dixa in the Karla portal

In the [Karla portal](https://portal.gokarla.io/), navigate to
**Settings → Integrations** and select **Dixa**.

Under **API Configuration**, paste your **API Token** and save it. Karla stores
it in a secret manager and shows only a masked preview afterward.

### 4. Configure the email integration

Once the token is saved, the **Integration Settings** unlock:

| Field                    | Value                                                  |
| ------------------------ | ------------------------------------------------------ |
| **Email Integration ID** | The Dixa contact endpoint, e.g. `support@acme.dixa.io` |
| **Default Agent ID**     | Optional agent UUID to assign new conversations to     |

Save the email integration ID, then toggle the integration on. New Resolve
claims will create tagged conversations in Dixa automatically.

:::note
The integration cannot be enabled until an email integration ID is saved — Dixa
creates conversations against a mailbox, so the endpoint is required.
:::

:::note
If you do not see Dixa under **Settings → Integrations**, contact your account
manager — the integration may need to be enabled for your shop first.
:::

### 5. Optional settings

One optional setting lives alongside the connection:

- **Ticket templates** — customize the subject, body, tags, and attachments
  per claim reason. See
  [Helpdesk integrations → Ticket templates](./overview#ticket-templates).

## What Karla creates in Dixa

When a customer submits a Resolve claim, Karla opens a Dixa conversation with:

- **Subject and message** mapped from the claim reason and customer notes.
- **Customer** matched or created from the order email.
- **Tags** reflecting the Resolve flow type, resolution preference, and
  shipment phase (configured per shop).
- **Attachments** — claim photos and signatures uploaded to the conversation.
- **Order and shipment context** in the conversation — order number, carrier,
  tracking number, affected line items.

Your agents see a complete conversation without looking up the order elsewhere.

## Troubleshooting

**Cannot enable the integration**

- Save an **Email Integration ID** first — the toggle stays disabled until one
  is stored.

**Conversations not appearing**

- Confirm the integration toggle is enabled in the Karla portal.
- Confirm the email integration ID matches a real Dixa contact endpoint.
- Confirm Resolve is enabled and customers are submitting claims through an
  active Resolve flow.

**Authentication failed after saving**

- Confirm the API token was copied in full — no leading or trailing spaces.
- Confirm the token was created with conversation access and is not expired or
  revoked.

**Wrong contact endpoint**

- Double-check the **Email Integration ID** is the full mailbox address (e.g.
  `support@acme.dixa.io`) — not a queue name, agent email, or internal UUID.

## Where to next

- [Helpdesk integrations overview](./overview) — other connection options.
- [Zendesk](./zendesk) — native Zendesk integration setup.
- [Gorgias](./gorgias) — native Gorgias integration setup.
- [Webhooks](./webhooks) — push claim events to a custom endpoint instead.
- [Data processing](../data-processing) — the full claim payload shape.
- [Integration and automation](../integration-and-automation) — auto-refunds,
  routing rules, and custom transformations.
- [Integrate in your shop](../integrate-in-your-shop) — embed Resolve on your
  storefront via the Browser SDK.
