# Notion Sales Pipeline

> Maintain a lightweight sales pipeline in Notion — create deal pages, move stages, log activity, generate weekly summaries. For founders and small teams without a full CRM. Trigger on "add this deal to Notion", "update my Notion pipeline", or "summarize my Notion deals".

- Skill: `composio-community/notion-sales-pipeline` (Agent Skill)
- Install (CLI): `npx skillmds@latest add composio-community/notion-sales-pipeline`
- Raw SKILL.md: https://api.skillmd.com/api/skills/composio-community/notion-sales-pipeline/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: composio-community (https://skillmd.com/u/composio-community)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/composio-community/notion-sales-pipeline

---


# Notion Sales Pipeline

Manage a simple deal pipeline as a Notion database via Composio.

## Workflow

1. **Identify the database.** Ask for the Notion database URL (or name + workspace). Required schema: `Name`, `Stage` (select), `Account` (text), `Amount` (number), `Next Step` (text), `Close Date` (date), `Owner` (person).
2. **Link Notion:**
   ```bash
   composio link notion
   ```
3. **Find the DB ID:**
   ```bash
   composio execute NOTION_SEARCH -d '{ "query": "Pipeline" }'
   ```
4. **Add a deal:**
   ```bash
   composio execute NOTION_CREATE_DATABASE_ITEM -d '{
     "database_id": "abc...",
     "properties": {
       "Name": { "title": [{ "text": { "content": "Acme — Expansion" }}]},
       "Stage": { "select": { "name": "Discovery" }},
       "Amount": { "number": 45000 }
     }
   }'
   ```
5. **Update stage:**
   ```bash
   composio execute NOTION_UPDATE_PAGE -d '{ "page_id": "...", "properties": {...} }'
   ```
6. **Weekly summary:** Query DB, group by Stage, write a summary page or Slack message:
   ```bash
   composio execute NOTION_QUERY_DATABASE -d '{ "database_id": "..." }'
   ```

## Summary template

```
# Pipeline — Week of <date>
Open: <n> deals · $<sum> weighted
By stage: Disco <n>/$<amt> · Eval <n>/$<amt> · Proposal <n>/$<amt>
Moved this week: <list>
Stalled > 21 days: <list>
```

## Guardrails

- Before creating a new deal, query by Account to avoid duplicates.
- Never delete a deal page — set Stage to `Closed Lost` with a reason instead.
- If Stage changes to `Closed Won`, prompt the user to confirm amount and close date.

