---
search:
  tags:
    - Subscriptions
    - PUT
seo:
  description: >-
    Advances last_payment_on/next_payment_on and sets state back to… Reference
    for the PUT /subscription_purchases/{id}/renew endpoint in the Bolder API
    v2.
sidebar:
  label: Record a manual renewal
  badge: PUT
title: Record a manual renewal
type: openapi-operation
---
Advances `last_payment_on`/`next_payment_on` and sets `state` back to `active`. Decrements `remaining_payments` if the subscription has a fixed number of payments left.

`PUT /subscription_purchases/{id}/renew`

**Request body** (`application/json`)

- `payment_date` (string<date>) — Defaults to today if omitted

Request body example:

```json
{
  "payment_date": "2019-08-24"
}
```

**Responses**

- `200` — Subscription purchase renewed
- `422` — Invalid \`payment\_date\`, or validation error

Response example, 200:

```json
{
  "_links": {
    "property1": {
      "href": "string",
      "templated": true,
      "method": "get",
      "title": "string",
      "type": "string"
    },
    "property2": {
      "href": "string",
      "templated": true,
      "method": "get",
      "title": "string",
      "type": "string"
    }
  },
  "id": 0,
  "shop_id": 0,
  "contact_id": 0,
  "original_order_id": 0,
  "product_id": 0,
  "product_name": "string",
  "state": "string",
  "currency_code": "string",
  "total_renewal_fee": 0,
  "payment_interval": "string",
  "total_payments": 0,
  "remaining_payments": 0,
  "failed_attempts": 0,
  "last_payment_on": "2019-08-24",
  "next_payment_on": "2019-08-24",
  "start_date": "2019-08-24",
  "end_date": "2019-08-24",
  "cancel_at": "2019-08-24",
  "subscription_fee_id": 0,
  "renewal_discount": 0,
  "discount_num_charges": 0,
  "payments_to_skip": 0,
  "paused_by": "string",
  "paid_setup_fee": true,
  "units": 0,
  "created_on": "2019-08-24T14:15:22Z",
  "updated_on": "2019-08-24T14:15:22Z"
}
```
