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

# Pipedrive

> Connect Qwoty to Pipedrive to embed quoting in your deals and automatically synchronize deals, organizations, products, and discounts.

The Qwoty - Pipedrive integration embeds Qwoty's quoting interface directly inside Pipedrive. Once connected, your team can create and manage quotes from a deal without leaving Pipedrive, and Qwoty keeps the deal, its organization, its products, and its discounts up to date automatically as the quote evolves.

## Overview

The integration provides:

* A **Qwoty card** embedded on Pipedrive deal pages, with quick actions like creating a quote directly from the deal.
* Creation and management of quotes, subscriptions, and customer records from inside Pipedrive.
* Automatic, real-time synchronization of the quote's commercial data (deal properties, deal stage, organization, products, and discounts) back to Pipedrive whenever the quote changes.

<Info>
  Synchronization is triggered automatically whenever a quote linked to a Pipedrive deal is created, updated, or changes status. There is no manual sync button and no polling delay to configure.
</Info>

## Data synchronization

```mermaid theme={null}
flowchart LR
    subgraph QWOTY["Qwoty"]
        direction TB
        Q_CUSTOMER["Customer"]
        Q_CONTACT["Primary contact"]
        Q_QUOTE["Project (Quote)"]
        Q_STATUS["Quote status"]
        Q_LINE_ITEMS["Line items<br/>(one-off &amp; recurring)"]
        Q_DISCOUNT["Global discount"]
        Q_PRODUCT["Product"]
    end

    subgraph PIPEDRIVE["Pipedrive"]
        direction TB
        PD_ORG["Organization"]
        PD_PERSON["Person"]
        PD_DEAL["Deal"]
        PD_STAGE["Deal stage"]
        PD_DEAL_PRODUCT["Deal products"]
        PD_DEAL_DISCOUNT["Deal discount"]
        PD_PRODUCT["Product"]
    end

    Q_CUSTOMER --> PD_ORG
    Q_CONTACT --> PD_PERSON
    Q_QUOTE -->|"PATCH"| PD_DEAL
    Q_STATUS -->|"move stage"| PD_STAGE
    Q_LINE_ITEMS -->|"REPLACE"| PD_DEAL_PRODUCT
    Q_DISCOUNT -->|"REPLACE"| PD_DEAL_DISCOUNT
    Q_PRODUCT -->|"UPSERT"| PD_PRODUCT

    classDef qwoty fill:#EFF6FF,stroke:#005FFF,color:#0F172A,stroke-width:1.5px;
    classDef pipedrive fill:#F8FAFC,stroke:#64748B,color:#0F172A,stroke-width:1.5px;

    class Q_CUSTOMER,Q_CONTACT,Q_QUOTE,Q_STATUS,Q_LINE_ITEMS,Q_DISCOUNT,Q_PRODUCT qwoty;
    class PD_ORG,PD_PERSON,PD_DEAL,PD_STAGE,PD_DEAL_PRODUCT,PD_DEAL_DISCOUNT,PD_PRODUCT pipedrive;

    style QWOTY fill:transparent,stroke:#CBD5E1,stroke-width:1px
    style PIPEDRIVE fill:transparent,stroke:#CBD5E1,stroke-width:1px
```

<AccordionGroup>
  <Accordion title="Customers and contacts" icon="users">
    A Qwoty **Customer** is synchronized with a Pipedrive **Organization**.

    ```text theme={null}
    The customer's **primary contact** is synchronized with a Pipedrive
    **Person**.
    ```
  </Accordion>

  <Accordion title="Projects, deals, and stages" icon="briefcase">
    A Qwoty **Project (Quote)** is associated with a Pipedrive **Deal**.

    ```text theme={null}
    When the quote changes, the corresponding deal is updated using a
    `PATCH` operation. When the quote's status changes, Qwoty also moves
    the deal to the Pipedrive stage mapped to that status.
    ```
  </Accordion>

  <Accordion title="Line items and recurring plans" icon="list">
    Each billable line item on the quote — one-off products as well as products on a recurring plan — is synchronized as a **deal product**.

    ```text theme={null}
    For recurring items, Qwoty also sets the deal product's billing
    frequency, using the closest cadence Pipedrive supports.
    ```
  </Accordion>

  <Accordion title="Discounts" icon="tag">
    A quote-level (global) discount is synchronized as a **deal discount**.

    ```text theme={null}
    Per-line-item discounts are synchronized as part of that line item's
    deal product instead (as a product-level discount), not as a
    separate deal discount.
    ```
  </Accordion>

  <Accordion title="Products and pricing" icon="box">
    A Qwoty **Product** is synchronized with a Pipedrive **Product**.

    ```text theme={null}
    The synchronization uses an UPSERT-style behavior:

    - If the product is already linked to a Pipedrive product, that
      product is reused and attached to the deal.
    - If it isn't, Qwoty creates a new product in the Pipedrive product
      catalog and links the two records for future syncs.
    ```
  </Accordion>
</AccordionGroup>

## Before you connect

Make sure that:

* You have access to your Qwoty workspace settings.
* You have a valid **Pipedrive** account and can authorize the connection.
* Your Pipedrive user has permission to access the objects used by the integration (see [Pipedrive permissions](#pipedrive-permissions)).
* Products that should be synchronized contain the required pricing information.

<Warning>
  Missing Pipedrive permissions may prevent some records from being created or updated.
</Warning>

## Connect Pipedrive

<Steps>
  <Step title="Open the integrations settings">
    In Qwoty, open **Settings → Developers → Integration**.
  </Step>

  <Step title="Select Pipedrive">
    Find the **Pipedrive** card in the list of available CRM integrations and click **Connect**.
  </Step>

  <Step title="Authorize Qwoty">
    Sign in to Pipedrive, select the account to link, and approve the requested access.
  </Step>

  <Step title="Complete the connection">
    Return to Qwoty after authorization.

    ```text theme={null}
    A Qwoty card now appears on Pipedrive deal pages, and Qwoty can begin
    synchronizing supported records with Pipedrive.
    ```
  </Step>
</Steps>

<Check>
  Once connected, you can manage the integration — including field mapping and deal stage mapping — from the same integration settings page.
</Check>

## Add users

Once Qwoty is connected, choose which Pipedrive users can access it.

<Steps>
  <Step title="Open your Pipedrive extensions">
    In Pipedrive, click the **puzzle piece** icon in the top right corner.
  </Step>

  <Step title="Select Qwoty">
    Select **Qwoty** from the list of apps.
  </Step>

  <Step title="Open user management">
    In the top right, select **Manage users**.
  </Step>

  <Step title="Select users">
    Select the users you want to give access to Qwoty.
  </Step>
</Steps>

## Synchronization behavior

<AccordionGroup>
  <Accordion title="Deal stage automation" icon="arrows-turn-right">
    For each Pipedrive pipeline you use with Qwoty, you map every Qwoty quote status to a target deal stage in the integration settings.

    ```text theme={null}
    Whenever a quote's status changes (for example from Draft to Sent, or
    to Accepted), Qwoty automatically moves the linked deal to the
    mapped stage — no manual pipeline update required.
    ```
  </Accordion>

  <Accordion title="Record creation and updates" icon="pen">
    Deal and organization properties are updated (`PATCH`) whenever their corresponding Qwoty project or customer changes.

    ```text theme={null}
    Products that don't already exist in Pipedrive are created; existing
    ones are reused and updated.
    ```
  </Accordion>

  <Accordion title="Line items and discounts are replaced, not merged" icon="rotate">
    Each time a quote is synchronized, Qwoty replaces the deal's product list and quote-level discount with the current state of the quote.

    ```text theme={null}
    Previously synchronized deal products and the previous deal discount
    are removed and recreated to match the quote. Avoid manually editing
    Qwoty-synchronized products or discounts directly on the deal, since
    manual changes are overwritten at the next sync.
    ```
  </Accordion>

  <Accordion title="Recurring billing frequency" icon="repeat">
    Pipedrive deal products support a fixed set of recurring cadences: weekly, monthly, quarterly, semi-annually, and annually.

    ```text theme={null}
    Qwoty maps each recurring plan's billing frequency to the closest
    cadence Pipedrive supports. Frequencies with no direct equivalent
    (for example biweekly, or multi-year cycles) are approximated to the
    nearest supported cadence.
    ```
  </Accordion>

  <Accordion title="Relationships" icon="link">
    Qwoty preserves the logical relationships between synchronized records.

    ```text theme={null}
    For example:

    - A deal product is linked to its deal.
    - A deal discount is linked to its deal.
    - A Pipedrive product created by Qwoty stays linked to the Qwoty
      product it came from, so later syncs reuse it instead of
      duplicating it.
    ```
  </Accordion>
</AccordionGroup>

## Object mapping

| Qwoty object | Pipedrive object | Operation |
| - | - | - |
| Customer | Organization | `PATCH` |
| Primary contact | Person | `PATCH` |
| Project (Quote) | Deal | `PATCH` |
| Quote status | Deal stage | Move stage |
| Line item (one-off or recurring) | Deal product | Replace |
| Global (quote-level) discount | Deal discount | Replace |
| Product | Product | `UPSERT` |

<Tip>
  For the full list of Qwoty fields that can be synchronized on each of these objects, see [CRM sync fields](/developers/integrations/crm/sync-fields).
</Tip>

## Pipedrive permissions

The Pipedrive user authorizing the connection must be able to access the objects required by the integration.

<AccordionGroup>
  <Accordion title="CRM records" icon="address-book">
    The integration requires access to:

    ```text theme={null}
    - Deals
    - Organizations
    - Persons
    ```
  </Accordion>

  <Accordion title="Products" icon="tags">
    To synchronize products, pricing, and deal products, the integration requires access to:

    ```text theme={null}
    - Products
    - Deal products
    ```
  </Accordion>

  <Accordion title="Discounts and custom fields" icon="tag">
    To synchronize quote-level discounts and mapped custom fields, the integration requires access to:

    ```text theme={null}
    - Deal discounts
    - Custom fields on deals, organizations, and products
    ```
  </Accordion>
</AccordionGroup>

## Disconnect Pipedrive

To stop future synchronization, open the Pipedrive integration from your Qwoty workspace settings and disconnect it.

<Warning>
  Disconnecting Pipedrive stops future synchronization. It does not automatically delete records that were previously created in Pipedrive.
</Warning>

## Troubleshooting

<AccordionGroup>
  <Accordion title="The Pipedrive connection cannot be authorized" icon="key">
    Verify that:

    ```text theme={null}
    - You are signing in to the correct Pipedrive account.
    - Your Pipedrive user is active.
    - Your user is allowed to authorize connected apps.
    - Your browser is not blocking the authorization window.
    ```
  </Accordion>

  <Accordion title="A deal is not updated" icon="briefcase">
    Confirm that the Qwoty project is correctly associated with a Pipedrive deal.

    ```text theme={null}
    Also verify that the Pipedrive user used for the connection has
    permission to update the Deal object and the relevant fields.
    ```
  </Accordion>

  <Accordion title="The primary contact is not updated" icon="user">
    Confirm that the Qwoty customer's primary contact is correctly linked to a Pipedrive Person.

    ```text theme={null}
    Also verify that the Pipedrive user used for the connection has
    permission to update the Person object and the relevant fields.
    ```
  </Accordion>

  <Accordion title="The deal does not move to the expected stage" icon="arrows-turn-right">
    Check that:

    ```text theme={null}
    - The deal belongs to the pipeline you configured in the
      integration settings.
    - The quote status you expect is mapped to a stage on that
      pipeline.
    - The stage mapped in Qwoty still exists in Pipedrive (a renamed
      or deleted stage breaks the mapping).
    ```
  </Accordion>

  <Accordion title="Deal products are not created or updated" icon="list">
    Check that:

    ```text theme={null}
    - The corresponding deal exists.
    - The line item is marked as billable on the quote.
    - The connected Pipedrive user can create and update deal products.
    - The product contains valid pricing information.
    ```
  </Accordion>

  <Accordion title="A product is not synchronized" icon="box">
    Verify that the product contains the required information and that the connected user can create or update Products in Pipedrive.
  </Accordion>

  <Accordion title="A discount is missing or outdated" icon="tag">
    Confirm that the quote has a global (quote-level) discount configured.

    ```text theme={null}
    Remember that per-line-item discounts appear on the corresponding
    deal product instead of as a separate deal discount.
    ```
  </Accordion>
</AccordionGroup>

## Need help?

If the integration remains unavailable after checking the connection and permissions, contact Qwoty support with:

* The affected Qwoty record.
* The corresponding Pipedrive record, when available.
* The approximate time of the synchronization attempt.
* A description of the expected result.

## Related

<CardGroup cols={2}>
  <Card title="CRM sync fields" icon="table-list" href="/developers/integrations/crm/sync-fields">
    Reference of every Qwoty field that can be synchronized with a connected CRM, beyond the base objects above.
  </Card>

  <Card title="CRM mapping" icon="arrows-left-right" href="/user-guide/data-model/reference/crm-mapping">
    Configure sync direction (Bidirectional, CRM → Qwoty, Qwoty → CRM) for any mappable field, including custom fields.
  </Card>

  <Card title="CRM integrations" icon="plug" href="/user-guide/settings/integrations/crm">
    Connect HubSpot, Salesforce, or Pipedrive.
  </Card>

  <Card title="Webhooks" icon="bolt" href="/developers/core-concepts/webhooks">
    Learn how Qwoty's webhooks work if you want to react to quote or deal changes yourself.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.