---
title: "List recurring charge plans"
method: GET
path: "/v1/recurring-charge-plans"
tags: ["Recurring charge plans"]
---

# List recurring charge plans

`GET /v1/recurring-charge-plans`

Returns a list of recurring charge plans.

**NOTE:** This endpoint requires an account token — an access token encoded with an account ID. Tokens can expire quickly, which can result in a **401 Unauthorized** message.

## Query parameters

- `page` integer
- `perPage` integer
- `active` boolean

## Headers

- `x-cid` string

## Response `200`

OK - Indicates that the server accepted the request and returned the results. If no records are found, the request returns an empty array with `total_items` set to 0.

- PagedRecurringChargePlan — Response to a request to get a recurring charge plan.
  - `current_page` integer — Current page number
  - `per_page` integer — Maximum number of items per page
  - `pages` integer — Number of pages
  - `total_items` integer — Total number of items
  - `is_last_page` boolean — Set to `true` if this is the last page.
  - `items` RecurringChargePlan[]
    - `recurring_charge_plan_id` integer — ID of recurring charge plan
    - `org_id` string — Organization ID
    - `processing_code` string — Processing code for the debit transaction. If `split_transaction` is `false` (the default), each installment payment is recorded as one debit transaction equal to the installment amount minus the discount, and `processing_code` is the processing code for that transaction. If `split_transaction` is `true`, each installment payment is recorded as two transactions: a debit transaction for the installment amount and a credit transaction for the discount. In this case, `processing_code` is the processsing code for the debit transaction, and `second_processing_code` is the processing code for the credit transaction.
    - `installment_amount` number, double — `installment_amount` is the full amount of an installment before any discount is applied.
    - `description` string — Used if the recurring charge link description is not provided. Use "{counter}" to indicate where the cycle count should be placed. Example: "{counter} Annuity" generates "2/12 Annuity" for the second of twelve installments. If "{counter}" is not present, the counter is placed at the end of the description. If no description is provided, the transaction type's description is used and the counter is not shown.
    - `split_transaction` boolean — Use separate transactions for the installment amount and the discount? Suppose the installment amount for a cycle is $20 and the discount is $2. If `split_transaction` is `false`, then one debit transaction for $18 ($20 - $2) is posted to the account for that cycle. It also appears as one debit transaction on the statement. If `split_transaction` is `true`, then two transactions are posted to the account — a debit transaction for $20 and a credit transaction for $2 — and those two transactions appear on the statement. When `split_transaction` is `true`, `secondary_processing_code` is used to create the credit transaction. Note: You aren't forced to specify a debit transaction with `processing_code` and a credit transaction with `secondary_processing_code`, but it's highly recommended. It's difficult to think of a scenario where you would want to do something else.
    - `secondary_processing_code` string — Used to create the transaction for `secondary_installment_amount`. Normally, you should use a processing code for a credit transaction.
    - `secondary_description` string — Used to create a description for the secondary transaction. Use "{counter}" to indicate where the cycle count should be placed. Example: "{counter} Annuity" generates "2/12 Annuity" for the second of twelve installments. If "{counter}" is not present, the counter is placed at the end of the description. If no description is provided, the transaction type's description is used and the counter is not shown.
    - `number_of_cycles` integer — Number of cycles to apply the charge plan. In other words, this is the number of installments. Must be greater than `first_cycles_to_discount` if used. Otherwise, it must be greater than 0.
    - `first_cycles_to_discount` integer — The number of cycles the discount (defined by `discount_percentage`) should be applied to before reverting to the full charge. For example, if `number_of_cycles` is 6 and `first_cycles_to_discount` is 2, then the discount is applied to cycles 1 and 2. The full charge is applied to cycles 3 through 6. If present, `first_cycles_to_discount` must be positive and less than `number_of_cycles`."
    - `discount_percentage` number, double — Percentage value to be discounted if `first_cycles_to_discount` is configured. Range: 0 to 100.
    - `minimum_spend_to_charge` number, double — Minimum debit amount on statement to enable cycle charging. If `minimum_spend_to_charge` is not configured, the charge plan does not check the debit statement amount.
    - `renew_method` 'NO_RENEW' | 'WITHOUT_DISCOUNT' | 'WITH_DISCOUNT' — NO_RENEW: The link does not renew at the end of the cycle. WITHOUT_DISCOUNT: The link is renewed at the end of the cycle, but the discounts registered in the plan are not applied. WITH_DISCOUNT: The link is renewed at the end of the cycle, and the discounts registered in the plan are applied."
    - `tracking_id` string — Customer created tracking ID. Must consist of alphanumeric characters (a-z, A-Z, 0-9), hyphens (-), and colons (:), with a length from 1 to 128. The Pismo platform uses this field to implement idempotency and prevent duplicates.
    - `cid` string — The Correlation IDentifier field is used to link related API requests and events. The x-cid can help the Pismo engineering team track everything related to a call.
    - `created_at` string, date-time — Datetime program calendar strategy was created. Format = YYYY-MM-DDTHH:MM:SS:MM.

## Other responses

- `400` — Bad request
- `500` — Internal server error

---

[API](https://skmtc.net/pismo/apis/platform-authentication.md) · [All operations](https://skmtc.net/pismo/apis/platform-authentication/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pismo/platform-authentication/revisions/935b62e16de4/schema)
