Quoting
Priced, versioned quotes that a client accepts in their own portal and that convert into an invoice in one step.
The problem
The quote goes out as a PDF attached to an email. The client replies “looks good, but drop the onsite line” and someone edits the spreadsheet and re-sends. Three exchanges later nobody is certain which version was agreed, the accepted total does not match anything on file, and the invoice is retyped by hand from whichever attachment was closest to the top of the thread.
What Solidlio does about it
A quote is a record, not a document. It carries versions, so revising one supersedes the previous version without destroying it. Optional lines let the client remove what they do not want without a new round trip — they toggle the line and the total updates. Acceptance happens in the client’s portal against their signed-in identity, so who accepted and when is recorded rather than inferred from an email. Converting an accepted quote builds the invoice in a single transaction, carrying the currency, per-line taxability and discount treatment with it.
Capabilities
| Capability | What it does |
|---|---|
| Versioned revisions | Revising creates a new version and links it to the one it supersedes; both stay readable. |
| Client-selectable lines | Mark lines optional; the client includes or excludes them and the total recalculates. |
| Portal acceptance | Accept and decline happen against a signed-in client identity, not an anonymous link. |
| Expiry enforcement | A daily job moves quotes past validUntil to EXPIRED, so open pipeline stops counting them. |
| One-step conversion | Accepted quote becomes an invoice in one transaction, with currency, taxability and account intact. |
| Discount fidelity | A quote discount converts as proportionally split negative lines, so line sum always matches subtotal. |
| Quote for any client | An MSP raises quotes for any client account it services, not only its own. |
| Templates | Reusable line-item sets, per account, plus a platform-published set. |
| PDF with terms | Generated PDF includes terms and conditions and matches the totals shown on screen. |
| Duplicate | Copy any quote as a fresh draft. |
Built for MSPs and their clients
| Organization (client) | MSP | |
|---|---|---|
| Visibility | Sees its own quotes from SENT onward — never drafts | Sees quotes across every client account it services |
| Composition | Toggles optional lines only | Builds and prices every line |
| Decision | Accepts or declines, from its own portal | Cannot accept on the client’s behalf |
| Approval | Not involved | Internal submit / approve / reject before sending |
| Conversion | Not involved | Converts an accepted quote into an invoice |
Client-facing quote routes carry no role floor and instead pin every request to the caller’s own organization, so a client contact can act on their quotes without holding a staff role — and cannot reach anyone else’s.
How it works
- Draft — build the quote against a client organization and add priced lines, marking any the client may opt out of.
- Approve — optionally submit it for internal sign-off before it leaves the building.
- Send — the quote goes to the organization’s billing contact and becomes visible in their portal.
- Client reviews — opening the quote marks it viewed; the client toggles optional lines and sees the revised total.
- Decide — accept or decline, recorded against the signed-in client user. Past
validUntil, both are refused. - Convert — one action turns the accepted quote into an invoice carrying its currency, per-line taxability and discount.
Compliance and audit
Every quote carries a version chain: a revision supersedes its predecessor without deleting it, so the document that was actually sent remains reconstructable. Acceptance and decline are recorded against an authenticated portal identity rather than an email reply, and both are refused after the quote’s expiry date. Conversion to an invoice happens inside a single database transaction, so a failure cannot leave an orphaned invoice alongside a still-convertible quote.
Cross-tenant access is denied on every route, including the client portal, and quote templates published platform-wide are readable by every tenant but writable only by Solidlio.
Editions
Quoting carries no plan gate. Every capability above is available on every tier, including Free.
Send a quote the client can act on, and turn their answer into an invoice without retyping it.