> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.ordergroove.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.ordergroove.com/_mcp/server.

# Retry Instructions

> **Alpha**
>
> The retry instruction endpoints are in Alpha and available by request only. To request access, contact your Customer Success Manager.

The retry instruction endpoints support payment recovery services. When an order fails placement, Ordergroove classifies the failure and then waits for your decision: retry the order with a new place date, or reject it.

---

## How the flow works

Once retry instructions are enabled for a merchant, a failed order moves through these steps:

1. The order fails placement. Its status changes to `20` (awaiting response classification) while Ordergroove classifies the failure.
2. Once the failure is classified, the status changes to `19` (awaiting retry instructions). The order's `rejected_message` holds the classification as a JSON string, with the Ordergroove error `code`, a `message`, and a `category`.
3. Ordergroove sends the `order.awaiting_retry_instructions` event.
4. You call one of the retry instruction endpoints:
   * [Retry](/reference/rest-rpc-api/orders/retry) sets a new place date and changes the status to `18`, so Ordergroove attempts the order again on that date.
   * [Reject](/reference/rest-rpc-api/orders/reject-order) changes the status to `3` (rejected).

Both endpoints accept Application API Scope only. They return `400` if the order's status isn't `19`. For what each status means, see [Order Status Codes](/api-reference/order-status-codes).

To retry an order that has already been rejected, use [Rescue](/reference/rest-rpc-api/orders/order-rescue) instead.