Skip to Content
BusinessService Journey4. Quote & Acceptance

Quote & Acceptance

When a manager accepts an expert quote, the platform issues its customer quote to the customer. The quote formalises the financial terms of the engagement — the expert’s delivery cost, Sustentus’s platform fee on it, and the price the customer pays — and acts as the commercial agreement before work begins.

Flow

Quote Generation

A draft customer quote is created with every expert quote, and it is issued — put in front of the customer — when a manager accepts that expert quote. No manual step is required. The quote captures:

FieldSourceDescription
amountproposal.priceExpert delivery cost
platformMarkupPercentthe tenant’s platform markup, at the moment of issueSustentus’s rate on this quote
platformMarkupAmountamount × platformMarkupPercentSustentus’s platform fee
totalamount + platformMarkupAmountTotal customer price
currencyThe customer’s currency — EUR / USD / GBP (EUR when the customer has none)Billing currency

Where the markup comes from. The rate is the tenant’s platform markup, which Sustentus sets per tenant from the tenant-management console (see platform overview). It is read once, when the quote is issued, and stored on the quote as a rate and an amount; changing the tenant’s markup afterwards never moves an issued quote. If the expert revises their price after issue (the negotiation loop), the fee is recomputed at the quote’s stored rate. A tenant with no markup set issues a quote with no fee, and the quote says so. A draft carries no fee, and quotes issued before the markup existed show cost equal to price and no fee line.

There is no “vendor charges” line and no gross-margin figure: the markup is Sustentus’s fee, not the vendor’s margin, so the platform fee is what the demo script’s “estimated gross margin” becomes. The fee is recorded and shown — the platform does not invoice or collect it.

The reference. A new quote is numbered QTE-<request number>-<n>, where n counts the lead’s quotes (1, 2, …). Quotes created before this keep their older Q-… references.

The quote is presented to the customer in the platform itself — no separate quote document is generated.

Where the quote is decided

The quote is a step on the Customer Service Journey (/workspace/<lead>), not a separate screen. Its section there states the quote — reference, the expert, the proposed start and completion dates, the milestone count and the customer’s approval date and status — to every party to the lead, with the money shown according to who is reading:

ReaderSees
Vendor, CSM, SDM, adminExpert delivery cost, platform fee (value and %), total customer price
CustomerTotal customer price only — never the cost or the fee
ExpertExpert delivery cost only — never the fee or the customer price

The same split holds on Finances → Quotes, on the customer’s “a quote is waiting” card and on the Live Service Pipeline board, where an expert’s committed leads read the delivery cost on the card, the column totals and the tile — never the customer price. Invoices bill the customer price; each milestone invoice also records the expert’s share of the delivery cost, which is what the expert’s earnings count. Before a customer quote is issued, a customer sees no price on an expert quote — its price is the expert’s cost — and no amount on the delivery plan: a draft quote’s total is still the expert’s cost, so the milestones read “Quote not issued yet” and the contract value waits for the issue.

  • The customer decides there. While the quote is awaiting an answer, the section carries Accept quote and Reject quote (rejection asks for a reason), and the workspace header promotes accepting the quote as the next best action. Once the quote is accepted or rejected the actions disappear and the section shows the resolved status.
  • The customer is told a quote is waiting. Submitting the quote raises a notification for them that links straight to the Customer Service Journey.
  • The customer can find the lead before it is a project. A lead awaiting a quote decision appears in the customer’s projects list under Active, and their overview, workspace, activity and messages pages all point at it — it is not yet an active project, because that begins on acceptance. If those pages cannot load the customer’s project, they say so and offer Try again rather than inviting a new request.
  • The CSM and the SDM watch the same section. Where a manager endorsement applies, Approve quote sits alongside; the Finances → Quotes detail page and the workspace show the same status.

Quote Status Workflow

StatusMeaning
quote_draftQuote has been generated and is being prepared
quote_submittedQuote has been sent and is awaiting customer review
quote_acceptedCustomer has approved the quote; project can begin
quote_rejectedCustomer has rejected the quote; the lead returns to the bid process

These four names are the whole vocabulary, matched exactly. If a lead’s quote carries anything else — a legacy value, a name in the wrong case — accepting the expert quote is refused before anything is written: the expert quote stays open for review, the lead stays where it is, and the SDM is told which stored value has to be corrected. Only a quote the platform can name a status for can be sent to a customer, so refusing early is what keeps an expert quote from being awarded to a customer quote nobody can act on.

Who sees the rejection reason

A rejection sends the lead back to the bid pool, so the experts about to quote again are exactly the people reading the lead’s activity feed. The customer’s reason is about the awarded expert’s price, and it is not written for them: the feed records only that the quote was declined.

The reason itself is kept and reaches the people it concerns — the awarded expert and the managers are notified with it, it stays on the expert quote under “Reason for rejection”, and it shows on the activity section of the Customer Service Journey for an admin, CSM or SDM. This is the same rule the expert quotes step states for a rejected expert quote.

Project Kick-off

Once the quote is accepted:

  1. isActiveProject = true is set on the lead record
  2. The lead is removed from the bid pool
  3. The expert, the CSM and the SDM are notified that the quote was accepted, and every active admin of the tenant is told the lead is now a project (“Lead #N is now a project”)
  4. The acceptance is recorded on the lead’s activity feed
  5. Milestone tracking begins

From this point the journey moves into the Delivery stage, where the expert delivers against the milestones defined in the accepted expert quote.

Quote Fields

FieldTypeDescription
quoteIdStringHuman-readable quote reference
leadLead refThe originating lead
proposalProposal refThe accepted expert quote this quote is based on
expertUser refThe expert delivering the work
customerUser refThe customer paying for the work
managerUser refThe assigned CSM
vendorUser refThe vendor account
amountNumberExpert delivery cost
platformMarkupPercentNumberThe tenant’s markup rate at issue (none when unset)
platformMarkupAmountNumberSustentus’s platform fee, cost × rate
totalNumberTotal customer price, cost + platform fee
currencyStringEUR, USD, or GBP
statusStringCurrent quote status name
Last updated on