The standard D365 CE sales pipeline runs through four tables, each representing a stage of maturity in a deal.

Lead

An unqualified potential sale — a name and some interest, not yet confirmed as viable. Leads are typically qualified (converted) into an Account, Contact, and Opportunity, or disqualified and closed out if they’re not a fit.

Opportunity

A qualified, in-progress deal, tracked through sales stages (often via a Business Process Flow — Qualify, Develop, Propose, Close) with an estimated value and close date. This is where most day-to-day sales activity and forecasting happens.

Quote

A formal, line-itemed price proposal generated from an Opportunity’s products, which can be revised, sent to the customer, and ultimately won or lost. Only one quote per Opportunity can be active at a time, though multiple draft revisions can exist.

Order

Created once a Quote is won — represents a confirmed, committed sale ready for fulfillment or invoicing. From here, data often flows out to a separate finance/ERP system (which may or may not be Dynamics 365 Finance & Operations) for actual invoicing and fulfillment.

Products and Price Lists. Quotes and Orders pull their line items from the Product catalog, priced against a Price List — both configured centrally. Getting the product/price list setup right early matters: it’s the data both Quotes and Orders depend on, and retrofitting it after deals are already in flight is disruptive.

Why this matters beyond “knowing the tables”

Understanding this chain is what lets you reason about automation and reporting requests sensibly — “notify the account manager when a Quote is won” is really “trigger off the Order being created,” and forecasting reports are built on Opportunity estimated revenue and close dates, not Orders. Mapping a request to the right table in this chain is half the work of answering it correctly.