---
title: "Create dormancy configuration"
method: POST
path: "/corporate/v2/dormancy-config"
tags: ["Dormancy"]
---

# Create dormancy configuration

`POST /corporate/v2/dormancy-config`

Create a dormancy configuration at the division or program level. This configuration sets the days of inactivity required for accounts to switch to a dormant status and the reason for the switch.
The dormancy configuration is applied to all accounts under the specified division or program.
Automated dormancy checks are performed according to the number of days specified in the dormancy configuration.

For information about dormancy, refer to [Dormancy overview](https://developers.pismo.io/pismo-docs/docs/dormancy-overview).

This endpoint generates a [Dormancy configuration created](https://developers.pismo.io/events/docs/corporate-dormancy-config-creation-1) event.

## Request body

- CreateDormancyConfigRequestv2 — Create dormancy configuration response object
  - `check_time` string, time, required — Dormancy check time<br> <b>Note</b>: The timezone is inherited from the customer's divisions or programs.
  - `target_type` 'DIVISION' | 'PROGRAM', required — Dormancy configuration target
  - `target_id` string, required — Target ID. When `target_type` is `DIVISION`, this value is the division code. Likewise, when `target_type` is `PROGRAM`, the value is the program ID, and so on.
  - `statuses` object[], required — List of objects containing all the information pertinent to an organization's valid account status
    - `status` 'NORMAL' | 'BLOCKED' | 'CANCELLED', required — Account status
    - `days` integer, required — Days the account must be inactive before it is transitioned to the specified status.
    - `reason_external_id` string, required — External reason ID specifying account restrictions<br> `minimum: 1` `maximum: 120`
    - `reactivation_with_last_restriction` boolean — Whether the account should be reactivated to `normal` with its last manual change restriction (`true`) or not (`false`).
    - `restrictions` object[] — Objects that contain the information related to account dormancy restrictions.
      - `current_reason_external_id` string — The custom reason ID related to the `current_reason_id` specified in the dormancy restrictions. The dormancy configuration checks to see whether the current `reason_external_id` matches the one in the configuration. If yes, the new `reason_external_id` is the `new_reason_external_id`.
      - `new_reason_external_id` string — The custom reason ID related to the `new_reason_id` specified in the dormancy restrictions.
  - `dormant_processing_codes` ValidProcessingCode[] — List of processing codes that prevent account reactivation. If there are financial transactions in an account that were made with any of these codes, the account cannot be reactivated.
  - `deny_forced_transaction_reactivation` boolean — Whether an account under that dormancy configuration should be reactivated when a forced transaction is made to that account (`true`) or not (`false`).
  - `check_timezone_origin` 'PROGRAM' | 'DIVISION' — Specify whether the dormancy check uses the timezone of the account’s program or division. If not specified, the timezone of `target_id` is used.
  - `reactivation_exceptions_config` ReactivationExceptionsConfig — Specifies configuration rules that allow certain transactions to bypass dormancy reactivation based on defined transaction attributes and their corresponding values.
    - `field` string, required — Specifies which transaction attribute is checked in order to determine whether a transaction is exempt from reactivating a dormant account.
    - `values` ValidExceptionValue[], required — Lists the values that, when present in the specified field, prevent the account from being reactivated by that transaction.

## Response `201`

Created

- CreateDormancyConfigResponse — Create dormancy configuration response object
  - `check_time` string, time, required — Dormancy check time<br> <b>Note</b>: The timezone is inherited from the customer's divisions or programs.
  - `target_type` 'DIVISION' | 'PROGRAM', required — Dormancy configuration target
  - `target_id` string, required — Target ID. When `target_type` is `DIVISION`, this value is the division code. Likewise, when `target_type` is `PROGRAM`, the value is the program ID, and so on.
  - `statuses` object[], required — List of objects containing all the information pertinent to an organization's valid account status
    - `status` 'NORMAL' | 'BLOCKED' | 'CANCELLED', required — Account status
    - `days` integer, required — Days the account must be inactive before it is transitioned to the specified status.
    - `reactivation_with_last_restriction` boolean — Whether the account should be reactivated to `normal` with its last manual change restriction (`true`) or not (`false`).
    - `reason_id` integer, required — Account status reason ID<br> `minimum: 1` `maximum: 4294967295`
    - `reason_external_id` string — External reason ID specifying account restrictions<br> `minimum: 1` `maximum: 120`
    - `restrictions` object[] — List of objects that contains the information related to account dormancy restrictions.<br> If there is a restriction in the list and the account's current reason is different from the value in `current_reason_id`, the dormancy configuration sets the reason to the value of the `reason_id` field. However, If the account's current reason is identical to the one in `current_reason_id`, the dormancy configuration sets the value to the `new_reason_id` field; in other words, the value in `new_reason_id` is the result of `reason_id` plus `current_reason_id`.
      - `current_reason_id` integer, required — The dormancy configuration checks whether the current account `reason_id` is the same as the current account reason. If they are different, the dormancy configuration sets the reason to the value in the `reason_id` field.
      - `new_reason_id` integer, required — This is the reason ID when the current account `reason_id` value is the same as `current_reason_id`.
      - `current_reason_external_id` string — The custom reason ID related to the `current_reason_id` specified in the dormancy restrictions. The dormancy configuration checks to see whether the current `reason_external_id` matches the one in the configuration. If yes, the new `reason_external_id` is the `new_reason_external_id`.
      - `new_reason_external_id` string — The custom reason ID related to the `new_reason_id` specified in the dormancy restrictions.
  - `dormancy_config_validity` DormancyConfigValidityWithoutEnd, required — The datetimes for dormancy configuration validity
    - `start` string — Date and time the dormancy configuration starts to be valid. Format = yyyy-mm-dd:hr:mm:ss.
  - `dormant_processing_codes` ValidProcessingCode[] — List of processing codes that prevent account reactivation. If there are financial transactions in an account that were made with any of these codes, the account cannot be reactivated.
  - `deny_forced_transaction_reactivation` boolean — Whether an account under that dormancy configuration should be reactivated when a forced transaction is made to that account (`true`) or not (`false`).
  - `id` string, uuid — Dormancy configuration ID generated internally
  - `check_timezone_origin` 'PROGRAM' | 'DIVISION' — Specify whether the dormancy check uses the timezone of the account’s program or division. If not specified, the timezone of `target_id` is used.
  - `reactivation_exceptions_config` ReactivationExceptionsConfig — Specifies configuration rules that allow certain transactions to bypass dormancy reactivation based on defined transaction attributes and their corresponding values.
    - `field` string, required — Specifies which transaction attribute is checked in order to determine whether a transaction is exempt from reactivating a dormant account.
    - `values` ValidExceptionValue[], required — Lists the values that, when present in the specified field, prevent the account from being reactivated by that transaction.

## Other responses

- `400` — Bad Request
- `401` — Access token is missing or invalid
- `403` — The request has been lost
- `404` — Not Found
- `500` — Internal server error

---

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