Workflow Automations
Automate repetitive tasks with triggers, conditions, and actions to streamline your returns process.
Workflow automations allow you to automate repetitive tasks in your returns process. Set up triggers that automatically perform actions when certain conditions are met.
How Automations Work
Each automation consists of:
- Trigger - Event that starts the automation
- Conditions - Optional filters to refine when it runs
- Actions - What happens when triggered
TRIGGER: RMA status changed to "Received"
CONDITIONS: Return reason = "Warranty"
ACTIONS:
- Add tag "Warranty-Claim"
- Assign to Warranty Team
- Send internal notification
Available Triggers
RMA Triggers
| Trigger | Fires When |
|---|---|
| RMA Created | New return request submitted |
| RMA Status Changed | Status transitions (e.g., to Received) |
| RMA Approved | Manual or auto-approval occurs |
| RMA Rejected | Return is denied |
| Label Generated | Shipping label created |
| Items Received | Warehouse marks items received |
| Inspection Complete | QC inspection finished |
| Refund Processed | Refund issued to customer |
Shipment Triggers
| Trigger | Fires When |
|---|---|
| Shipment Created | Tracking number assigned |
| Shipment In Transit | Carrier scan detected |
| Shipment Delivered | Delivery confirmed |
| Shipment Exception | Delivery issue reported |
Time-Based Triggers
| Trigger | Fires When |
|---|---|
| Label Not Used | X days since label created, no scan |
| RMA Stale | No activity for X days |
| Approaching SLA | Deadline approaching |
| Scheduled | Specific time/date |
Available Actions
Communication Actions
| Action | Description |
|---|---|
| Send Email | Templated email to customer/staff |
| Send SMS | Text notification (if enabled) |
| Internal Notification | Alert team via dashboard/Slack |
| Add Note | Append note to RMA timeline |
Status Actions
| Action | Description |
|---|---|
| Update Status | Change RMA status |
| Add Tag | Apply tag for filtering |
| Remove Tag | Remove existing tag |
| Set Priority | Change priority level |
| Assign To | Assign to team/user |
Integration Actions
| Action | Description |
|---|---|
| Create Ticket | Create support ticket (Gorgias/Zendesk) |
| Update Shopify | Add order note, tag, metafield |
| Webhook | Send data to external URL |
| API Call | Custom API request |
Financial Actions
| Action | Description |
|---|---|
| Process Refund | Auto-issue refund |
| Create Store Credit | Generate credit code |
| Apply Fee | Add restocking/shipping fee |
Creating Automations
Step 1: Define Trigger
Navigate to Settings → Automations → Create Automation
Automation Name: "Auto-approve low-value refunds"
Trigger: Inspection Complete
Step 2: Add Conditions
Filter when the automation runs:
Conditions (ALL must match):
- Inspection result = "Approved"
- Return type = "Refund"
- Refund amount < $50
- Product condition = "Good" or "Like New"
Step 3: Configure Actions
Define what happens:
Actions:
1. Update Status → "Approved"
2. Process Refund → Original payment method
3. Send Email → "Refund Confirmation" template
4. Add Note → "Auto-approved: Low-value, good condition"
Step 4: Test and Enable
- Click Test Automation with a sample RMA
- Review simulated results
- Enable when satisfied
Automation Examples
Auto-Approve Standard Returns
Automatically approve returns that meet all criteria.
Trigger: Inspection Complete
Conditions:
- Inspection result = Approved
- Order within 30 days
- No previous returns on this order
- Items in resellable condition
Actions:
- Update status to Approved
- Process refund
- Send confirmation email
Escalate Delayed Shipments
Alert when returns are taking too long.
Trigger: Label Not Used (7 days)
Conditions:
- RMA status = Awaiting Return
- Reminder not already sent
Actions:
- Send reminder email to customer
- Add tag "Reminder-Sent"
- Schedule follow-up check (14 days)
Warranty Claim Routing
Route warranty claims to specialist team.
Trigger: RMA Created
Conditions:
- Return reason contains "Warranty"
- OR Return reason contains "Defective"
Actions:
- Assign to "Warranty Team"
- Add tag "Warranty-Claim"
- Set priority to High
- Create Zendesk ticket
VIP Customer Handling
Prioritise returns from valuable customers.
Trigger: RMA Created
Conditions:
- Customer lifetime value > $5000
- OR Customer tag = "VIP"
Actions:
- Set priority to Urgent
- Assign to Senior Team
- Send internal Slack notification
- Add tag "VIP-Return"
Auto-Generate Labels
Send labels automatically when approved.
Trigger: RMA Approved
Conditions:
- Label not already generated
- Shipping method = Prepaid
Actions:
- Generate shipping label
- Send label email
- Update status to Awaiting Return
Fraud Detection Alert
Flag suspicious patterns.
Trigger: RMA Created
Conditions:
- Customer returns in last 90 days > 3
- OR Total return value > $500 this month
Actions:
- Add tag "Review-Required"
- Require manual approval
- Send alert to Loss Prevention
- Block auto-approval
SLA Monitoring
Track processing time commitments.
Trigger: Approaching SLA (24 hours before)
Conditions:
- Status = Received or Inspecting
- Priority = Normal or High
Actions:
- Send internal alert
- Escalate priority
- Add note "SLA deadline approaching"
Post-Refund Feedback
Collect feedback after resolution.
Trigger: Refund Processed
Conditions:
- Return type = Refund
- Feedback not already requested
Actions:
- Wait 2 days
- Send feedback request email
- Add tag "Feedback-Requested"
Conditional Logic
AND vs OR Conditions
AND - All conditions must be true:
- Order value > $100 AND
- Return reason = "Defective" AND
- Customer is verified
OR - Any condition can be true:
- Return reason = "Warranty" OR
- Return reason = "Defective" OR
- Product tag = "Quality-Issue"
Nested Conditions
Combine AND/OR for complex logic:
(Return reason = "Warranty" OR Return reason = "Defective")
AND
Order value > $50
AND
Customer not flagged
Action Sequencing
Actions run in order. Use delays for timing:
1. Update status to Approved [Immediate]
2. Wait 5 minutes
3. Process refund [After delay]
4. Wait 1 hour
5. Send confirmation email [After refund settles]
Error Handling
Configure what happens when actions fail:
| Setting | Behaviour |
|---|---|
| Stop on Error | Halt automation, alert admin |
| Continue | Skip failed action, proceed |
| Retry | Attempt action again (3x) |
| Fallback | Run alternative action |
Automation Logs
View automation history at Settings → Automations → Logs:
- Trigger timestamp
- Conditions evaluated
- Actions performed
- Success/failure status
- Error details if failed
Performance Tips
- Limit conditions to necessary checks only
- Order conditions from most to least restrictive
- Avoid duplicate automations with similar triggers
- Use tags to prevent re-triggering
- Test thoroughly before enabling
Best Practices
- Start with simple automations and add complexity gradually
- Use descriptive names that explain the automation purpose
- Include conditions to prevent infinite loops
- Test with sample data before enabling
- Monitor logs regularly for failures
- Document automations for team reference
- Review and clean up unused automations quarterly