# Tax Categories Tax Categories define how Products are to be taxed in different countries. A maximum number of **100** TaxCategories can be created per Project. This is a soft limit that can be increased per Project after a performance impact review. See [Limit increase guidance](/api/limit-increase-guidance.md#resource-count-limits). Learn more about taxes in our self-paced Model your taxes module. ## Representations #### TaxCategory [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategory). #### TaxCategoryDraft [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryDraft). #### TaxCategoryPagedQueryResponse [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryPagedQueryResponse). #### TaxCategoryReference [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryReference). #### TaxCategoryKeyReference [type definition](/api/projects/taxCategories.md?urn=ctp:import:type:TaxCategoryKeyReference). #### TaxCategoryResourceIdentifier [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryResourceIdentifier). #### TaxRate This type is equivalent to TaxRate and TaxRateInput in the [GraphQL API](/api/graphql/). [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxRate). #### SubRate [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:SubRate). #### TaxRateDraft [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxRateDraft). ## Get TaxCategory ### Get TaxCategory by ID [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/\{id}:GET). ### Get TaxCategory by Key [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/key=\{key}:GET). ## Query TaxCategories [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories:GET). ## Check if TaxCategory exists ### Check if TaxCategory exists by ID [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/\{id}:HEAD). ### Check if TaxCategory exists by Key [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/key=\{key}:HEAD). ### Check if TaxCategory exists by Query Predicate [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories:HEAD). ## Create TaxCategory [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories:POST). ## Update TaxCategory ### Update TaxCategory by ID [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/\{id}:POST). ### Update TaxCategory by Key [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/key=\{key}:POST). ## Update actions #### Change Name [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryChangeNameAction). #### Set Key [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategorySetKeyAction). #### Set Description [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategorySetDescriptionAction). #### Add TaxRate [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryAddTaxRateAction). #### Replace TaxRate [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryReplaceTaxRateAction). #### Remove TaxRate [type definition](/api/projects/taxCategories.md?urn=ctp:api:type:TaxCategoryRemoveTaxRateAction). ## Delete TaxCategory ### Delete TaxCategory by ID [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/\{id}:DELETE). ### Delete TaxCategory by Key [endpoint definition](/api/projects/taxCategories.md?urn=ctp:api:endpoint:/\{projectKey}/tax-categories/key=\{key}:DELETE). ## Related pages - [Area overview page with navigation](/api.md) - [Previous page: Stores](/api/projects/stores.md)