bcgov / bcgov/entity

8.3 — Deliver to Applicant (Download + Send)

Open
#30,773 1 comment 0 reactions 1 assignee Claimed by @ethantspitt View on GitHub
Assets
Dominant language
JavaScript
Stars
23
Forks
62
Avg merge
24m
Merged PRs (30d)
1

Description

**Priority (MoSCoW):** Must
**Persona:** Qualified Supplier (recipient) / Registry Analyst (staff visibility)
**Value:** Applicants get their Verification Statement quickly and reliably, with both electronic and mailed delivery, so they no longer wait for manual paper handling. Analysts also receive a CC for confirmation.

---

## User Story
As a **qualified supplier**, I want the system to **give me my Verification Statement right away and also send it to my contact email and BC Mail**, so that **I have timely proof of registration without depending only on the mail**.
As a **registry analyst**, I want to **receive a CC of the email sent to the applicant**, so that **I can confirm what was sent and reassure filers if needed**.

## Context
- **Where:** Filing Request flow, immediately after Verification Statement is generated (Story 8.2).
- **Before:** Filing request is `Filed` and a Verification Statement (PDF) exists in the system.
- **After:**
- Applicant sees a **Download** link right away.
- A copy is **emailed** to the contact on file (with CC to the assigned analyst).
- A job is sent to **BC Mail** for printing and mailing.
- Audit log shows: Download available, Email sent (with CC), BC Mail job created.
- **Policy fit (BA to confirm):**
- Manufactured Home Act — s. 8(1): Registrar must file a record if it appears to comply.
**How this story meets it:** Delivery of the Verification Statement gives the filer their official proof.
- FOIPPA: Statement must be delivered only to the submitting party and CC’d to the staff analyst securely.

## UX/UI Link (Design-owned)
Need a design for the email content

## MVP Boundary (story-level; PO-owned)
- **In:**
- Show a **Download** link immediately after filing.
- **Email** the Verification Statement to the submitting party’s contact address, with a **CC to the assigned analyst**.
- Send a copy to **BC Mail** for printing and physical mail-out.
- Record audit entries (Download shown, Email sent + CC, BC Mail job created).
- **Out:**
- Delivery retries, bounce handling, or tracking.
- Custom templates or multiple languages.
- Bulk resend options.

---

## Acceptance Criteria (PO-owned; user-observable)
- [ ] Applicant sees a **Download Verification Statement** link right away.
- [ ] An email with the Verification Statement is sent to the applicant, with a CC to the assigned analyst.
- [ ] A BC Mail job is created for physical mailing.
- [ ] Staff can see a record of each delivery method in the audit (Download, Email + CC, BC Mail job).
- [ ] **Accessibility:** Links and buttons are clear, keyboard reachable, focus visible, and announced to AT.
- [ ] **Unavailable:** If delivery cannot complete, a plain-language message is shown; the filing and Verification Statement remain valid.

---

## BA Section (Required before Dev)
*(BA responsible, Design consulted — SM enforces DoR)*

### Definition of Ready — BA gate
- [x] Rules + edge cases + error/**Unavailable** complete
- [x] Draft Gherkin (happy path + key errors)
- [x] Policy refs confirmed & linked in Context
- [ ] Reviewed with Design; labels/states aligned
- [ ] UX/UI link pasted (Design)

---
### Business rules
- Generate the Verification Statement only when the filing reaches “successfully submitted and recorded” status.
- Expose the Download link on the confirmation page only when the PDF exists and is retrievable.
- Email delivery requires a syntactically valid contact email. If invalid or missing, suppress external email and flag for staff. Keep the Download link available.
- Create a BC Mail print job only when a valid postal address is present. Otherwise suppress the job and flag for address correction.
- Include only information necessary to evidence the filing outcome in the Verification Statement. Do not include data that FOIPPA would classify as personal information beyond what is authorized for disclosure. ,
- If a user downloads the statement, record the event with the user identity, time, and filing reference.
- For email CC to analysts, include only business contact information. FOIPPA treats business contact details differently than personal information.

### Validation rules
- Email format. Contact email must match system email pattern. If not, set “email_suppressed=true” and log a validation error.
- Postal address. All fields needed by BC Mail must be present and pass address validation. Otherwise, do not queue print.
- Access control. Only authenticated users with access to the filing can fetch the Verification Statement URL. Log unauthorized attempts.
- Content check. The statement payload must exclude fields flagged as sensitive unless FOIPPA authority exists. Reference FOIPPA ss. 32, 33 and the policy manual. ,
- Audit completeness. A filing that completed delivery processing must have at least one of email sent or email suppressed, and one of mail job created or mail job suppressed, plus a download-available entry.

#### Constraints
**Legislative**. Outputs and disclosures must align with the Manufactured Home Act and the Manufactured Home Regulation, including a verification statement outcome and the defined filing types such as transmissions. ,
**Privacy.** FOIPPA governs how personal information is used and disclosed. Enforce FOIPPA Part 3, and apply the FOIPPA policy manual when designing content, headers, and logs. ,
**Operational.** Email, BC Mail, and on‑screen delivery run independently so a failure in one channel does not block others. Log all outcomes.
**Accessibility and security.** Follow BC Registries online app standards for authenticated access, auditability, and accessible UI.
Analyst oversight. Staff must have visibility through audit events and CC copies to reassure filers as required in the story.

#### Policy References
- Manufactured Home Act — s. 34: The filer must be provided confirmation about the information they filed. [[Link](https://www.bclaws.gov.bc.ca/civix/document/id/complete/statreg/441_2003#section14)
- FOIPPA Part 3— notices must include only necessary personal info; deliver securely. [Link](https://www.bclaws.gov.bc.ca/civix/document/id/complete/statreg/96165_00_multi#part3)

**BA — please cover**
- [x] Exact wording of the **Download** link.
- [x] What should appear in staff view for delivery audit (labels, fields)?
- [x] Error wording if BC Mail job fails.

**BA Prompts (things to think about)**
- Should the CC email show full client info or a redacted version for staff?
- What happens if the staff analyst changes after approval — who gets the CC?
- What should staff see if the email fails but Download + BC Mail succeed?
- What confirmation should staff see that a BC Mail job was created?

---

### BA — Edge cases
| Edge case | What triggers it | What the user sees | Can they continue? |
|-----------------------------|---------------------------------------|-------------------------------------------------------------------|--------------------|
| Missing email address | No contact email on file | Info: “No email contact provided. Document available by download and mail.” | Yes |
| Invalid email address | Missing, malformed, or domain bounce | Info: “Invalid email contact provided. Document available by download and mail.” | Yes |
| Email failed to send | Email system unavailable | Message: “Email delivery unavailable. Download and mail delivery still provided.” | Yes |
|Large filer organizations | Multiple internal recipients might need the statement. | Provide CC to analyst, and leave subsequent distribution to the filer. | Yes |
| BC Mail job failed | Mail service unavailable | Error: “Mail delivery unavailable. Document available by download and email.” | Yes |
| All delivery failed | All systems unavailable | Error: “Verification Statement delivery unavailable. Please try again later.” | Filing still valid |

---

### Acceptance Criteria — Gherkin
Scenario: Successful filing and full delivery
Given the filing was accepted
And the system generated the Verification Statement
When the confirmation page loads
Then the page shows "Download your Verification Statement here {Hyperlink}"
And the system emails the Verification Statement to the filer
And the system CCs the assigned analyst
And the system creates a BC Mail print job for physical delivery

Scenario: Missing contact email
Given the filing was accepted
And the contact email is missing
When the system prepares delivery
Then the system does not send an email and shows this message: "Provide a valid email for this filing. Document available by download and mail."
And the page still shows "Download your Verification Statement"
And the system flags the filing for analyst follow up

Scenario: Email delivery fails
Given the filing was accepted
And the email service returns an error
When the system attempts to send the message
Then the system shows this message: "Email delivery unavailable. Download and mail delivery still provided."
And the system retries sending within the configured limits
And the page still shows "Download your Verification Statement"
And the system flags the filing for analyst follow up if all retries fail

Scenario: BC Mail job cannot be created
Given the filing was accepted
And the system generated the Verification Statement
When BC Mail job creation fails
Then the system shows this message: "Mail delivery unavailable. Document available by download and email."
And the system flags the filing for address or service review
And email delivery and on screen download continue normally

---

### BA Notes:
Download Link Wording: "_Download your Verification Statement_"
Error wording if the BC Mail job fails: "_The Mail delivery was not delivered. A valid mailing address is required. Contact BC Registries to update the address_"
Error wording if the mail service is unavailable: "_BC Mail service is not available right now. We will try again soon. The Verification Statement is still ready for download_."
Confirmation wording for staff when a BC Mail job is created: "_BC Mail delivery created. The print job has been queued with the correct mailing address_".
The analyst CC copy can contain a stripped version of the message sent to the filer
Labels could be used in staff view for delivery audits

---

## Design — Prompts
- Confirm placement/label of **Download Verification Statement** link.
- Confirm email template (subject/body) and how CC appears to staff.
- Confirm how delivery audit info is shown in staff view.
- Ensure accessibility basics (keyboard path, focus order, AT announcements).
- Paste design link above.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.