> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.solvimon.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.solvimon.com/_mcp/server.

# Canadian tax

Canada charges federal GST/HST alongside separately administered provincial sales taxes, so the combined rate on a sale depends on the customer's province. This is why Solvimon requires a province on every Canadian customer.

---

## Why this matters

Some provinces harmonized their sales tax with the federal GST into a single HST rate; others still charge GST plus their own separate provincial sales tax (PST, RST, or QST). Getting the combined rate right depends on knowing which province the customer is in, not just that they're in Canada.

## How it works

* A customer whose address country is `CA` requires a `state`. See [Canadian states](/platform-guides/customers-and-billing/customer#canadian-states) for the accepted province names and two-letter codes.
* With no tax calculation integration connected, Solvimon calculates tax natively using the province's current rate against the [tax category](/platform-guides/invoicing/tax#tax-categories) set on the product, product item, or product category.
* If a [tax calculation integration](/platform-guides/invoicing/tax/tax-calculation-integrations) is connected for the billing entity, the customer's province and tax category are sent to the provider instead, which returns the applicable GST/HST/PST/QST amounts.

## Recording a customer's tax registration numbers

Because GST/HST and provincial taxes are administered separately, a Canadian customer can carry more than one tax ID at once. Set `type` on each entry in `tax_ids` to record which registration it is:

| Type         | Use for                                             |
| ------------ | --------------------------------------------------- |
| `CA_GST_HST` | Federal GST or HST registration number.             |
| `CA_PST`     | A general provincial sales tax registration number. |
| `CA_PST_BC`  | British Columbia PST registration number.           |
| `CA_PST_MB`  | Manitoba RST registration number.                   |
| `CA_PST_SK`  | Saskatchewan PST registration number.               |
| `CA_QST`     | Quebec QST registration number.                     |

**`Add a customer's GST/HST and QST numbers`**

```bash Add a customer's GST/HST and QST numbers
curl -X PATCH https://test.api.solvimon.com/v1/customers/cust_UwDvxh0tDo8xb4BWeC1c \
  -H "X-API-KEY: <apiKey>" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "ORGANIZATION",
    "organization": {
      "tax_ids": [
        { "id": "123456789RT0001", "type": "CA_GST_HST" },
        { "id": "1234567890TQ0001", "type": "CA_QST" }
      ]
    }
  }'
```

Send `type` alongside `organization`: a PATCH that sets `organization` on its own is rejected.

Get the full list of accepted tax ID types for Canada with [GET /v1/tax-id-types](https://docs.solvimon.com/api-docs/configuration-api/tax-id-types/get-tax-id-types):

**`Get allowed tax id types for Canada`**

```bash Get allowed tax id types for Canada
curl -G https://test.api.solvimon.com/v1/tax-id-types \
  -H "X-API-KEY: <apiKey>" \
  --data-urlencode "country=CA"
```

## Edge cases

* Creating a Canadian customer without a `state` is rejected; use either the full province name or its two-letter code from [Canadian states](/platform-guides/customers-and-billing/customer#canadian-states).
* Sales to customers outside Canada aren't subject to GST/HST/PST. If your catalog serves both Canadian and international customers, set the [tax category](/platform-guides/invoicing/tax#tax-categories) (`NO_TAX` or `EXEMPT`) accordingly so international sales aren't taxed as if they were domestic.

---