# Clear Out Stale and Expired Quotes

> Finds old pending and expired quotes, then cancels, declines or deletes them in bulk after you confirm. Needs Wholesale Quotes.

- Job: [Orders & fulfilment](https://storeagent.ai/mcp-recipes/job/orders/)
- What it does: Asks first: changes your store, only after you say yes
- Time saved: ~20 min vs doing it by hand
- Requires: StoreAgent (free plugin, MCP on every plan) + Wholesale Suite
- Works in: Claude, ChatGPT, Cursor and any MCP client connected to the store through StoreAgent MCP
- Web page: https://storeagent.ai/mcp-recipes/quote-queue-cleanup/

## The prompt

```text
List pending quotes older than [45] days and all expired quotes. Show the quote number, customer email, total and age. Suggest one action for each: decline (emails the customer), cancel (no email), or delete. Deleting is permanent and removes the items, history and messages, so only suggest it for test or junk quotes. Show me the plan and wait for my explicit OK. Then apply it, using bulk updates where you can.
```

## What happens when you paste it

You: List pending quotes older than [45] days and all expired quotes…

Assistant: 23 old quotes: 14 pending over 45 days, 9 expired. 3 are test quotes from your own email address. Calling: `wholesale-suite/list-quotes`, `wholesale-suite/get-quote`, `wholesale-suite/bulk-update-quote-status`, `wholesale-suite/cancel-quote`, `wholesale-suite/delete-quote`.

Assistant: This will make changes in WooCommerce. Do you want me to go ahead?

Assistant: Declined 14 old pending quotes with one bulk update, cancelled 6 expired quotes, and deleted the 3 test quotes. 0 errors.

## Abilities this recipe calls

- **List quotes** (`wholesale-suite/list-quotes`, read only, from Wholesale Suite): Lists wholesale quotes, filtered by status, customer, date or search.
- **Get quote** (`wholesale-suite/get-quote`, read only, from Wholesale Suite): Shows one quote with its items, totals, history and messages.
- **Bulk update quote status** (`wholesale-suite/bulk-update-quote-status`, asks first, from Wholesale Suite): Approves, declines or cancels up to 50 quotes at once.
- **Cancel quote** (`wholesale-suite/cancel-quote`, asks first, from Wholesale Suite): Cancels a quote that is not yet an order, without emailing the customer.
- **Delete quote** (`wholesale-suite/delete-quote`, asks first, from Wholesale Suite): Permanently deletes a quote with its items, history and messages.

## Variations

Add one of these to the end of the prompt. Swap anything in [brackets] for your own details.

- Cancel everything quietly, do not email anyone.
- Leave quotes over [$5,000] for me to handle.

## Related recipes

- [Are Stuck Tasks Holding Up My Orders?](https://storeagent.ai/mcp-recipes/booster-stuck-orders.md): Line up overdue Booster tasks with orders sitting in Pending or On hold, so you know where to look before customers ask.
- [Check Which Order Alerts Are Switched On](https://storeagent.ai/mcp-recipes/pushengage-order-alert-audit.md): Lists every PushEngage push and WhatsApp alert for WooCommerce order events, shows which are off, and matches them to your real order volume.
- [Find Late and Stuck Shipments](https://storeagent.ai/mcp-recipes/trackship-stuck-shipments.md): Every late or stuck parcel with the customer behind it, so you can reach out before they email you.

---

Part of the StoreAgent WooCommerce MCP Recipes directory: https://storeagent.ai/mcp-recipes/ (index for LLMs: https://storeagent.ai/mcp-recipes/llms.txt). Get StoreAgent free: https://app.storeagent.ai/sign-up/
