KamoCRM

Email a work order's invoice, and its customer link on the signer's invoice page

FeatureSecurityService
Shipped
November 11, 2026 at 9:06 AM UTC
Author
Kamo
Commit
6615574

The public "view your invoice online" page already exists for subscription invoices: the signer app's sign.<org domain>/<locale>/i/<token>, branded, phone-ready, with a PDF download, served on a host every organization already has. InvoicePublicController now resolves a token as a subscription invoice's link first and a work order invoice's (CommerceInvoiceLink) second; both answer the same PublicInvoice, so the signer page is unchanged. A link is 256 random bits stored as a SHA-256, expires after a year **************** and dies when turned off, replaced or the invoice is voided (a void or draft invoice never resolves; voiding through the relay also stamps its links). The PDF is the issued document from InvoicingService, the same file the member opens. ServiceJobInvoiceController: GET /delivery (recipient, the email as it will read, every send and link), POST /send (Manage Service Work; editable recipient and note; canonical commerce.invoice_sent through the same EmailService call as subscription invoices, PDF attached; each send recorded with who, when, to whom and whether it was handed over), POST /link (a fresh link; earlier ones stop), DELETE /link (all off). Only an invoice with something owed is emailed; nothing is ever sent on its own. No online card payment: the platform checkout pays the platform's own account and stays subscription-only. Account page: GET **************** lists work order (View Service Work), retail order and subscription (View Subscription Invoices) invoices on indexed, org-scoped queries. InvoiceDelivery.Line takes a decimal quantity (labor bills 1.5 h).

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing