Counsel
The post-closing phase. Quote, contract, e-signature, Factur-X compliant invoice, Stripe Elements payment. All signed and traced.
Overview
Counsel handles the commercial cycle on the freelancer side. Once a prospect says yes in closing, you issue a quote from their CRM page. The quote becomes a contract via e-signature, the invoice comes out as Factur-X (PDF/A-3 + XML CII), payment is collected via embedded Stripe Elements.
You can pick three billing modes: manual (you issue each invoice), auto (the invoice fires on signature or delivery date), milestone (per-milestone invoice with client validation).
Multi-currency. Multi-VAT mode (FR, EU, non-EU, reverse-charge, micro exemption). Stripe Connect Standard for Pro, Connect Express for Enterprise.
What the module does
Quote
Markdown editor. Line items, net price, VAT, computed totals. Live preview. Email send with a public signable link.
Contract
Generated from a workspace template. Variables {{client_name}}, {{day_rate}}, {{start_date}}. E-signature with timestamp and IP. eIDAS compliant (AES advanced signature on the roadmap for QES qualified).
Factur-X invoice
EU mandatory format 2026. Visual PDF + embedded CII XML. BASIC level shipped. Strict PDF/A-3 and PDP on roadmap for full FR compliance.
Stripe Elements
Payment on the invoice page. Card, SEPA, Apple Pay. Stripe webhook flips status to paid. Manual refund via /counsel/invoices/[id].
Multi-mode
Manual (default), auto (cron), milestone (per-milestone client validation). Per-contract toggle.
Workspace templates
Each workspace owns its quote and contract templates. Variables resolved on issuance.
How to use it
- 01
Close
Prospect says yes on the call. You go back to /crm/contacts/[id].
- 02
Quote
Click "Issue quote". Pick the template, fill in the variables.
- 03
Send
The quote goes out by email with a public link. Prospect signs online.
- 04
Contract
After signature, the contract is generated and signed by both parties.
- 05
Invoice
Depending on the mode, the invoice fires immediately or on date. Factur-X format.
- 06
Payment
The client pays via Stripe Elements on the invoice page. Webhook updates.
Preview
Routes in Kernel
- /counsel
- /counsel/quotes
- /counsel/contracts
- /counsel/invoices
- /counsel/templates