Workflow
Custom Alerts for Critical Tracking Events in Fetch
Manually checking every order for critical tracking updates is not sustainable when you're scaling. Missing a 'delivered' status or a 'return to sender' event can lead to lost profits or negative buyer feedback. Fetch automates the detection of these events, but to truly leverage it, you need custom alerts that surface the most urgent actions directly to your workflow.
This guide details how to set up custom alerts within Fetch, utilizing its automated tracking data to trigger notifications for key events like refund requests, delivery confirmations, and problematic logistics statuses.
Identifying Critical Tracking Events for Alerts
Before configuring alerts, define what constitutes a 'critical' event for your dropshipping operation. These are typically events that require immediate attention to prevent issues or capitalize on opportunities.
Refund Requests (gmt_refund, refund_status)
The most time-sensitive event. AliExpress refund requests have tight windows for seller response. Fetch detects these through the gmt_refund and refund_status fields.
- Alert Trigger: A new value appears in
gmt_refund, orrefund_statuschanges to a pending state (e.g.,SELLER_PENDING_AGREE,SELLER_PENDING_CONFIRM_REFUND). - Action Required: Review the refund request on AliExpress, communicate with the buyer, and decide on a resolution.
Delivery Confirmation (logistics_status, order_status)
Knowing exactly when an item is delivered is crucial for several reasons: confirming receipt, triggering feedback requests, or initiating follow-ups for high-value items. Fetch uses logistics_status and order_status.
- Alert Trigger:
logistics_statusequalsDELIVERED. For some carriers,order_statusmight transition toFINISHshortly after delivery confirmation. - Action Required: Send a feedback request to the eBay buyer, update your internal records, or follow up if any delivery issues were anticipated.
Problematic Logistics Statuses
These statuses indicate potential issues that could lead to delays, returns, or lost packages, requiring proactive intervention.
- 'Return to Sender' / 'Undeliverable':
logistics_statuscontains keywords like 'Return to Sender', 'Undeliverable', 'Refused', or similar phrases. This often means incorrect address, customs issues, or the buyer not picking up the package. - 'Customs Clearance Failed':
logistics_statusindicates a failure in customs. This requires immediate action, potentially contacting the carrier or buyer for documentation. - 'Held at Customs': The package is stuck in customs. While not a failure, prolonged holds need investigation.
- Action Required: Contact the buyer on eBay, investigate with the AliExpress seller or carrier, and prepare for potential reshipment or refund.
Buyer Accept Goods (order_status)
While less critical than a refund request, knowing when a buyer confirms receipt on AliExpress (or the system auto-confirms) can be useful for reconciliation or closing out an order lifecycle.
- Alert Trigger:
order_statusequalsBUYER_ACCEPT_GOODSorFINISH. - Action Required: Internal record keeping, perhaps triggering a delayed feedback request if not already sent.
The power of custom alerts lies in focusing your attention only on orders that demand it. By filtering out the noise of routine tracking updates, you can manage a higher volume of orders with fewer resources.
Setting Up Custom Alerts in Fetch
Fetch integrates with Google Sheets, allowing you to use Google Sheets' native notification features or third-party integrations (like Zapier or Make.com) to trigger alerts based on Fetch's updated data.
Method 1: Google Sheets Notification Rules
This is the simplest method for direct email alerts.
- Identify the Trigger Column: In your Fetch-synced Google Sheet, identify the column corresponding to the critical event (e.g.,
refund_status,logistics_status). - Open Script Editor: Go to
Extensions > Apps Script. - Create a Simple Script: Write a Google Apps Script function that checks for your conditions.
function checkCriticalEvents() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName('Fetch_Orders'); // Replace with your sheet name
const dataRange = sheet.getDataRange();
const values = dataRange.getValues();
// Assuming header row, start from row 1 (index 1)
for (let i = 1; i < values.length; i++) {
const orderId = values[i][0]; // Assuming Order ID is in column A (index 0)
const refundStatus = values[i][/* REFUND_STATUS_COLUMN_INDEX */]; // e.g., 8 for column I
const logisticsStatus = values[i][/* LOGISTICS_STATUS_COLUMN_INDEX */]; // e.g., 12 for column M
// Example: Alert for new refund request
if (refundStatus === 'SELLER_PENDING_AGREE' && !values[i][/* ALERT_SENT_COLUMN_INDEX */]) {
MailApp.sendEmail('your_email@example.com', 'Fetch Alert: New Refund Request for ' + orderId, 'A new refund request has been initiated for order ' + orderId + '. Please check AliExpress.');
sheet.getRange(i + 1, /* ALERT_SENT_COLUMN_INDEX */ + 1).setValue('SENT'); // Mark as sent
}
// Example: Alert for 'Return to Sender'
if (logisticsStatus && logisticsStatus.includes('Return to Sender') && !values[i][/* ALERT_SENT_COLUMN_INDEX */]) {
MailApp.sendEmail('your_email@example.com', 'Fetch Alert: Return to Sender for ' + orderId, 'Order ' + orderId + ' is being returned to sender. Investigate immediately.');
sheet.getRange(i + 1, /* ALERT_SENT_COLUMN_INDEX */ + 1).setValue('SENT');
}
}
}
Note: You'll need to create an additional column in your sheet (e.g., 'Alert Sent') to prevent repeat notifications for the same event. Replace /* COLUMN_INDEX */ with the actual 0-based index of your columns.
- Set Up a Time-Driven Trigger: In the Apps Script editor, click the clock icon (Triggers). Click 'Add Trigger', select
checkCriticalEventsas the function, 'Time-driven' as the event source, and set it to run every few hours (e.g., 'Every 4 hours').
Method 2: Using Zapier/Make.com for Advanced Alerts
For more sophisticated alerts (SMS, Slack, CRM integration), use automation platforms.
- Connect Google Sheets: Set up a trigger in Zapier/Make.com for 'New or Updated Spreadsheet Row' in your Fetch-synced Google Sheet.
- Define Conditions: Add a 'Filter' step.
- For Refund Request: Condition:
refund_status(from Google Sheet)(Text) ContainsPENDINGorSELLER_PENDING. - For Delivered: Condition:
logistics_status(Text) Exactly MatchesDELIVERED. - For Return to Sender: Condition:
logistics_status(Text) ContainsReturn to Sender. - Choose Your Action:
- Email: Send an email via Gmail or another email service.
- Slack: Post a message to a specific channel.
- SMS: Send a text message (e.g., via Twilio).
- Task Management: Create a task in Asana, Trello, or ClickUp.
- CRM Update: Update a customer record if integrated.
- Include Dynamic Data: In your alert message, pull in relevant Fetch fields like
order_id,logistics_status,refund_status,tracking_number, and the AliExpress order URL to provide immediate context.
Best Practices for Alert Management
- Prioritize: Not every event needs an instant alert. Distinguish between critical, urgent, and informational updates.
- Consolidate: If you receive many alerts, consider a daily digest for less critical items.
- Clear Call to Action: Ensure your alert message clearly states what action is required and provides necessary links (e.g., to the AliExpress order page).
- Review and Refine: Periodically review your alerts. Are you missing anything? Are you getting too much noise? Adjust your triggers and conditions as your operation evolves.
- Mark as Handled: Implement a mechanism (like the 'Alert Sent' column in Google Sheets or a status update in your task manager) to avoid repeat alerts for the same event.
By implementing custom alerts for critical tracking events, you transform Fetch from a data aggregator into a proactive assistant, ensuring you're always on top of your eBay × AliExpress dropshipping operations. This proactive approach minimizes losses, improves customer satisfaction, and frees up your time to focus on growth.
Ready to streamline your order tracking and refund detection? Learn more about Fetch Order Tracking and get started today.