---
title: "Create installment advancement (deprecated)"
method: POST
path: "/v1/accounts/{accountId}/installment-advance"
tags: ["Installment advancements"]
deprecated: true
---

# Create installment advancement (deprecated)

`POST /v1/accounts/{accountId}/installment-advance`

## Request

- Base URL: `https://sandbox.pismolabs.io/installment-management`
- URL: `https://sandbox.pismolabs.io/installment-management/v1/accounts/{accountId}/installment-advance`
- Auth: HTTP bearer

> **Deprecated.**

Create an installment advancement for an account. This is a DEPRECATED endpoint. Use the non-deprecated [Create installment advancement](ref:createinstallmentadvancementv2) endpoint instead.<br>
An installment advancement moves one or more future installments to the current cycle.

To advance installments for a specific installment agreement (contract), set the `condition` field to `SINGLE_CONTRACT`, and set the `transaction_id` field to the transaction ID of any of the installments in the installment agreement. Specify the number of installments to advance in the `number_of_installments_to_advance` field. Installments are advanced starting with the last scheduled installment in the agreement and working backwards from there.

To advance <b>all</b> future installments for <b>all</b> installment agreements in the account, set the `condition` field to `ALL_CONTRACTS`. (In this case, the `number_of_installments_to_advance` field is ignored.)

When you advance installments, you must specify what to do with the interest. You have three options:
1. To remove 100% of the interest on the advanced installment(s), set the `remove_interest_from_current` field to `true` and the `calculator` field to `REMOVE_ALL_INTEREST`.
2. To advance 100% of the interest on the advanced installment(s), set `remove_interest_from_current` to `false` and set `calculator` to `NONE`.
3. To recalculate the interest applied to the advanced installment(s), set `calculator` to `PRESENT_VALUE`. You can set the `remove_interest_from_current` field  to either `true` or `false`. If `true`, the system recalculates interest on installments that were already in the current cycle (and did not need to be advanced). Otherwise, interest on those installments remains unchanged.
For more information, refer to [Installment advancements](doc:installment-management#installment-advancements) and [Creating an installment advancment](doc:installment-management#creating-an-installment-advancement).

This endpoint generates an <a href='https://developers.pismo.io/events/docs/balance-installment-advancement-1'>Installment advanced</a> event.

## Path parameters

- `accountId` integer, required

## Headers

- `x-cid` string

## Request body

- CreateInstallmentAdvancedRequestDto: Parameters for requesting an advancement
  - `transaction_id` integer: Transaction ID
  - `tracking_id` string: Tracking ID. A client-supplied tracking ID that can be used to keep track of an advancement. Must consist of the characters [a-z,A-Z,0-9,-,:] with a range from 1 to 128. **Note:** For a given account ID, the tracking ID must be unique. You cannot reuse the same tracking ID in another call to this endpoint, even if the earlier call returned an error, unless you use a different account ID.
  - `condition` 'SINGLE_CONTRACT' | 'ALL_CONTRACTS': Installments should be advanced for all the contracts for an account (`ALL_CONTRACTS`) or for a specific contract (`SINGLE_CONTRACT`). If `condition` is set to `SINGLE_CONTRACT`, then the `transaction_id` field must be set to the transaction ID of the specific contract.
  - `remove_interest_from_current` boolean: Whether interest should be removed when an installment is advanced.
  - `calculator` 'PRESENT_VALUE' | 'REMOVE_ALL_INTEREST' | 'NONE': Type of calculation to apply. Default is `NONE`.
  - `reschedule` 'ADVANCEMENT': Reschedule mode to apply. Must be `ADVANCEMENT`.
  - `number_of_installments_to_advance` integer: Number of installments to advance This field is **REQUIRED** if `contract_condition` is set to `SPECIFIC_NUMBER_OF_INSTALLMENTS`. If `contract_condition` is set to `ALL_CONTRACTS`, this field is ignored.

## Response `202`

OK

- CreateInstallmentAdvancedResponseDto: Response returned by advancement creation request
  - `advancement_id` integer: Advancement ID
  - `tracking_id` string: Tracking ID. A client-supplied tracking ID that can be used to keep track of an advancement. Must consist of the characters [a-z,A-Z,0-9,-,:] with a range from 1 to 128.
  - `created_at` string, date-time: Date/time advancement was created. Format = yyyy-mm-dd:hr:mm:ss.
  - `accountId` integer: Account ID
  - `condition` 'SINGLE_CONTRACT' | 'ALL_CONTRACTS': Installments should be advanced for all the contracts for an account (`ALL_CONTRACTS`) or for a specific contract (`SINGLE_CONTRACT`). If `condition` is set to `SINGLE_CONTRACT`, then the `transaction_id` field must be set to the transaction ID of the specific contract.
  - `calculator` 'PRESENT_VALUE' | 'REMOVE_ALL_INTEREST' | 'NONE': Type of calculation to apply. Default is `NONE`.
  - `reschedule` 'ADVANCEMENT': Reschedule mode to apply. Must be `ADVANCEMENT`.
  - `installments` InstallmentResponseDto[]
    - `id` integer: Transaction ID of the installment
    - `new_amount` number, double: Full installment amount after applying any discount, including principal and interest charges
    - `old_amount` number, double: Full installment amount before applying any discount, including principal and interest charges
    - `new_interest_amount` number, double: Full interest amount of installment after applying any discount
    - `old_interest_amount` number, double: The full interest amount of an installment before applying any discount.
    - `new_statement_id` number: ID of the current statement
    - `old_statement_id` number: ID of the old statement. This is the ID of the statement on which the installment was scheduled to appear before it was advanced. For installments that are not advanced, `old_statement_id` and `new_statement_id` should contain the same values.

## Other responses

- `400`: Bad request
- `409`: Conflict
- `500`: Internal server error

---

[API](https://skmtc.dev/pismo/apis/revolving-credit-installment-management.md) - [All operations](https://skmtc.dev/pismo/apis/revolving-credit-installment-management/llms.txt) - [OpenAPI document](https://skmtc.dev/pismo/apis/revolving-credit-installment-management/revisions/214db4655f4a?raw)
