ticket-deflector
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseTicket Deflector
Ticket Deflector
Quick start
快速开始
Forward or paste a customer email — Claude pulls order status from PayPal, looks up the customer in HubSpot, 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.
User: "answer this customer" [forwards email]
→ Extract customer email + issue from thread
→ Pull PayPal transaction status
→ Pull HubSpot contact history
→ Draft reply in owner's voice
→ Owner approves draft → send or stage
→ If refund needed: approval prompt → owner confirms → issue转发或粘贴客户邮件——Claude会从PayPal获取订单状态,在HubSpot中查找客户信息,并模仿账户所有者的语气起草回复。若需退款,工具会先整理好相关细节,等待明确批准后再执行操作。
User: "answer this customer" [forwards email]
→ Extract customer email + issue from thread
→ Pull PayPal transaction status
→ Pull HubSpot contact history
→ Draft reply in owner's voice
→ Owner approves draft → send or stage
→ If refund needed: approval prompt → owner confirms → issueWorkflow
工作流程
-
Read the customer message. Accept a forwarded Gmail thread or pasted text. Extract: customer email address, name, order or transaction ID (if present), and the core issue — refund request, order status question, or general complaint. If multiple issues are present, address them in the order they appear.
-
Pull order status from PayPal. Search PayPal transactions by customer email or transaction ID. Capture: amount, date, status, and whether a refund has already been issued. If PayPal is not connected, note it in the draft and continue. If no transaction matches, flag it — do not guess at a match.
- PayPal rate limit: If the customer provided a transaction ID, use it — single-record lookups avoid throttling entirely. If searching by email, use a 7-day window (not 30 days). PayPal's transaction list endpoint throttles aggressively on wide date-range queries; back-to-back tickets in the same session will hit this limit if the window is too broad.
- If Intercom is connected, check for open support tickets from this customer.
- If Square is connected, check Square transaction history as a secondary source.
- If multiple transactions match, surface all of them and ask the owner which one applies before drafting.
-
Pull customer history from HubSpot. Search contacts by email address. Pull: lifecycle stage, notes, open deals, and recent activity. If no contact exists, note it and offer to create one after the reply is sent — do not create during the response workflow.
-
Draft the reply. Write in the owner's writing voice. Adjust tone to fit the issue type:
- Refund request → empathetic, clear, action-oriented
- Order status question → factual, reassuring
- General complaint → acknowledge, explain, offer resolution Flag any data gaps inline in the draft with a bracketed note (e.g., [Note: No PayPal transaction found — verify order ID before sending]) so the owner sees the gap before sending. For a worked example, see reference/examples/respond-refund-request.md. For common pitfalls, see reference/gotchas.md.
-
Approval gate — owner reviews the draft. Present the full draft. Do not send or stage it until the owner approves. The owner may edit freely before approving.
-
Approval gate — refund issuance. If a refund is warranted, surface a dedicated confirmation prompt after the owner approves the draft:"Issue refund of $[amount] to [customer name] ([email]) for transaction [ID]? 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.
-
Send or stage the reply. After draft approval, ask the owner: send via Gmail now, or save as a draft? Execute their choice. Then log the interaction as a note on the HubSpot contact timeline.
-
Report. One short paragraph: reply sent or staged, refund issued or not, HubSpot note logged.
-
读取客户消息。接收转发的Gmail线程或粘贴的文本。提取:客户邮箱地址、姓名、订单或交易ID(如有),以及核心问题——退款请求、订单状态查询或一般性投诉。若存在多个问题,按出现顺序逐一处理。
-
从PayPal获取订单状态。通过客户邮箱或交易ID搜索PayPal交易记录。获取:金额、日期、状态,以及是否已发起退款。若未连接PayPal,在草稿中注明并继续流程。若无匹配交易,标记该情况——切勿猜测匹配项。
- PayPal速率限制:若客户提供了交易ID,使用该ID查询——单条记录查询可完全避免限流。若通过邮箱搜索,使用7天时间窗口(而非30天)。PayPal的交易列表端点对宽日期范围查询限流严格;若会话中连续处理工单,时间窗口过宽会触发限流。
- 若已连接Intercom,检查该客户是否有未关闭的支持工单。
- 若已连接Square,将Square交易记录作为次要来源进行查询。
- 若存在多条匹配交易,全部列出并询问所有者应使用哪一条后再起草回复。
-
从HubSpot获取客户历史记录。通过邮箱地址搜索联系人。获取:生命周期阶段、备注、未结交易和近期活动。若不存在联系人,注明该情况并提出在回复发送后创建联系人——切勿在回复流程中创建。
-
起草回复。模仿账户所有者的语气撰写回复。根据问题类型调整语气:
- 退款请求→共情、清晰、注重行动
- 订单状态查询→事实准确、令人安心
- 一般性投诉→表示认可、解释情况、提供解决方案 在草稿中用括号标注任何数据缺口(例如:[注:未找到PayPal交易记录——发送前请核实订单ID]),以便所有者发送前看到该缺口。工作示例请查看reference/examples/respond-refund-request.md。常见问题请查看reference/gotchas.md。
-
审批环节——所有者审核草稿。展示完整草稿。获得所有者批准前切勿发送或暂存。所有者可在批准前自由编辑。
-
审批环节——发起退款。若需退款,在所有者批准草稿后显示专门的确认提示:“是否向[客户姓名]([邮箱])发起金额为$[金额]的退款,对应交易ID为[ID]?回复Y继续。”等待明确确认。若所有者回复并非明确的“是”,停止操作并询问其下一步需求。
-
发送或暂存回复。草稿获批后,询问所有者:立即通过Gmail发送,还是保存为草稿?执行其选择。随后将该交互记录为HubSpot联系人时间线上的备注。
-
报告。一段简短说明:回复已发送/暂存、是否发起退款、已在HubSpot记录备注。
Approval gates
审批规则
- Never issue a PayPal refund without explicit owner confirmation — always show amount, customer name, email, and transaction ID before executing.
- Never send the reply without owner review. Always present the full draft first.
- Never create a HubSpot contact during the response flow. Offer it afterward.
- Never auto-select a PayPal transaction. If multiple match, surface them all and let the owner choose.
- Never fabricate order details. If PayPal has no record, say so inline in the draft — do not invent a status.
- 未经所有者明确确认,切勿发起PayPal退款——执行前务必显示金额、客户姓名、邮箱和交易ID。
- 未经所有者审核,切勿发送回复。务必先展示完整草稿。
- 切勿在回复流程中创建HubSpot联系人。在回复后提出创建。
- 切勿自动选择PayPal交易。若存在多条匹配记录,全部列出并让所有者选择。
- 切勿编造订单详情。若PayPal无记录,在草稿中注明——切勿虚构状态。
Reference
参考资料
- reference/gotchas.md — Good / Bad patterns for tone, PayPal lookup, and ambiguous refund scenarios
- reference/examples/respond-refund-request.md — worked example: refund request with PayPal transaction found
- reference/gotchas.md — 语气、PayPal查询及模糊退款场景的正确/错误范例
- reference/examples/respond-refund-request.md — 工作示例:找到PayPal交易记录的退款请求处理