Skip to main content
POST
/
subscriptions
/
renewals
/
{id}
/
retry
Retry a failed renewal
curl --request POST \
  --url https://api.billing.io/v1/subscriptions/renewals/{id}/retry \
  --header 'Authorization: Bearer <token>'
{
  "id": "ren_1a2b3c4d5e",
  "org_id": "<string>",
  "subscription_id": "<string>",
  "period_start": "2023-11-07T05:31:56Z",
  "period_end": "2023-11-07T05:31:56Z",
  "amount": 123,
  "checkout_id": "<string>",
  "attempt_count": 123,
  "max_attempts": 123,
  "next_attempt_at": "2023-11-07T05:31:56Z",
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z"
}
Retry a failed renewal by creating a new checkout for the billing amount.
curl -X POST https://api.billing.io/v1/subscriptions/renewals/ren_a1b2c3d4e5f6/retry \
  -H "Authorization: Bearer $BILLING_API_KEY"

Authorizations

Authorization
string
header
required

Use your secret API key as a Bearer token. Keys are prefixed: sk_live_ (production) or sk_test_ (sandbox).

Path Parameters

id
string
required

The renewal identifier (prefixed ren_)

Response

Renewal retried

id
string

Unique identifier (prefixed ren_)

Example:

"ren_1a2b3c4d5e"

org_id
string

Organization identifier

subscription_id
string

Subscription identifier

period_start
string<date-time>

Start of the billing period

period_end
string<date-time>

End of the billing period

amount
number<double>

Renewal amount

token
enum<string>

Stablecoin token

Available options:
USDT,
USDC
checkout_id
string | null

Associated checkout identifier

status
enum<string>
  • pending — Renewal is scheduled
  • checkout_created — Checkout has been created for this renewal
  • paid — Renewal was successfully paid
  • failed — Renewal payment failed
  • skipped — Renewal was skipped (e.g., paused subscription)
Available options:
pending,
checkout_created,
paid,
failed,
skipped
attempt_count
integer

Number of payment attempts made

max_attempts
integer

Maximum payment attempts allowed

next_attempt_at
string<date-time> | null

When the next payment attempt will occur

environment
enum<string>
Available options:
live,
sandbox
created_at
string<date-time>
updated_at
string<date-time>