Customer complaints
The Complaints page is a register for customer complaints, built around ISO 9001 (9.1.2 and 10.2) and ISO 10002 complaints handling. Every complaint gets an automatic number and moves through a fixed lifecycle: received, acknowledged, investigating, resolved, closed. At resolution you record a verdict (justified or not), and justified complaints can be escalated into a CAPA with one click.
Before you start
- The Complaints module (category: Quality management) must be enabled in Settings > Modules. It is on by default. The page lives at
/complaintsand appears in the side nav as Complaints. - You need to be a member of an organization. Any member can log and update complaints.
- To use Raise CAPA, the CAPA module must also be available (it is on by default).
Log a complaint
- Open Complaints in the side nav and click Log Complaint.
- Fill in the dialog:
- Title (required): the complaint, in one line.
- Description: what the customer reported, in their words.
- Channel: how the complaint reached you. Email, Phone, Web, In person, Social media, or Other. Defaults to Email.
- Severity: Low, Medium, High, or Critical. Defaults to Medium.
- Complainant name: who complained.
- Complainant email: their email address.
- Company: the complainant's organization.
- Product / service: what the complaint is about.
- Received date: defaults to today. Click the date button to change it. This date starts the acknowledgement clock.
- Owner: the member responsible for handling the complaint, or Unassigned.
- Click Log complaint. The complaint is saved with status Received and gets an automatic number in the form CMP-0001, CMP-0002, and so on, sequential per organization.
Read the register
- The stats bar shows: Open, Critical, Avg ack days (average days from received to acknowledged), and Avg resolve days (average days from received to resolved). The averages show a placeholder until at least one complaint has been acknowledged or resolved.
- Filter the list with the Status, Severity, and Channel dropdowns. The stats bar keeps showing whole-register numbers even while filters are applied.
- Each row shows the complaint number and title, the description, and tags: channel, severity, status, the complainant, the received date, the owner, and verdict or CAPA tags once they exist.
The acknowledgement SLA
A complaint should be acknowledged within 3 days of receipt. If a complaint is still sitting in Received more than 3 days after its received date, the row shows a red Ack overdue tag. Acknowledging the complaint clears the flag and stamps the acknowledged date used for the Avg ack days metric.
Move a complaint through its lifecycle
The lifecycle is forward-only: Received > Acknowledged > Investigating > Resolved > Closed. Each row shows one button for the next step:
- On a Received complaint, click Acknowledge. Status becomes Acknowledged and the acknowledged date is stamped.
- On an Acknowledged complaint, click Investigate. Status becomes Investigating.
- On an Investigating complaint, click Resolve. This opens the resolve dialog (see below).
- On a Resolved complaint, click Close. Status becomes Closed and the closed date is stamped.
You cannot skip steps or move backwards. Out-of-order transitions are rejected.
Resolve a complaint and record the verdict
- Click Resolve on an Investigating complaint.
- In the dialog, fill in:
- Resolution summary (required): what was found and how it was resolved with the customer. You cannot resolve without it.
- Was the complaint justified?: choose the Yes option (justified) or the No option (not justified).
- Click Resolve complaint. The resolved date is stamped and the verdict shows on the row: a red Justified tag or a green Not justified tag.
The dialog reminds you that a justified complaint is a nonconformity under ISO 9001 10.2, so raise a CAPA for it after resolving.
Raise a CAPA for a justified complaint
- The Raise CAPA button appears only on complaints resolved as justified that have no CAPA linked yet.
- Click Raise CAPA. CompStack creates a CAPA titled "Complaint CMP-XXXX:
", copies the complaint details and resolution summary into the CAPA description, and links it back to the complaint. - The row now shows a CAPA tag with the CAPA number. Manage the corrective action from the CAPA board.
Edit a complaint
- Click the pencil (edit) button on the row.
- Change any intake field (title, description, channel, severity, complainant details, received date, owner) and click Save. Status, verdict, and the stamped dates are changed through the lifecycle buttons, not the edit dialog.
Try it
- Click Log Complaint, enter only a title, and save. Expected: a new row with number CMP-0001 (or the next number), status Received, channel Email, severity Medium.
- Log a complaint with a received date 5 days ago and leave it in Received. Expected: the row shows a red Ack overdue tag.
- Click Acknowledge on it. Expected: status becomes Acknowledged, the Ack overdue tag disappears, and Avg ack days shows a number.
- Click Investigate, then Resolve. Expected: the resolve dialog opens asking for a resolution summary and a verdict.
- Try to save the resolve dialog with an empty summary. Expected: nothing happens; the summary is required.
- Resolve with the verdict set to justified. Expected: the row shows a red Justified tag and a Raise CAPA button.
- Click Raise CAPA. Expected: a toast names the new CAPA and the row gains a cyan CAPA tag.
- Click Close. Expected: status becomes Closed and the Open stat drops by one.
- Resolve another complaint as not justified. Expected: a green Not justified tag and no Raise CAPA button.
If something goes wrong
- Complaints is missing from the side nav: the Complaints module is turned off. An admin can enable it in Settings > Modules under Quality management. Visiting
/complaintswhile it is off redirects you to the dashboard. - "No complaints logged" empty state: nothing has been recorded yet. Click Log Complaint to add the first one.
- "No complaints match the filters": a Status, Severity, or Channel filter is excluding everything. Reset the filters to All.
- Cannot resolve a complaint: the resolution summary is required, and the verdict must be selected. Also check the status: only Investigating complaints can be resolved, in order.
- Raise CAPA is not visible: it only appears when the verdict is justified and no CAPA is linked yet. Complaints resolved as not justified never show it.
- Avg ack days or Avg resolve days shows a placeholder: no complaint has been acknowledged or resolved yet, so there is nothing to average.
- Permission errors when saving: you need a member role in the organization. Ask an admin to check your membership in Settings > Members.