Transaction shifts

Transaction shifts enable you to move a customer's purchase installment freely between statements as long as the source and destination statements are valid and open.

A transaction shift is similar to an installment advancement, but differs in two respects:

  • An installment advancement can only move installments from future statements to the current one. A transaction shift can move installments in either direction.
  • A transaction shift does not change the interest on an installment. (An installment advancement reduces it.)

A transaction cannot be shifted in the following circumstances:

  • It's a credit transaction. (Only debit transactions can be shifted.)
  • The transaction has already been discharged.
  • The transaction is not posted to a statement.
  • The source statement and destination statements are the same.
  • The source statement is closed.
  • The destination statement is closed.

Managing transaction shifts

Use the Shift transactions endpoint to move transactions. This endpoint takes an array of transactions to be shifted. For each transaction in the array, you must specify the statement that you want to move the transaction to. You do this by providing either the ID of the statement (new_statement_id) or the cycle closing date (desired_cycle_date) for the statement. A maximum of 24 transactions can be moved per request.


If you provide a desired_cycle_date that does not match any cycle closing date, the Pismo platform tries to find the closest cycle closing date after desired_cycle_date and moves the transaction to that statement.

To view the record for a performed transaction shift, use the Get transaction shift endpoint.