Skip to main content

Organization ticket digest: email client contacts their organization's open tickets

🔍 Problem Statement

As a client contact, I can't see my organization's open support tickets in one place, so I chase status updates ticket by ticket.

💡 User Story

  • As a client contact, I want a scheduled email listing my organization's open tickets and their status, so that my team knows where every request stands.

  • As a support admin, I want to send that email from an Automation targeting a customer segment, so that adding a contact to an organization enrolls them.

🎯 Definition of Done (DoD)

Audience

  • Given an Automation with only the Send email action, when an admin picks customer segments as its audience, then it saves without the Creation action.

  • Given that Automation runs, when recipients are selected from its customer segments, then each matching customer gets one email and no subscription is created.

  • Given the customer segment builder, when an admin adds an Organization criterion (has any organization, or is one of selected organizations), then only matching customers are included.

Email content

  • Given an email containing {{organization.open_tickets}}, when it is sent, then it lists the recipient's organization's unsolved tickets on the Automation's site with ID, subject, status and last activity.

  • Given any listed ticket, when it is rendered, then its status reads Open (New, Active, On hold) or Awaiting your reply (Pending).

  • Given a ticket subject containing markdown or HTML, when it is listed, then it renders as plain text.

  • Given an email containing {{organization.name}}, when it is sent, then it shows the recipient's organization name.

  • Given a recipient whose organization has no unsolved tickets, when the Automation runs, then [decision: skip their email, or send a "no open tickets" message].

Ticket linking

  • Given unlinked tickets opened from an email address, when a customer with that address is created on the same site, then those tickets link to the new customer.

  • Given existing unlinked tickets, when the one-time backfill runs, then every ticket whose first inbound sender matches a customer on its site is linked to that customer.

  • Given a ticket in the dashboard, when an agent picks a customer in the ticket details, then the ticket links to that customer, including re-linking a wrong match.

  • Given a request that sets a ticket's customer, when it is saved, then only a customer on the ticket's site is accepted.

  • Given a customer who moves to another organization, when the digest runs, then [decision: their past tickets stay with the old organization, or move with them].

Security and API

  • Given a visitor registering through the SDK on the support site [decision: or every Ticket Center site], when they enter an existing organization's name, then they are not added to it.

  • Given the new Core API endpoint for linking a ticket to a customer, when it is released, then it is documented on docs.pelcro.com and covered by automated tests.

  • This change will impact the UI and API, specifically Automations (campaign form and Initiate job), customer segments, the email variable catalog, ticket linking and SDK registration.

  • This solution will include the following limitations: weekly read-only snapshot; no replies or new tickets from the digest; unsolved tickets only; one organization per contact; contacts must be customers on the support site, loaded separately through the Core API; no Core API for creating Automations or segments.

Status: Planned

Log in to comment and vote

No comments yet

Be the first to share your thoughts.