Bodega

Skills › Atención al cliente

ticket-deflector

Arma respuestas de autoservicio para las preguntas que más se repiten.

Reads a forwarded customer email or ticket, pulls order and refund status from a payments connector (PayPal, Square, or Stripe) or Shopify, account history from the CRM, and open tickets from a support desk (Zoho Desk), drafts a tone-matched reply in the owner's writing voice, and can issue a refund through the payments connector with explicit owner approval. With Shopify connected it also runs a proactive order-triage mode that surfaces orders needing attention — unfulfilled past the promised window, payment problems, pending refunds, stuck shipments — and drafts the next action for each before the customer has to ask. Use when the user says "draft a response," "answer this customer," "where's my order," "I want a refund," "check my orders," or "anything about to blow up."

Descargar .zipVer en GitHub
Departamento
Atención al cliente
Fuente
Oficial · anthropics/knowledge-work-plugins › small-business
Autor
Anthropic
Licencia
Apache-2.0
Idioma
Inglés
Riesgo
Bajo

Cómo instalarla en Claude

  1. Descargue el .zip sin descomprimirlo.
  2. En Claude active Configuración › Capacidades › Crear y editar archivos.
  3. Vaya a Personalizar › Skills › Crear skill › Subir una skill y elija el archivo.

Instrucciones completas (SKILL.md)

Ticket Deflector

Quick start

Forward or paste a customer email — Claude pulls order status from the connected payments connector, looks up the customer in the CRM and the support desk, and drafts a reply in the owner's voice. If a refund is needed, it stages the details and waits for explicit approval before issuing anything. Same-category connectors are peers (../../shared/connector-neutrality.md): whichever is connected runs the step.

User: "answer this customer" [forwards email]
→ Extract customer email + issue from thread
→ Pull transaction status from the payments connector (PayPal, Square, or Stripe)
→ Pull CRM contact history, and open tickets from the support desk
→ Check the refund/return policy and help-centre articles
→ Draft reply in owner's voice, within policy
→ Owner approves draft → send or stage
→ If refund needed: approval prompt → owner confirms → issue

Workflow

Flag any data gaps inline in the draft with a bracketed note (e.g., *[Note: No transaction found in Stripe — verify order ID before sending]*) so the owner sees the gap before sending. For worked examples, see [reference/examples/respond-refund-request.md](reference/examples/respond-refund-request.md) (refund granted) and [reference/examples/deny-refund-request.md](reference/examples/deny-refund-request.md) (request outside policy). For common pitfalls, see [reference/gotchas.md](reference/gotchas.md).

> *"Issue refund of [currency code] [amount] to [customer name] ([email]) for transaction [ID] in [connector]? Reply Y to proceed."*

Wait for explicit confirmation. If the owner's reply is anything other than a clear yes, stop and ask what they'd like to do instead. On a yes, the refund goes through the connector that holds the charge — each is a capability, not a ranking:

Approval gates

Proactive order triage (Shopify)

The core flow is reactive: a customer writes in, the skill drafts the reply. With Shopify connected, add the proactive mode — surface the orders that are about to *become* tickets, before the customer writes.

What a triage run does

Nothing sends and no refund moves without the owner's yes, same as the reactive flow. The triage output is a worklist with drafts attached, not a batch of actions already taken.

## Order triage — Jul 27

3 orders need attention:

1. #1482 — unfulfilled 6 days, promised 3. Dana W., USD 840.
   Draft ready: apology + revised ship date + tracking when it moves.
2. #1479 — payment failed twice, order still open. 
   Draft ready: payment-link email.
3. #1461 — refund pending 8 days.
   Staged: USD 120 refund, needs your confirmation.

Send 1 and 2, confirm 3?

Why proactive matters: the reply to an angry "where is my order" email costs goodwill even when it's perfect. The same message sent a day before they asked reads as being on top of things. Same words, opposite effect.

More sources

Before posting any comment back into Jira Service Management, confirm which comment type is customer-visible on this account. JSM distinguishes public replies from internal notes, and the mapping is not identical everywhere. Getting it wrong publishes an internal note to the customer, or buries a reply the customer never sees. Verify once per account, say which you are using in the approval prompt, and treat a customer-visible comment as an outward send under the existing draft-approval gate.

The same rule holds for Zoho Desk. sendReply goes to the customer; createTicketComment with isPublic=false stays internal, and with isPublic=true the customer sees it on the portal. Say which you are using in the approval prompt. A customer reply through the desk is an outward send and needs the Step 6 yes exactly as a mail send does.

Fallback is unchanged: pasted text in, drafted reply out.

Output

Deliver the drafted replies and the triage board per the owner's stored output preference — never default to a markdown file. Check the ## Business context block's Output preference (shared style guide rule, ../../shared/artifact-style.md):

After the reply

The customer has an answer, any refund went through its own gate, and the interaction is logged. The natural next step is "what are customers saying" — review-reputation shows whether this ticket is one-off or a pattern. Also nearby: "win back quiet customers" (/reactivate) if the customer had already drifted before they wrote, and "go through my email" (inbox-manager) if more customer mail is waiting behind this one. Offer at most three, and skip any offer the owner already declined this session.

Reference

Using a tool that isn't listed

The connectors named in this skill are the tested paths, not a wall. If the owner wants this flow to use a tool that isn't connected or listed, offer build-connector — it checks the connector directory first and connects through Zapier otherwise, never hand-building against a raw API. Once the connection exists, the tool joins this skill like any other optional connector, under the same approval gates.