# Categories

This group of endpoints allow you to manage expense categories for your business.
Categories classify transactions. System-defined categories (`custom: false`) can only have their `enabled` state toggled. Custom categories (`custom: true`) can have their `name` updated and can be deleted.

 - [GET /v1/businesses/{client_id}/categories](https://developer.letsweel.com/openapi/categories/listcategories.md): Returns a paginated list of expense categories for the given business.
 - [POST /v1/businesses/{client_id}/categories](https://developer.letsweel.com/openapi/categories/createcategory.md): Creates a new custom category (`custom: true`) for the business. The name must be unique within the business.
 - [PATCH /v1/businesses/{client_id}/categories/{category_id}](https://developer.letsweel.com/openapi/categories/updatecategory.md): Updates an existing category. Accepted fields depend on the category type: - Custom categories (`custom: true`): `name` and `accounting_code_id` are mutable; `enabled` returns 400. - System categories
 - [DELETE /v1/businesses/{client_id}/categories/{category_id}](https://developer.letsweel.com/openapi/categories/deletecategory.md): Soft-deletes a custom category. Returns `400` if the category is system-defined (`custom: false`).
