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

# Shared Pipelines

> Give partners and your team one CRM-drawn view of the deals you work together - and collaborate on each record in context, with comments, files, and tasks, scoped to exactly what partners should see and edit.

export const Headless = ({prompts = []}) => {
  const PromptRow = ({prompt}) => {
    const [copied, setCopied] = useState(false);
    const copy = () => {
      try {
        navigator.clipboard?.writeText(prompt);
      } catch {}
      setCopied(true);
      setTimeout(() => setCopied(false), 1600);
    };
    return <div className="group flex items-center justify-between gap-3 px-4 py-3 transition-colors hover:bg-[#FD90FF]/[0.06]">
        <span className="text-sm leading-relaxed text-zinc-700 dark:text-zinc-200">{prompt}</span>
        <button type="button" onClick={copy} aria-label={copied ? "Copied to clipboard" : "Copy prompt"} className={`shrink-0 rounded-md p-1.5 transition-all hover:bg-[#FD90FF]/10 focus:opacity-100 focus:outline-none ${copied ? "text-[#FD90FF] opacity-100" : "text-zinc-400 opacity-0 group-hover:opacity-100 dark:text-zinc-500"}`}>
          {copied ? <svg viewBox="0 0 24 24" fill="none" className="h-4 w-4" aria-hidden="true">
              <path d="M20 6L9 17l-5-5" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
            </svg> : <svg viewBox="0 0 24 24" fill="none" className="h-4 w-4" aria-hidden="true">
              <rect x="9" y="9" width="11" height="11" rx="2" stroke="currentColor" strokeWidth="2" />
              <path d="M5 15V5a2 2 0 0 1 2-2h10" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
            </svg>}
        </button>
      </div>;
  };
  return <>
      <p>
        Introw is <strong>headless</strong> by design: run everything here in plain language from Claude, ChatGPT,
        Slack, Teams, or your own CRM through Introw's <a href="/features/developer/mcp">MCP server</a>, with every
        action written straight back to your CRM source of truth. The portal is one surface, never the only one.
      </p>

      {prompts.length > 0 ? <div className="not-prose my-6 overflow-hidden rounded-2xl border border-zinc-200/80 bg-white shadow-sm dark:border-white/10 dark:bg-white/[0.02]">
          <div className="flex items-center gap-2 border-b border-zinc-200/80 bg-gradient-to-r from-[#FD90FF]/10 via-[#FD90FF]/5 to-transparent px-4 py-2.5 dark:border-white/10">
            <svg viewBox="0 0 24 24" fill="none" className="h-4 w-4 text-[#FD90FF]" aria-hidden="true">
              <path d="M12 2.5l2 5.5 5.5 2-5.5 2-2 5.5-2-5.5L4.5 10l5.5-2 2-5.5z" fill="currentColor" />
              <path d="M18.5 14l1 2.6 2.6 1-2.6 1-1 2.6-1-2.6-2.6-1 2.6-1 1-2.6z" fill="currentColor" opacity="0.55" />
            </svg>
            <span className="text-xs font-semibold uppercase tracking-wider text-zinc-500 dark:text-zinc-400">
              Try it from your LLM
            </span>
          </div>

          <div className="flex flex-col divide-y divide-zinc-100 dark:divide-white/[0.06]">
            {prompts.map(prompt => <PromptRow key={prompt} prompt={prompt} />)}
          </div>

          <a href="/headless" className="flex items-center justify-between gap-2 border-t border-zinc-200/80 px-4 py-2.5 text-sm font-medium text-zinc-600 no-underline transition-colors hover:text-[#FD90FF] dark:border-white/10 dark:text-zinc-300">
            <span>See the full headless playbook</span>
            <svg viewBox="0 0 24 24" fill="none" className="h-4 w-4" aria-hidden="true">
              <path d="M5 12h14M13 6l6 6-6 6" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
          </a>
        </div> : <Card title="See the headless motion" icon="wand-magic-sparkles" href="/headless">
          The agentic playbook - lifecycle deep dives and a Claude Code skill library that run your partner program
          from Claude, ChatGPT, Slack, and your CRM.
        </Card>}
    </>;
};

> Shared Pipelines gives both sides one view of the deals you are working together - and turns each of those deals into a shared workspace. Partners see their attributed pipeline, your team sees the same, and everyone collaborates on the actual CRM record.

## What it does

Shared Pipelines brings the pipeline and the record together. Partners see the deals
attributed to them in a pipeline view inside the portal, while your team sees the same
opportunities org-wide or per partner inside Introw. Because the records are drawn from your
CRM through attribution, the two views never diverge: a stage change in the CRM shows up for
everyone who should see it.

Each deal in that pipeline is also a collaboration surface. Any attributed CRM object - a
deal, contact, company, ticket, or custom object - opens with a shared activity feed for
comments, a files area, tasks, and the properties you expose. Reps work it from inside HubSpot
or Salesforce, partners from the portal or an embed, so neither side leaves the tool they live
in.

You stay in control of scope. Attribution decides which deals belong to which partner, filters
narrow the pipeline view, collaborators decide which partner contacts are in the loop on a
record, and field-level settings decide which properties partners can **see** and which they
can **edit** - all without handing out a CRM seat.

## The problem it solves

Partners working blind to pipeline, and reps blind to the partner, is one of the biggest drags
on channel revenue:

* **Partners cannot see their own deals** → A pipeline view in the portal shows partners the opportunities attributed to them.
* **Vendor and partner views drift apart** → Both sides read from the same CRM-attributed records, so there is no reconciling two pipelines.
* **Updates get lost in email threads** → A shared activity feed keeps the conversation on the record, where it belongs.
* **You cannot control what partners see or change** → Attribution, filters, collaborators, and visible/editable properties scope the view precisely, with no CRM seat for partners.

## From problem to solution

Shared Pipelines makes the CRM's pipeline a shared, scoped surface, and each record a shared
workspace. Attribution and filters decide what shows, collaborators and field-level visibility
decide who sees and edits what, and both sides read and act on the same records. Partners get
visibility and a way to contribute; your team keeps a per-partner view and full control; the
CRM stays the single source of truth.

```mermaid theme={"theme":{"light":"github-light","dark":"github-dark"}}
flowchart LR
  attribution["Attribution and filters"] --> pipeline["Shared, scoped pipeline"]
  pipeline --> collaborate["Both sides collaborate"]
  collaborate --> crm["Writes back to CRM"]
```

## Use cases

<CardGroup cols={2}>
  <Card title="Show partners their deals" icon="circle-check">
    Give partners a pipeline view of the opportunities attributed to them.
  </Card>

  <Card title="Co-sell on a deal" icon="circle-check">
    Comment and share files with a partner directly on the deal record.
  </Card>

  <Card title="Scope the view" icon="circle-check">
    Filter pipeline and choose which properties partners can see and edit.
  </Card>

  <Card title="Work from your CRM" icon="circle-check">
    Reps read pipeline and collaborate from inside HubSpot or Salesforce.
  </Card>
</CardGroup>

## Impact

* **CRM-native** - Pipeline and collaboration are drawn from CRM-attributed records, so vendor and partner views stay in sync.
* **Work where you already are** - Reps work from the CRM and partners from the portal, each in the tool they already use.
* **Trust & accuracy** - Attribution, filters, and field-level visibility keep the shared view scoped and correct.

## Who it's for

<CardGroup cols={2}>
  <Card title="Partner Manager (CAM / PAM)" icon="user">
    Reads partner pipeline and keeps shared deals moving.
  </Card>

  <Card title="Sales Rep / AE" icon="user">
    Collaborates with partners on shared accounts without leaving the CRM.
  </Card>

  <Card title="Partner - Sales & Marketing" icon="user">
    Sees their attributed deals, prioritizes follow-up, and works the record.
  </Card>

  <Card title="RevOps" icon="user">
    Configures attribution and the field-level scope partners get.
  </Card>
</CardGroup>

## Works with

{/* CONNECTS:START - generated content goes here */}

<CardGroup cols={2}>
  <Card title="CRM" icon="plug" href="/features/integrations/crm">
    Collaborate from inside the CRM record.
  </Card>

  <Card title="Deal Coaching" icon="robot" href="/features/ai/deal-coaching">
    AI coaches partners on pipeline deals.
  </Card>

  <Card title="Tasks" icon="handshake" href="/features/co-selling/tasks">
    Add tasks to any shared deal.
  </Card>

  <Card title="Shared Pipeline" icon="file-signature" href="/features/deal-registration/shared-pipeline">
    Registered reseller deals work on this shared pipeline.
  </Card>
</CardGroup>

## Headless

<Headless
  prompts={[
"Show all partner-attributed deals and their current stage.",
"Which shared deals have stalled with no activity in two weeks?",
"Update the amount on the Globex deal to $95k.",
]}
/>

## Going deeper

<CardGroup cols={2}>
  <Card title="How to" icon="screwdriver-wrench" href="./technical">
    Setup, configuration, and all how-to guides.
  </Card>

  <Card title="API reference" icon="code" href="/general/introduction">
    Integration surface and code.
  </Card>
</CardGroup>
