# Extending an order

For ISP batches, "extending" means **renewing** the billing period so the IPs stay yours. Bandwidth orders (residential / mobile) don't extend — they're consumed.

## Renew an ISP batch

1. Left nav → **ISP** → **My IPs** → click a batch.
2. **Renew** button at top right.
3. Pick period (monthly or annual). Annual is 10% off.
4. Confirm.

\[screenshot: ISP batch detail with Renew button]

Payment is taken from balance first, then card. The renewal date shifts by the chosen period; same IPs, same password.

## Auto-renew

By default, ISP batches **auto-renew** at the end of each period if balance covers the cost. Toggle in **My IPs → {Batch} → Settings → Auto-renew**.

If balance is insufficient and no card is on file:

* 7 days before expiry: email warning
* 3 days before: second warning
* On expiry: IPs become unreachable (`403 batch-expired`); 7-day grace begins
* After grace: IPs released to other customers

See [IP management → Renew](/products/overview-2/ip-management.md#extend--renew).

## Recover a batch in grace

If a batch expired and you missed it, you have 7 days to recover the **same** IPs:

1. **My IPs → Expired** tab → find the batch.
2. **Recover** button.
3. Pay the same monthly rate.
4. IPs become active within \~60 seconds.

Recovery is **not guaranteed** — if all IPs happened to be reassigned during grace (rare but possible for high-demand cities), recovery returns equivalent IPs in the same country/city but not identical.

## Extend via API

```bash
curl -X POST -H "Authorization: Bearer API_KEY" \
     -d '{"months":1}' \
     "https://api.helodata.com/v1/isp/batches/bat_01HX/renew"
```

Returns the new `expires_at`.

## Resizing a batch

If you want **more** IPs in the same batch, that's a separate flow — open the batch, **Add IPs**. New IPs come from the same country/city pool when possible; the batch's `expires_at` is unchanged so the new IPs are prorated to align.

## Bandwidth orders — top up, not extend

For residential and mobile, you can't "extend" but you can **top up**:

* **Residential → Buy traffic → +N GB** — adds GB to the existing pool
* Same pricing as the original order

Unused GB on pay-as-you-go does not expire. On plan tiers (Starter, Pro, …), unused GB rolls into the next month up to 50% of the plan; beyond that it's lost.

## Common pitfalls

* **Auto-renew off but no manual renewal** — batches expire silently. Always set up the dashboard alert under **Settings → Alerts**.
* **Card expired** — if your card on file expires near the renewal date, auto-renew fails. Check **Billing → Payment methods** for the expiry warning.
* **Quantity reduction** — `PATCH` quantity *down* doesn't take effect until the next renewal. Releasing IPs immediately means no refund for unused days.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.helodata.com/dashboard/extending-an-order.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
