Delivery Note technical endpoint reference
List the live controller actions, permission gates and principal side effects for support and integration review.
Exact navigationTechnical reference → Delivery Note controllers and routes
What this guide covers
List the live controller actions, permission gates and principal side effects for support and integration review. This guide follows the supplied Delivery Note module’s live hooks, controller actions, model rules, views and stored side effects.
Exact step-by-step process
- Use `/admin/delivery_note` for the view-guarded register.
- Use `/invoice/{invoiceId}` to resolve existing note or create flow.
- Use `/create/{invoiceId}` with Create capability.
- Use `/edit/{noteId}` with Edit capability; signed is blocked.
- Use `/view/{noteId}`, `/pdf/{noteId}` and `/invoice_meta/{invoiceId}` with View capability.
- Use `/void/{noteId}` with Delete capability; signed is blocked.
- Use public view/sign with the secure token.
- Use `/delivery_note/invoice_pdf/{invoiceId}?h={invoiceHash}` for authorised client PDF access.
Fields, choices and supported possibilities
- Admin register/invoice/create/edit/view/pdf/invoice_meta/void
- Public view/public sign
- Client invoice PDF
- Hyphenated compatibility aliases
Code-backed validations and workflow rules
- Create writes note, snapshot, token/reference, created event and optional dispatch email.
- Edit writes delivery fields and updated event.
- Public view logs viewed; sign stores sealed evidence, logs signed and attempts confirmation email.
- Client PDF logs pdf_viewed_from_invoice.
- No endpoint implements hard delete, resend, export, webhook or token management.
Expected result and verification
- Technical teams can trace each supported request to its guard, record effect and user-visible result.
Checks, security and troubleshooting
- Endpoint references are for authorised support/development; do not expose admin or token URLs publicly.
Stay within the supported flowDo not force database values, expose secure tokens, bypass permission checks, replace a stored signature or invent a status or interface that the supplied code does not implement.
