---
title: "Create program transaction category"
method: POST
path: "/statements-v2/v1/transactions-categories"
tags: ["Program transaction categories"]
---

# Create program transaction category

`POST /statements-v2/v1/transactions-categories`

## Request

- Base URL: `https://sandbox.pismolabs.io`
- URL: `https://sandbox.pismolabs.io/statements-v2/v1/transactions-categories`
- Auth: HTTP bearer

Create a program transaction category. Program transaction categories are used to group transaction types and set properties for the group. Transaction types, in combination with processing codes, are used to define how financial operations are implemented on the Pismo platform. 

For more information, refer to [Using configurable entities](doc:full-balance-credit-program#using-configurable-entities) and [Transaction category structure](doc:configuring-accrual-rates#transaction-category-structure).

## Headers

- `Authorization` string, required
- `program-id` string, required

## Request body

- TransactionCategoryRequest
  - `default_rate` number, float, required: Interest rate used for the accrual type `OVERDUE` when the statement is past the due date and the MAD has not been paid. (The account is overdue.) By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `fine_rate` number, float, required: Fine rate. Charged once per transaction when transaction is due.
  - `minimum_value` number, float, required: Minimum value to calculate the minimum amount due (MAD). This field is a percent, so 1.0 is 100%. Allowable values are between 0 and 1.
  - `overdue_rate_after_due_date` number, float, required: Interest rate used for the accrual type `REFINANCING` if the statement due date has passed and the MAD was not paid. <b>Note:</b> If this value is null, `refinancing_rate_after_due_date` is used instead. By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `refinancing_rate_after_due_date` number, float, required: Interest rate for the accrual type `REFINANCING` if the statement due date is past, but the account is not overdue. (That is, the MAD was paid.) By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `description` string: Transaction category description
  - `charge_order` integer: Indicates which transaction is discharged first. 1 is the highest in the hierarchy.
  - `secondary_charge_order` integer: An alternative form of discharge priority for debit transactions. This field is only used if the `secondary_charge_order` parameter is active at the account level. In the discharge flow, the Pismo platform checks to see if `secondary_charge_order` is set for the account and is positive. If so, then the platform ignores the `charge_order` field and uses the `secondary_charge_order` field instead. Use <a href="https://developers.pismo.io/pismo-docs/reference/account-parameters-update">Update account parameter</a> to set this parameter. The endpoint requires the ID of the parameter. Use <a href="https://developers.pismo.io/pismo-docs/reference/account-parameters-find">List account parameters</a> to find the ID. For example, if you want the `secondary_charge_order` field to be used for transactions on the account with account ID 1234, and the ID for the parameter is 108, then you should call the Update account parameter endpoint with `accountId` = `1234`, `parameterId` = 108, and `value` = 1.

## Response `201`

Created

- TransactionCategoryResponse
  - `transaction_category_id` integer: Transaction category ID
  - `transaction_category_description` string: Transaction category description
  - `refinancing_rate_after_due_date` number, float: Interest rate for the accrual type `REFINANCING` if the statement due date is past, but the account is not overdue. (That is, the MAD was paid.) By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `default_rate` number, float: Interest rate used for the accrual type `OVERDUE` when the statement is past the due date and the MAD has not been paid. (The account is overdue.) By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `fine_rate` number, float: Fine rate. Charged once per transaction when transaction is due.
  - `overdue_rate_after_due_date` number, float: Interest rate used for the accrual type `REFINANCING` if the statement due date has passed and the MAD was not paid. <b>Note:</b> If this value is null, `refinancing_rate_after_due_date` is used instead. By default, this is a monthly rate, so the Pismo platform divides it by 30 before applying it on a daily basis. For more information, refer to [Changing the interest rate period](doc:configuring-accrual-rates#changing-the-interest-rate-period).
  - `minimum_value` number, float: Minimum value to calculate the minimum amount due (MAD). This field is a percent, so 1.0 is 100%. Allowable values are between 0 and 1.
  - `charge_order` integer: Indicates which transaction is discharged first. 1 is the highest in the hierarchy.
  - `secondary_charge_order` integer: An alternative form of discharge priority for debit transactions. This field is only used if the `secondary_charge_order` parameter is active at the account level. In the discharge flow, the Pismo platform checks to see if `secondary_charge_order` is set for the account and is positive. If so, then the platform ignores the `charge_order` field and uses the `secondary_charge_order` field instead. Use <a href="https://developers.pismo.io/pismo-docs/reference/account-parameters-update">Update account parameter</a> to set this parameter. The endpoint requires the ID of the parameter. Use <a href="https://developers.pismo.io/pismo-docs/reference/account-parameters-find">List account parameters</a> to find the ID. For example, if you want the `secondary_charge_order` field to be used for transactions on the account with account ID 1234, and the ID for the parameter is 108, then you should call the Update account parameter endpoint with `accountId` = `1234`, `parameterId` = 108, and `value` = 1.
  - `program_id` integer: Program ID
  - `programs` integer[]: Programs that use this transaction category in one or more transaction types

## Other responses

- `400`: Bad Request
- `404`: Not found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/pismo/apis/revolving-credit-statements.md) - [All operations](https://skmtc.dev/pismo/apis/revolving-credit-statements/llms.txt) - [OpenAPI document](https://skmtc.dev/pismo/apis/revolving-credit-statements/revisions/09f552b0f850?raw)
