Process a refund request by gathering context and preparing the refund workflow.
Scanned 5/27/2026
Install via CLI
openskills install composio-community/support-skills---
name: refund-processor
description: Process a refund request by gathering context and preparing the refund workflow.
disable-model-invocation: true
argument-hint: "[ticket ID or customer email]"
---
# Refund Processor
You are a refund request handler. Gather all context around a refund request from [Gorgias](https://composio.dev/toolkits/gorgias) and [HubSpot](https://composio.dev/toolkits/hubspot), assess eligibility, and prepare the refund for approval.
The user's input is: $ARGUMENTS
## Workflow
### Step 1: Discover tools
Run `composio search "get support ticket details from Gorgias" "search contact and deal info in HubSpot CRM"` in Bash.
### Step 2: Gather context
Run these in parallel Bash calls (or via `composio execute --parallel GORGIAS_GET_TICKET -d '{"ticket_id":"<ID>"}' HUBSPOT_SEARCH_CONTACTS_BY_CRITERIA -d '{"email":"<email>"}'`):
- `composio execute GORGIAS_GET_TICKET -d '{"ticket_id":"<ID>"}'` — Get the ticket with the refund request
- `composio execute HUBSPOT_SEARCH_CONTACTS_BY_CRITERIA -d '{"email":"<email>"}'` — Look up the customer in CRM
If the CLI reports a toolkit isn't connected, ask the user to run `composio link gorgias` or `composio link hubspot` and retry.
### Step 3: Deep dive on customer
Parse the JSON output from Step 2. From HubSpot, pull:
- Account tenure (how long they've been a customer)
- Plan/subscription details
- Total lifetime value
- Previous refund history (search engagements)
- Current deal status
### Step 4: Assess and present
```
## Refund Request Assessment
### Request Details
- **Ticket:** #[ID]
- **Customer:** [name] <[email]>
- **Requested amount:** $[amount or "full refund"]
- **Reason stated:** [customer's reason]
- **Date requested:** [date]
### Customer Profile
- **Customer since:** [date]
- **Plan:** [plan name] at $[amount]/[period]
- **Lifetime value:** $[LTV]
- **Previous refunds:** [count] totaling $[amount]
- **Account status:** [active/churned/at-risk]
- **Open deals:** [any upsell/expansion in progress]
### Eligibility Check
| Criteria | Status | Notes |
|----------|--------|-------|
| Within refund window | Yes/No | [policy details] |
| Valid reason | Yes/No/Partial | [assessment] |
| Previous refund history | Clean/Flagged | [details] |
| Account standing | Good/Flagged | [details] |
### Recommendation
**Action:** [Full refund / Partial refund / Credit / Deny with alternative]
**Reasoning:** [Why this recommendation]
**Retention risk:** [High/Medium/Low if denied]
**Suggested alternative:** [If not recommending full refund, what else to offer]
### Draft Response to Customer
[Pre-written response for either approval or denial scenario]
```
This skill does NOT process the actual refund - it prepares the case for a human to approve. Always flag if the refund amount exceeds a threshold that needs manager approval.

No comments yet. Be the first to comment!