openapi: 3.1.0
info:
  title: 'Admin Management: Tax'
  version: 1.0.0
paths:
  /stores/{store_hash}/v3/tax/customers:
    get:
      operationId: getTaxCustomers
      summary: List Tax Customers
      description: Retrieves a list of customer tax data.
      tags:
        - taxCustomers
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: customer_id:in
          in: query
          description: ID of customer. To target multiple customers, provide a comma-separated list of IDs such as `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Customers_getTaxCustomers_Response_200'
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
    put:
      operationId: updateTaxCustomers
      summary: Update Tax Customers
      description: >-
        Update the tax data associated with one or more customers.

        This operation will be additive to any values already associated with the customer, overwriting any existing
        values.
      tags:
        - taxCustomers
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Customers_updateTaxCustomers_Response_200'
        '422':
          description: The request body does not meet specifications.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/TaxCustomer'
    delete:
      operationId: deleteTaxCustomers
      summary: Delete Tax Customers
      description: Delete tax data that is associated with one or more customers.
      tags:
        - taxCustomers
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: customer_id:in
          in: query
          description: ID of customer. To target multiple customers, provide a comma-separated list of IDs such as `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
  /stores/{store_hash}/v3/tax/properties:
    get:
      operationId: getTaxProperties
      summary: List Tax Properties
      description: Retrieve all tax properties defined in this store.
      tags:
        - taxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            ID of tax property. To target multiple tax properties, provide a comma-separated list of IDs such as
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: type:in
          in: query
          description: >-
            Filter result by the type of tax property. To target multiple types, provide a comma-separated list of types
            such as `customer,product`.
          required: false
          schema:
            type: array
            items:
              type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Properties_getTaxProperties_Response_200'
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
    post:
      operationId: createTaxProperties
      summary: Create Tax Properties
      description: >-
        Create one or more tax properties. A **code** and a **display name** must be included when creating tax
        properties.
      tags:
        - taxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Properties_createTaxProperties_Response_200'
        '422':
          description: The request body does not meet specifications.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/PropertyPOST'
    put:
      operationId: updateTaxProperties
      summary: Update Tax Properties
      description: Update one or more tax properties. Only fields specified will be adjusted.
      tags:
        - taxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Properties_updateTaxProperties_Response_200'
        '422':
          description: The request body does not meet specifications.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/PropertyPUT'
    delete:
      operationId: deleteTaxProperties
      summary: Delete Tax Properties
      description: >-
        Delete one or multiple tax properties. A tax property must have zero usages within product tax properties before
        you can delete it.
      tags:
        - taxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            ID of tax property. To target multiple tax properties, provide a comma-separated list of IDs such as
            `12,34,56`.
          required: true
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
        '409':
          description: Tax Property is in use and cannot be deleted.
          content:
            application/json:
              schema:
                description: Any type
  /stores/{store_hash}/v3/tax/products/properties:
    get:
      operationId: getProductsTaxProperties
      summary: List Product Tax Properties
      description: Retrieve the tax properties that are associated with one or more products.
      tags:
        - productTaxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: product_id:in
          in: query
          description: ID of product. To target multiple products, provide a comma-separated list of IDs such as `12,34,56`.
          required: true
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product Tax Properties_getProductsTaxProperties_Response_200'
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
    put:
      operationId: updateProductTaxProperties
      summary: Update Product Tax Properties
      description: >-
        Update the tax properties associated with one or more products. This operation will be additive to any tax
        property values already associated with the product, overwriting any existing tax property values.
      tags:
        - productTaxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product Tax Properties_updateProductTaxProperties_Response_200'
        '422':
          description: The request body does not meet specifications.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/ProductTaxProperty'
    delete:
      operationId: deleteProductTaxProperties
      summary: Delete Product Tax Properties
      description: Delete tax properties that are associated with one or more products.
      tags:
        - productTaxProperties
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: product_id:in
          in: query
          description: ID of product. To target multiple products, provide a comma-separated list of IDs such as `12,34,56`.
          required: true
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
        '400':
          description: Request parameters invalid
          content:
            application/json:
              schema:
                description: Any type
  /stores/{store_hash}/v3/tax/zones:
    get:
      operationId: getTaxZones
      summary: List Tax Zones
      description: >-
        Retrieve a selection of tax zones when you provide a list of tax zone IDs. Otherwise, retrieve all tax zones
        defined on the store.
      tags:
        - taxZones
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            Filter by tax zone `id`. Use a comma-separated CSV string of IDs for multiple tax zones. For example, `5` or
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Zones_getTaxZones_Response_200'
    post:
      operationId: createTaxZones
      summary: Create Tax Zones
      description: |-
        Create one or more tax zones.

        > #### Note
        > You cannot create a default tax zone.
      tags:
        - taxZones
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Zones_createTaxZones_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Tax_ZonePOST'
    put:
      operationId: updateTaxZones
      summary: Update Tax Zones
      description: >-
        Update one or more tax zones. Only the tax zone `id` field is required. Fields unspecified by the request will
        retain their current state.
      tags:
        - taxZones
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Zones_updateTaxZones_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Tax_ZonePUT'
    delete:
      operationId: deleteTaxZones
      summary: Delete Tax Zones
      description: |-
        Delete one or more tax zones. Deleting a tax zone removes all associated tax rates.

        > You must specify which zone(s) to delete using the `id:in` query parameter.
      tags:
        - taxZones
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            Filter by tax zone `id`. Use a comma-separated CSV string of IDs for multiple tax zones. For example, `5` or
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
  /stores/{store_hash}/v3/tax/rates:
    get:
      operationId: getTaxRates
      summary: List Tax Rates
      description: Retrieve a list of tax rates.
      tags:
        - taxRates
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            Filter by tax rate `id`. Use a comma-separated CSV string of IDs for multiple tax rates. For example, `5` or
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: tax_zone_id:in
          in: query
          description: >-
            Filter by tax zone `id`. Use a comma-separated CSV string of IDs for multiple tax zones. For example, `5` or
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Rates_getTaxRates_Response_200'
    post:
      operationId: createTaxRates
      summary: Create Tax Rates
      description: Create one or more tax rates. Tax rates must be associated with a `tax_zone_id`.
      tags:
        - taxRates
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Rates_createTaxRates_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Tax_RatePOST'
    put:
      operationId: updateTaxRates
      summary: Update Tax Rates
      description: >-
        Update one or more tax rates. Only the tax rate `id` field is required. Fields unspecified by the request will
        retain their current state.
      tags:
        - taxRates
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Rates_updateTaxRates_Response_200'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Tax_RatePUT'
    delete:
      operationId: deleteTaxRates
      summary: Delete Tax Rates
      description: |-
        Delete one or more tax rates.

        > You must specify which rate(s) to delete using the `id:in` query parameter.
      tags:
        - taxRates
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: id:in
          in: query
          description: >-
            Filter by tax rate `id`. Use a comma-separated CSV string of IDs for multiple tax rates. For example, `5` or
            `12,34,56`.
          required: false
          schema:
            type: array
            items:
              type: integer
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                type: object
                properties: {}
  /stores/{store_hash}/v3/tax/settings:
    get:
      operationId: getTaxSettings
      summary: Get Tax Settings
      description: Retrieves global-level tax settings.
      tags:
        - taxSettings
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Settings_getTaxSettings_Response_200'
    put:
      operationId: updateTaxSettings
      summary: Update Tax Settings
      description: Updates global-level tax settings.
      tags:
        - taxSettings
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Settings_updateTaxSettings_Response_200'
        '422':
          description: The request body does not meet the specification.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Tax_Settings'
  /stores/{store_hash}/v3/tax/zonecheck:
    post:
      operationId: zone-check
      summary: Check Zone for Address
      description: Check the applicable tax zone for a given address and customer group.
      tags:
        - taxZoneCheck
      parameters:
        - name: store_hash
          in: path
          description: Permanent ID of the BigCommerce store.
          required: true
          schema:
            type: string
        - name: X-Auth-Token
          in: header
          description: >-
            ### OAuth scopes


            | UI Name | Permission | Parameter |

            |:--------|:-----------|:----------|

            |  Information & Settings | modify | `store_v2_information` |

            |  Information & Settings | read-only | `store_v2_information_read_only` |


            ### Authentication header


            | Header | Argument | Description |

            |:-------|:---------|:------------|

            | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our
            [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


            ### Further reading


            For example requests and more information about authenticating BigCommerce APIs, see [Authentication and
            Example
            Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


            For more about BigCommerce OAuth scopes, see our [Guide to API
            Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


            For a list of API status codes, see [API Status
            Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
          required: true
          schema:
            type: string
        - name: Accept
          in: header
          description: >-
            The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response
            body.
          required: true
          schema:
            type: string
            default: application/json
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tax Zone Check_zone-check_Response_200'
        '422':
          description: The request body does not meet specifications.
          content:
            application/json:
              schema:
                description: Any type
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/ZoneCheck'
servers:
  - url: https://api.bigcommerce.com
    description: https://api.bigcommerce.com
components:
  schemas:
    TaxCustomerTaxProperties:
      type: object
      properties: {}
      description: >-
        A simple key-value pairing.

        The tax property must be defined to associate a value.

        These values will be sent to the active tax provider during Tax Provider API operations whenever the associated
        customer is included in the operation.
      title: TaxCustomerTaxProperties
    TaxCustomer:
      type: object
      properties:
        customer_id:
          type: integer
          description: A reference to the customer.
        tax_properties:
          $ref: '#/components/schemas/TaxCustomerTaxProperties'
          description: >-
            A simple key-value pairing.

            The tax property must be defined to associate a value.

            These values will be sent to the active tax provider during Tax Provider API operations whenever the
            associated customer is included in the operation.
      required:
        - customer_id
        - tax_properties
      description: Represents a customer and their associated tax-related attributes.
      title: TaxCustomer
    MetaOpen:
      type: object
      properties: {}
      description: Response metadata.
      title: MetaOpen
    Tax Customers_getTaxCustomers_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TaxCustomer'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Customers_getTaxCustomers_Response_200
    Tax Customers_updateTaxCustomers_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TaxCustomer'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Customers_updateTaxCustomers_Response_200
    PropertyType:
      type: string
      enum:
        - PRODUCT
        - CUSTOMER
      description: The type of entity that the tax property can be associated with.
      title: PropertyType
    Property:
      type: object
      properties:
        id:
          type: integer
          description: An internal identifier used by other operations.
        code:
          type: string
          description: >-
            The unique string programmatically references this unique tax property by the tax provider. Merchants should
            liaise with their tax provider to explore supported values and functions.
        display_name:
          type: string
          description: >-
            The human-readable name for this property. This string will be displayed on the Products screen as a field
            label.
        description:
          type: string
          description: >-
            Optional. Additional detail about this tax property may help guide merchants. This string will be displayed
            on the Products screen as a tooltip associated with the relevant field.
        created_at:
          type: string
          format: date-time
          description: Datetime.
        updated_at:
          type: string
          format: date-time
          description: Datetime.
        type:
          $ref: '#/components/schemas/PropertyType'
          description: The type of entity that the tax property can be associated with.
      title: Property
    Tax Properties_getTaxProperties_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Property'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Properties_getTaxProperties_Response_200
    PropertyPostType:
      type: string
      enum:
        - PRODUCT
        - CUSTOMER
      description: The type of entity that the tax property can be associated with. Default
      title: PropertyPostType
    PropertyPOST:
      type: object
      properties:
        code:
          type: string
          description: >-
            The unique string programmatically references this unique tax property by the tax provider. Merchants should
            liaise with their tax provider to explore supported values and functions.
        display_name:
          type: string
          description: >-
            The human-readable name for this property. This string will be displayed on the Products screen as a field
            label.
        description:
          type: string
          description: >-
            Additional detail about this tax property may help guide merchants. This string will be displayed on the
            Products screen as a tooltip associated with the relevant field.
        type:
          $ref: '#/components/schemas/PropertyPostType'
          description: The type of entity that the tax property can be associated with. Default
      required:
        - code
        - display_name
        - type
      title: PropertyPOST
    Tax Properties_createTaxProperties_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Property'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Properties_createTaxProperties_Response_200
    PropertyPUT:
      type: object
      properties:
        id:
          type: integer
          description: An internal identifier used by other operations.
        code:
          type: string
          description: >-
            The unique string programmatically references this unique tax property by the tax provider. Merchants should
            liaise with their tax provider to explore supported values and functions.
        display_name:
          type: string
          description: >-
            The human-readable name for this property. This string will be displayed on the Products screen as a field
            label.
        description:
          type: string
          description: >-
            Optional. Additional detail about this tax property may help guide merchants. This string will be displayed
            on the Products screen as a tooltip associated with the relevant field.
      required:
        - id
      title: PropertyPUT
    Tax Properties_updateTaxProperties_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Property'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Properties_updateTaxProperties_Response_200
    ProductTaxPropertyTaxProperties:
      type: object
      properties: {}
      description: >-
        A simple key-value pairing. The tax property must be defined to associate a value. These values will be sent to
        the active tax provider during Tax Provider API operations whenever the associated product is included in the
        operation.
      title: ProductTaxPropertyTaxProperties
    ProductTaxProperty:
      type: object
      properties:
        product_id:
          type: integer
          description: A reference to the product that the product tax properties are associated with.
        tax_properties:
          $ref: '#/components/schemas/ProductTaxPropertyTaxProperties'
          description: >-
            A simple key-value pairing. The tax property must be defined to associate a value. These values will be sent
            to the active tax provider during Tax Provider API operations whenever the associated product is included in
            the operation.
      required:
        - product_id
        - tax_properties
      description: A collection of tax property values associated with a product.
      title: ProductTaxProperty
    Product Tax Properties_getProductsTaxProperties_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ProductTaxProperty'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Product Tax Properties_getProductsTaxProperties_Response_200
    Product Tax Properties_updateProductTaxProperties_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ProductTaxProperty'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Product Tax Properties_updateProductTaxProperties_Response_200
    TaxZonePriceDisplaySettings:
      type: object
      properties:
        show_inclusive:
          type: boolean
          description: Indicates whether to show prices as tax inclusive or tax exclusive to shoppers matched with this tax zone.
        show_both_on_detail_view:
          type: boolean
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing product detail; for
            example, on product pages. This view applies to shoppers matched with this tax zone.
        show_both_on_list_view:
          type: boolean
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing a list of products; for
            example, on category and brand pages. This view applies to shoppers matched with this tax zone.
      description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
      title: TaxZonePriceDisplaySettings
    TaxZoneShopperTargetSettingsLocationsItems:
      type: object
      properties:
        country_code:
          type: string
          description: Two-letter ISO 3166-1 country code
        subdivision_codes:
          type: array
          items:
            type: string
          description: Three-letter ISO 3166-2 subdivision code
        postal_codes:
          type: array
          items:
            type: string
      title: TaxZoneShopperTargetSettingsLocationsItems
    TaxZoneShopperTargetSettings:
      type: object
      properties:
        locations:
          type: array
          items:
            $ref: '#/components/schemas/TaxZoneShopperTargetSettingsLocationsItems'
          description: A tax zone may target shoppers in one or more locations.
        customer_groups:
          type: array
          items:
            type: integer
          description: One or more customer groups that a tax zone targets. Empty array if zone applies to all customers.
      description: >-
        Settings that describe which shoppers match this tax zone and help determine the most appropriate target for a
        shopper. You cannot define shopper target settings for the default tax zone because it must accommodate all
        shoppers who donʼt qualify for any other zone.
      title: TaxZoneShopperTargetSettings
    Tax_Zone:
      type: object
      properties:
        id:
          type: integer
          description: Tax Zone ID. Internal identifier used to get, update, or delete a specific tax zone.
        name:
          type: string
          description: The human-readable name for this tax zone. The name appears in the store control panel.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax zone is enabled. Tax operations are only for enabled zones.
        price_display_settings:
          $ref: '#/components/schemas/TaxZonePriceDisplaySettings'
          description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
        shopper_target_settings:
          $ref: '#/components/schemas/TaxZoneShopperTargetSettings'
          description: >-
            Settings that describe which shoppers match this tax zone and help determine the most appropriate target for
            a shopper. You cannot define shopper target settings for the default tax zone because it must accommodate
            all shoppers who donʼt qualify for any other zone.
      title: Tax_Zone
    Tax Zones_getTaxZones_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Zone'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Zones_getTaxZones_Response_200
    TaxZonePostPriceDisplaySettings:
      type: object
      properties:
        show_inclusive:
          type: boolean
          description: Indicates whether to show prices as tax inclusive or tax exclusive to shoppers matched with this tax zone.
        show_both_on_detail_view:
          type: boolean
          default: false
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing product detail; for
            example, on product pages. This view applies to shoppers matched with this tax zone.
        show_both_on_list_view:
          type: boolean
          default: false
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing a list of products; for
            example, on category and brand pages. This view applies to shoppers matched with this tax zone.
      required:
        - show_inclusive
      description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
      title: TaxZonePostPriceDisplaySettings
    TaxZonePostShopperTargetSettingsLocationsItems:
      type: object
      properties:
        country_code:
          type: string
          description: Two-letter ISO 3166-1 country code
        subdivision_codes:
          type: array
          items:
            type: string
          description: Three-letter ISO 3166-2 subdivision code
        postal_codes:
          type: array
          items:
            type: string
      title: TaxZonePostShopperTargetSettingsLocationsItems
    TaxZonePostShopperTargetSettings:
      type: object
      properties:
        locations:
          type: array
          items:
            $ref: '#/components/schemas/TaxZonePostShopperTargetSettingsLocationsItems'
          description: A tax zone may target shoppers in one or more locations.
        customer_groups:
          type: array
          items:
            type: integer
          description: One or more customer groups that a tax zone targets. Empty array if zone applies to all customers.
      required:
        - locations
      description: >-
        Settings that describe which shoppers match this tax zone and help determine the most appropriate target for a
        shopper.
      title: TaxZonePostShopperTargetSettings
    Tax_ZonePOST:
      type: object
      properties:
        name:
          type: string
          description: The human-readable name for this tax zone. The name appears in the store control panel.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax zone is enabled. Tax operations are only for enabled zones.
        price_display_settings:
          $ref: '#/components/schemas/TaxZonePostPriceDisplaySettings'
          description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
        shopper_target_settings:
          $ref: '#/components/schemas/TaxZonePostShopperTargetSettings'
          description: >-
            Settings that describe which shoppers match this tax zone and help determine the most appropriate target for
            a shopper.
      required:
        - name
      title: Tax_ZonePOST
    Tax Zones_createTaxZones_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Zone'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Zones_createTaxZones_Response_200
    TaxZonePutPriceDisplaySettings:
      type: object
      properties:
        show_inclusive:
          type: boolean
          description: Indicates whether to show prices as tax inclusive or tax exclusive to shoppers matched with this tax zone.
        show_both_on_detail_view:
          type: boolean
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing product detail; for
            example, on product pages. This view applies to shoppers matched with this tax zone.
        show_both_on_list_view:
          type: boolean
          description: >-
            Indicates whether to show both tax inclusive and tax exclusive prices when viewing a list of products; for
            example, on category and brand pages. This view applies to shoppers matched with this tax zone.
      description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
      title: TaxZonePutPriceDisplaySettings
    TaxZonePutShopperTargetSettingsLocationsItems:
      type: object
      properties:
        country_code:
          type: string
          description: Two-letter ISO 3166-1 country code
        subdivision_codes:
          type: array
          items:
            type: string
          description: Three-letter ISO 3166-2 subdivision code
        postal_codes:
          type: array
          items:
            type: string
      title: TaxZonePutShopperTargetSettingsLocationsItems
    TaxZonePutShopperTargetSettings:
      type: object
      properties:
        locations:
          type: array
          items:
            $ref: '#/components/schemas/TaxZonePutShopperTargetSettingsLocationsItems'
          description: A tax zone may target shoppers in one or more locations.
        customer_groups:
          type: array
          items:
            type: integer
          description: One or more customer groups that a tax zone targets. Empty array if zone applies to all customers.
      description: >-
        Settings that describe which shoppers match this tax zone and help determine the most appropriate target for a
        shopper. You cannot define shopper target settings for the default tax zone because it must accommodate all
        shoppers who donʼt qualify for any other zone.
      title: TaxZonePutShopperTargetSettings
    Tax_ZonePUT:
      type: object
      properties:
        id:
          type: integer
          description: Tax Zone ID. Internal identifier used to get, update, or delete a specific tax zone.
        name:
          type: string
          description: The human-readable name for this tax zone. The name appears in the store control panel.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax zone is enabled. Tax operations are only for enabled zones.
        price_display_settings:
          $ref: '#/components/schemas/TaxZonePutPriceDisplaySettings'
          description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
        shopper_target_settings:
          $ref: '#/components/schemas/TaxZonePutShopperTargetSettings'
          description: >-
            Settings that describe which shoppers match this tax zone and help determine the most appropriate target for
            a shopper. You cannot define shopper target settings for the default tax zone because it must accommodate
            all shoppers who donʼt qualify for any other zone.
      required:
        - id
      title: Tax_ZonePUT
    Tax Zones_updateTaxZones_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Zone'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Zones_updateTaxZones_Response_200
    TaxRateClassRatesItems:
      type: object
      properties:
        rate:
          type: number
          format: double
          description: The tax rate that you apply to the items in a tax class.
        tax_class_id:
          type: integer
          description: >-
            ID of a tax class. You must associate a tax rate with a tax class. The rate will apply to all the items in
            this tax class.
      title: TaxRateClassRatesItems
    Tax_Rate:
      type: object
      properties:
        class_rates:
          type: array
          items:
            $ref: '#/components/schemas/TaxRateClassRatesItems'
          description: Tax rates for tax classes. You must assign at least one tax rate for each tax class defined on a store.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax rate is enabled. Tax operations are only for enabled zones.
        id:
          type: integer
          description: Tax Rate ID. Internal identifier to update and delete a specific tax rate.
        name:
          type: string
          description: >-
            The human-readable name for this tax zone. The name appears in the store control panel and may be visible to
            shoppers, depending on store tax settings.
        priority:
          type: integer
          default: 1
          description: Allows for compounding tax rates, common in certain jurisdictions.
        tax_zone_id:
          type: integer
          description: ID of an associated tax zone. You must associate a tax rate with a tax zone.
      title: Tax_Rate
    MetaPaginationLinks:
      type: object
      properties:
        current:
          type: string
      title: MetaPaginationLinks
    MetaPagination:
      type: object
      properties:
        total:
          type: integer
        count:
          type: integer
        per_page:
          type: integer
        current_page:
          type: integer
        total_pages:
          type: integer
        links:
          $ref: '#/components/schemas/MetaPaginationLinks'
      title: MetaPagination
    Meta:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/MetaPagination'
      title: Meta
    Tax Rates_getTaxRates_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Rate'
        meta:
          $ref: '#/components/schemas/Meta'
      title: Tax Rates_getTaxRates_Response_200
    TaxRatePostClassRatesItems:
      type: object
      properties:
        rate:
          type: number
          format: double
          description: The tax rate that you apply to the items in a tax class.
        tax_class_id:
          type: integer
          description: >-
            ID of a tax class. You must associate a tax rate with a tax class. The rate will apply to all items in this
            tax class.
      required:
        - rate
        - tax_class_id
      title: TaxRatePostClassRatesItems
    Tax_RatePOST:
      type: object
      properties:
        class_rates:
          type: array
          items:
            $ref: '#/components/schemas/TaxRatePostClassRatesItems'
          description: Tax rates for tax classes. You must assign at least one tax rate for each tax class defined on a store.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax rate is enabled. Tax operations are only for enabled zones.
        name:
          type: string
          description: >-
            The human-readable name for this tax zone. The name appears in the store control panel and may be visible to
            shoppers, depending on store tax settings.
        priority:
          type: integer
          default: 1
          description: Allows for compounding tax rates, common in certain jurisdictions.
        tax_zone_id:
          type: integer
          description: ID of an associated tax zone. You must associate a tax rate with a tax zone.
      required:
        - class_rates
        - name
        - tax_zone_id
      title: Tax_RatePOST
    Tax Rates_createTaxRates_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Rate'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Rates_createTaxRates_Response_200
    TaxRatePutClassRatesItems:
      type: object
      properties:
        rate:
          type: number
          format: double
          description: The tax rate that you apply to the items in a tax class.
        tax_class_id:
          type: integer
          description: >-
            ID of a tax class. You must associate a tax rate with a tax class. The rate will apply to all the items in
            this tax class.
      title: TaxRatePutClassRatesItems
    Tax_RatePUT:
      type: object
      properties:
        class_rates:
          type: array
          items:
            $ref: '#/components/schemas/TaxRatePutClassRatesItems'
          description: Tax rates for tax classes. You must assign at least one tax rate for each tax class defined on a store.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax rate is enabled. Tax operations are only for enabled zones.
        id:
          type: integer
          description: Tax Rate ID. Internal identifier to update and delete a specific tax rate.
        name:
          type: string
          description: >-
            The human-readable name for this tax zone. The name appears in the store control panel and may be visible to
            shoppers, depending on store tax settings.
        priority:
          type: integer
          default: 1
          description: Allows for compounding tax rates, common in certain jurisdictions.
        tax_zone_id:
          type: integer
          description: ID of an associated tax zone. You must associate a tax rate with a tax zone.
      required:
        - id
      title: Tax_RatePUT
    Tax Rates_updateTaxRates_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Tax_Rate'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Rates_updateTaxRates_Response_200
    TaxSettingsPriceDisplaySettingsControlPanelPriceDisplayStrategy:
      type: string
      enum:
        - ZONE
        - INCLUSIVE
        - EXCLUSIVE
      description: >-
        Whether to show prices as tax inclusive or tax exclusive in the BigCommerce control panel, or use the order's
        tax zone for price display.
      title: TaxSettingsPriceDisplaySettingsControlPanelPriceDisplayStrategy
    TaxSettingsPriceDisplaySettingsInvoicePriceDisplayStrategy:
      type: string
      enum:
        - ZONE
        - INCLUSIVE
        - EXCLUSIVE
      default: ZONE
      description: >-
        Whether to show prices as tax inclusive or tax exclusive across all invoices, or use the shopperʼs tax zone for
        price display on invoices.
      title: TaxSettingsPriceDisplaySettingsInvoicePriceDisplayStrategy
    TaxSettingsPriceDisplaySettings:
      type: object
      properties:
        control_panel_price_display_strategy:
          $ref: '#/components/schemas/TaxSettingsPriceDisplaySettingsControlPanelPriceDisplayStrategy'
          description: >-
            Whether to show prices as tax inclusive or tax exclusive in the BigCommerce control panel, or use the
            order's tax zone for price display.
        invoice_price_display_strategy:
          $ref: '#/components/schemas/TaxSettingsPriceDisplaySettingsInvoicePriceDisplayStrategy'
          default: ZONE
          description: >-
            Whether to show prices as tax inclusive or tax exclusive across all invoices, or use the shopperʼs tax zone
            for price display on invoices.
      description: Settings that describe how prices display at the global level.
      title: TaxSettingsPriceDisplaySettings
    TaxSettingsFallbackStrategy:
      type: string
      enum:
        - FIXED
        - BASIC
        - DISABLE
      default: FIXED
      description: >-
        Describes the fallback behavior that applies when a tax provider produces an error. A merchant may decide to use
        a flat 10% fallback tax rate, their basic tax settings, or to block the transaction until they achieve a
        successful result.
      title: TaxSettingsFallbackStrategy
    TaxSettingsDocumentSubmissionStrategy:
      type: string
      enum:
        - ON_PAYMENT_CAPTURE
        - ON_ORDER_CREATION
      default: ON_PAYMENT_CAPTURE
      description: >-
        This setting determines whether BigCommerce submits tax documents to third-party tax providers when orders are
        created or when payments are captured online.
      title: TaxSettingsDocumentSubmissionStrategy
    TaxSettingsRoundingStrategy:
      type: string
      enum:
        - NO_ROUNDING
        - RATE_ROUNDING
      default: RATE_ROUNDING
      description: >-
        This setting affects the rounding behavior of tax amounts calculated by the basic tax provider. The NO_ROUNDING
        option offers a high accuracy total tax amount for orders. The RATE_ROUNDING option means every resulting tax
        rate amount has been rounded based on the active currency's precision settings. Note that tax is always
        calculated on the line item amount after discounts.
      title: TaxSettingsRoundingStrategy
    Tax_Settings:
      type: object
      properties:
        tax_entered_with_prices:
          type: boolean
          description: Whether prices entered on this store include a tax component or not.
        price_display_settings:
          $ref: '#/components/schemas/TaxSettingsPriceDisplaySettings'
          description: Settings that describe how prices display at the global level.
        fallback_strategy:
          $ref: '#/components/schemas/TaxSettingsFallbackStrategy'
          default: FIXED
          description: >-
            Describes the fallback behavior that applies when a tax provider produces an error. A merchant may decide to
            use a flat 10% fallback tax rate, their basic tax settings, or to block the transaction until they achieve a
            successful result.
        should_subtract_store_tax:
          type: boolean
          default: true
          description: >-
            This setting applies only if a merchant enters tax-inclusive prices. When enabled, the store subtracts the
            itemʼs store tax rate before calculating tax using the shopperʼs tax zone. The tax-exclusive amount will be
            the same across all tax zones. When disabled, the tax-inclusive price remains the same across all tax zones;
            only the tax amount will vary based on the shopperʼs location. The tax-exclusive amount may vary among tax
            zones. These calculations are relevant for tax pricing and tax quotations that use basic tax.
        should_use_geolocation_to_determine_guest_shopper_tax_zone:
          type: boolean
          default: false
          description: >-
            This setting determines which tax zone a store uses to estimate tax for guest shoppers. When enabled, the
            store identifies a country-level tax zone based on the geolocation of a guest shopper. The store then
            applies the corresponding tax zone to estimate taxes. When disabled, the store identifies the zone using the
            provided `guest_shopper_tax_zone_id` field instead. Only the tax zones you configure can be matched to the
            guest shopper's geolocation.
        guest_shopper_tax_zone_id:
          type: integer
          default: 1
          description: >-
            ID for the tax zone a store uses when estimating tax for guest shoppers. The store uses this zone if you
            disable `should_use_geolocation_to_determine_guest_shopper_tax_zone`. The store also uses this zone if there
            is no matching country-level tax zone for the geolocation.
        store_tax_zone_id:
          type: integer
          default: 1
          description: >-
            ID for the tax zone a store uses when subtracting store tax. This setting applies only if a merchant enters
            tax-inclusive prices and subtracts store tax before tax calculation.
        document_submission_strategy:
          $ref: '#/components/schemas/TaxSettingsDocumentSubmissionStrategy'
          default: ON_PAYMENT_CAPTURE
          description: >-
            This setting determines whether BigCommerce submits tax documents to third-party tax providers when orders
            are created or when payments are captured online.
        rounding_strategy:
          $ref: '#/components/schemas/TaxSettingsRoundingStrategy'
          default: RATE_ROUNDING
          description: >-
            This setting affects the rounding behavior of tax amounts calculated by the basic tax provider. The
            NO_ROUNDING option offers a high accuracy total tax amount for orders. The RATE_ROUNDING option means every
            resulting tax rate amount has been rounded based on the active currency's precision settings. Note that tax
            is always calculated on the line item amount after discounts.
      title: Tax_Settings
    Tax Settings_getTaxSettings_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Tax_Settings'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Settings_getTaxSettings_Response_200
    Tax Settings_updateTaxSettings_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Tax_Settings'
        meta:
          $ref: '#/components/schemas/MetaOpen'
      title: Tax Settings_updateTaxSettings_Response_200
    ZoneCheck:
      type: object
      properties:
        country_code:
          type: string
          description: Two-letter ISO 3166-1 country code.
        subdivision_code:
          type: string
          description: ISO 3166-2 subdivision code, up to three alphanumeric characters.
        postal_code:
          type: string
          description: Postal code.
        customer_group_id:
          type: integer
          description: Customer Group ID to which the customer is belongs.
      required:
        - country_code
      title: ZoneCheck
    TaxZone:
      type: object
      properties:
        id:
          type: integer
          description: Tax Zone ID. Internal identifier used to get, update, or delete a specific tax zone.
        name:
          type: string
          description: The human-readable name for this tax zone. The name displays on the merchant's control panel.
        enabled:
          type: boolean
          default: true
          description: Indicates whether a tax zone is enabled. Tax operations are only for enabled zones.
        price_display_settings:
          $ref: '#/components/schemas/TaxZonePriceDisplaySettings'
          description: Settings that describe how a store displays prices to shoppers matched with this tax zone.
        shopper_target_settings:
          $ref: '#/components/schemas/TaxZoneShopperTargetSettings'
          description: >-
            Settings that describe which shoppers match this tax zone and help determine the most appropriate target for
            a shopper. You cannot define shopper target settings for the default tax zone because it must accommodate
            all shoppers who donʼt qualify for any other zone.
      title: TaxZone
    Tax Zone Check_zone-check_Response_200:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TaxZone'
      title: Tax Zone Check_zone-check_Response_200
  securitySchemes:
    X-Auth-Token:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        ### OAuth scopes


        | UI Name | Permission | Parameter |

        |:--------|:-----------|:----------|

        |  Information & Settings | modify | `store_v2_information` |

        |  Information & Settings | read-only | `store_v2_information_read_only` |


        ### Authentication header


        | Header | Argument | Description |

        |:-------|:---------|:------------|

        | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to
        API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). |


        ### Further reading


        For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example
        Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests).


        For more about BigCommerce OAuth scopes, see our [Guide to API
        Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes).


        For a list of API status codes, see [API Status
        Codes](/developer/api-reference/rest/overview#rest-http-status-codes).
