Install the app and the desk is usable immediately: a General department exists, you are the first admin, and the storefront portal is live. This guide walks through linking the portal, departments and agents, the emails, a first test ticket, and the settings worth tuning - including the automation.
Install Demfilz Support Tickets from the Shopify App Store (or from the install link we send you for an early install). Installation is Shopify-managed: approve the permissions and the app opens inside your admin. The dashboard shows your name at the top - that is you, recognised as the store's account owner and therefore a help desk admin.
The app asks for two optional permissions, read_orders and read_customers. They power the order and customer panel beside each ticket. Everything else works without them.
Your store now has a support page at https://your-store.com/apps/support. The dashboard shows the exact address with a Copy button. Add it to a menu under Online Store → Navigation (the footer menu is the usual place, a header link works too). The page renders inside your theme, so it already looks like the rest of your store.
Customers can open tickets there as guests or signed in; signed-in customers get their name and email filled in and can pick the order the ticket is about from their own order history. They also find their earlier tickets on the same page, and guests can ask for their private links by email.
Optionally, the app also ships a Support form theme app block. In the theme editor, add a section or block and pick "Support form" from the app blocks to place the ticket form on any page - a contact page, a product page, wherever suits.
Under Departments add one per team - Orders, Returns, Wholesale - each with its own notification inbox and, optionally, its own agents. New tickets and customer replies in a department go to its inbox; departments without one fall back to the store's notification address. Customers choose the department on the portal when there is more than one (you can switch that choice off under Settings → Portal).
Agents are your Shopify staff. There is nothing to invite: ask each team member to open the app once and they appear under Agents, where you can make someone an admin (admins change settings, departments and agents), switch a person off, give them an email signature that is added under their replies, and put them in departments so automatic assignment knows who takes what.
There is no limit on agents on any plan.
Open Settings → Email. Set the from name (your store name by default), the reply-to address (where a customer's plain email reply should go) and the notification inbox for new tickets. Each notification can be switched off individually, and every one is a template you can edit:
| Template | Sent when |
|---|---|
| Customer: ticket received | A ticket is opened, with the private link to it. |
| Customer: agent replied | An agent sends a public reply (internal notes never email anyone). |
| Customer: resolved or closed | The ticket is marked resolved or closed, with the rating link. |
| Customer: reminder | A ticket waiting on the customer has been quiet for the set number of days. |
| Staff: new ticket | A ticket is opened - to the department inbox, the assigned agent, or the notification inbox. |
| Staff: customer replied | The customer adds a reply. |
| Agent: ticket assigned | A ticket is assigned to that agent. |
| Staff: SLA breach | A first-response or resolution target is missed. |
Placeholders such as {ticket_ref}, {customer_name}, {message}, {ticket_url} and {admin_url} are listed above the templates. Clear a field to go back to the default. Press Send a test email to check delivery.
Send from your own SMTP server lets notifications come from your own domain: enter the host, port, credentials and from address, then Test connection.
Go to the portal, open a ticket with an attachment, and check the two emails: the customer confirmation with its private link, and the staff alert with a link that opens the ticket in the app. Answer it from the admin - try a canned reply, add an internal note, set the status to "Waiting on customer" - then reply from the portal and watch it reopen. Resolve it and rate it from the customer's side.
| Setting | What it does |
|---|---|
| Portal | Introduction text, ticket reference prefix, minimum message length, how long customers can reopen a closed ticket, whether guests can open tickets, and whether customers choose a priority, a department and an order. |
| Workflow | The status new tickets start in, the default priority, and the status set after an agent or a customer replies. |
| Assignment | Leave new tickets unassigned, or assign round robin or to the least busy agent - within the department's agents when it has some. |
| Auto-close and reminders | Close resolved tickets after a number of days; remind customers whose tickets wait on them. |
| SLA targets | First-response and resolution targets in minutes per priority, counted from when the ticket is opened, with an email when one is missed. Past-SLA tickets are flagged in the list and counted on the dashboard. |
| Attachments | Whether attachments are allowed, how many per message, the size limit and the allowed file types. |
The Tickets list filters by status, priority, department and agent, searches references, subjects, customers, orders and message text, and applies bulk actions - status, assignment, priority, department, delete - to a selection. Export CSV downloads the current filter. New ticket logs one on a customer's behalf, for example after a phone call. Reports show volume per day, by status, department, priority and agent, average first response and resolution times, SLA attainment and satisfaction.
The portal shows a plain page or a 404: the app proxy has not finished propagating, which can take a few minutes after install. If it persists, reinstall the app.
A customer cannot open a ticket: check Settings → Portal. If "guests can open tickets" is off they must sign in first; a message shorter than the minimum length is rejected with an explanation.
Emails do not arrive: use Send a test email under Settings → Email and check the spam folder. Make sure the reply-to and notification addresses are right. Sending from your own SMTP server usually improves delivery.
Orders do not show beside a ticket: that panel needs the read_orders and read_customers permissions. The order number the customer chose is still stored on the ticket.
Attachments have stopped working: the store has used its storage allowance (100 MB on Free; the Plan page shows the split between attachments and ticket data). Delete old tickets to free their attachments, or upgrade to Pro under Plan for 10 GB at US$19.95 a month. Tickets and replies keep working either way.
We build Shopify apps for a living. If you need inbound email piping, a knowledge base, a live-chat hand-off or an integration with your other systems, tell us what and we will quote it.