# GASLESS_PENDING

> Gasless order pending: A gasless order for this quote, or for the same wallet and sell token, is still being relayed.

Source: https://docs.layerhop.com/errors/GASLESS_PENDING

| HTTP status | Retry |
|---|---|
| `409` | with backoff |

**Where it comes from:** `POST /v1/orders/gasless` and `GET /v1/orders/gasless/{quoteId}`.

## Causes

- The same quote was submitted twice at once (a double click, a retry before the first request answered). Only the first submission is relayed.
- `GET /v1/orders/gasless/{quoteId}` was called while the signatures were still on their way to the relayer.
- The relayer (0x) still has a pending gasless trade for the same wallet and sell token (`PENDING_TRADES_ALREADY_EXIST`).

## How to fix

- Don't resubmit: poll `GET /v1/orders/gasless/{quoteId}` every few seconds until it returns a state.
- For a pending trade of the same token, wait until it is mined or failed, then quote again.

## Example response

```json
{
  "error": {
    "code": "GASLESS_PENDING",
    "message": "{\n  \"error\": {\n    \"code\": \"GASLESS_PENDING\",\n    \"message\": \"This quote is being submitted right now; poll GET /v1/orders/gasless/{quoteId} in a moment\",\n    \"requestId\": \"0d5e1f6a-…\",\n    \"docsUrl\": \"https://docs.layerhop.com/errors/GASLESS_PENDING\"\n  }\n}",
    "requestId": "0d5e1f6a-3b2c-4d1e-8f9a-7b6c5d4e3f21",
    "docsUrl": "https://docs.layerhop.com/errors/GASLESS_PENDING"
  }
}
```

See [Error handling & retries](/guides/error-handling) for a retry strategy, and the [error catalog](/errors) for every code.
