Installment advancements

Create installment advancement (deprecated)

Create an installment advancement for an account. This is a DEPRECATED endpoint. Use the non-deprecated Create installment advancement 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 and Creating an installment advancment.

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

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

Path parameters

accountIdinteger required
Example:6912345

Account ID

Headers

x-cidstring

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. You can find the x-cid field in the response header from an API endpoint call. If this field isn't passed, one is automatically generated.

Request body

transaction_idinteger

Transaction ID

tracking_idstring

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_currentboolean

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_advanceinteger

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.

Example request

{
  "transaction_id": 98457355,
  "tracking_id": "3ea22692-a209-11eb-89a2-f73e179dcbc2",
  "condition": "SINGLE_CONTRACT",
  "calculator": "PRESENT_VALUE",
  "reschedule": "ADVANCEMENT",
  "number_of_installments_to_advance": 3
}

Response

OK

advancement_idinteger

Advancement ID

tracking_idstring

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_atstring date-time

Date/time advancement was created. Format = yyyy-mm-dd:hr:mm:ss.

accountIdinteger

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.

Example response

{
  "advancement_id": 67854328,
  "tracking_id": "3ea22692-a209-11eb-89a2-f73e179dcbc2",
  "created_at": "2021-04-14T12:00:00-03:00",
  "accountId": 67854328,
  "condition": "SINGLE_CONTRACT",
  "calculator": "PRESENT_VALUE",
  "reschedule": "ADVANCEMENT",
  "installments": [
    {
      "id": 98457355,
      "new_amount": 99.9,
      "old_amount": 102.9,
      "new_interest_amount": 9.9,
      "old_interest_amount": 11.9,
      "new_statement_id": 1,
      "old_statement_id": 10
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.