# Opportunity

An **opportunity** is one commercial deal Connect tracks on the pipeline: a title, a value, the person and company it belongs to, and exactly one of five stages — open, proposal sent, negotiating, won or lost. The first three are the open stages that make up the pipeline; the last two close it.

- **Status:** Available
- **Audience:** both
- **In the app:** #/pipeline
- **Last verified:** 2026-09-10
- **Canonical:** https://connectbyjbrh.com/docs/glossary/opportunity/

## Five stages, and what each one implies

| Stage | Shown as | What it says about the relationship |
|---|---|---|
| open | Open | A deal exists; the person sits at the opportunity stage |
| proposal | Proposal sent | Something priced has gone out |
| negotiation | Negotiating | Terms are being discussed |
| won | Won | The person becomes a client — and that move needs a human yes |
| lost | Lost | Closed without a sale; the relationship stage is not dragged backwards |

The pipeline totals only the open three. That is why a workspace's pipeline value drops the moment a deal is won rather than rising — the money has stopped being forecast and started being real, and it is counted somewhere else.

Moving to a stage also moves the [lifecycle stage](/docs/glossary/lifecycle-stage/) of the person the deal belongs to. Open, proposal and negotiation all place them at *opportunity*. Winning places them at *client*, and that is the one transition Connect is not allowed to make on its own.

## Why winning needs a person

Becoming a client is a commercial commitment, not a data update. A workspace that has asked to see outbound actions before they happen has, in substance, asked to see this too — so the transition into *client* is on the short list of moves requiring human confirmation, and Connect proposes it rather than performing it.

Every transition is also idempotent. The same evidence often arrives twice — a re-processed message, a retried request, a redelivered webhook — and a reference key means the second arrival returns the original event instead of moving the relationship a second time. Without that, one signed order read twice reads as two.

Both facts are recorded rather than merely applied: the stage lives on the record, and the transition is written separately with who moved it and why. A column on its own cannot settle a disputed invoice six months later.

## Not a CRM pipeline

There are no custom pipelines, no probability weightings and no forecast model here. Five stages is the shortest sequence that still distinguishes the things a business treats differently, and anyone who needs weighted forecasting has a CRM already. Connect's interest in the stage is behavioural — knowing where a deal stands so it answers and follows up correctly — rather than analytical.

**Not a [deal](/docs/glossary/deal/)** — Same record, different register. *Deal* is the everyday word; *opportunity* is the name in the model and the API.
**Not a [follow-up](/docs/glossary/follow-up/)** — A follow-up is a dated commitment to make contact. Deals generate follow-ups; a follow-up on its own is not a deal.
**Not a quote** — A priced document is an artefact you send. The opportunity is what it is about, and outlives several of them.

## Questions

### Can one person have several opportunities?

Yes, and they are independent. Their stages do not have to agree, and the relationship stage follows the furthest one rather than the newest.

### What happens to the relationship when a deal is lost?

Nothing is dragged backwards. Losing a deal closes the deal; the person keeps the stage they had reached, because having lost one piece of business is not the same as never having been in any.

### Does Connect create opportunities by itself?

It can propose one from a conversation, and the Connect Assistant has tools to create and move them. What may happen without asking is decided by [autonomy](/docs/glossary/autonomy/), and the move into won is confirmed by a person regardless.

## Related

- [Deal](https://connectbyjbrh.com/docs/glossary/deal/)
- [Lifecycle stage](https://connectbyjbrh.com/docs/glossary/lifecycle-stage/)
- [Opportunities: the deal record](https://connectbyjbrh.com/docs/sales/opportunities/)
- [Closing a deal: won and lost](https://connectbyjbrh.com/docs/sales/won-and-lost/)
- [Making a next-best-action defensible](https://connectbyjbrh.com/research/evidence-for-next-action/)

## What this page is based on

- `backend/app/sales.py` — the stage constants and the relationship each maps to
- `backend/app/journey.py` — six stages, the human-confirmed transition, idempotency
- `docs-source/facts.py` — CANONICAL_TERMS Opportunity
