Canada
| Property | Value |
|---|---|
| Code | CA |
| Currency | CAD |
| Region | Americas, Northern America |
| Name order | Given name first |
| State | Province, a list of 13 |
| Postcode | Required, checked, like K1A 0B1, and by state |
| Rules | GET /v1/countries/CA |
Form
The address form, in English. A field that is not required shows its optional label.
Fields
| Field | Label | Required | Autocomplete |
|---|---|---|---|
country | Country (list) | yes | country |
first_name | First name | yes | given-name |
last_name | Last name | yes | family-name |
line1 | Address | yes | address-line1 |
line2 | Apartment, suite, etc. | no | address-line2 |
city | City | yes | address-level2 |
state | Province (list) | yes | address-level1 |
postcode | Postal code | yes | postal-code |
phone_number | Phone number | no | tel |
email | yes | email |
Postcode
| Rule | Value |
|---|---|
| Required | yes |
| Pattern | ^[A-Z][0-9][A-Z][0-9][A-Z][0-9]$ |
| Example | K1A 0B1 |
| Written as | ### ### |
| Checked by state | 13 of 13, below |
POST /v1/validate refuses a postcode sent with a state it does not start like, as not_in_state. A state not listed is checked by pattern only. From libaddressinput.
| State | Starts with |
|---|---|
Alberta (AB) | T |
British Columbia (BC) | V |
Manitoba (MB) | R |
New Brunswick (NB) | E |
Newfoundland and Labrador (NL) | A |
Northwest Territories (NT) | X0E|X0G|X1A |
Nova Scotia (NS) | B |
Nunavut (NU) | X0A|X0B|X0C |
Ontario (ON) | K|L|M|N|P |
Prince Edward Island (PE) | C |
Quebec (QC) | G|H|J|K1A |
Saskatchewan (SK) | S|R8A |
Yukon (YT) | Y |
Phone
| Rule | Value |
|---|---|
| Calling code | +1 |
| National prefix | 1 |
| Pattern | ^[0-9]{7,11}$ |
| Example | (506) 234-5678 |
| Written as | (###) ###-#### |
Address format
How an address is written for reading, on an order page, a receipt or a label: address.format in the rules.
{first_name} {last_name}
{line1}
{line2}
{city} {state} {postcode}
{country}On an envelope, the address and apartment, suite, etc. and city and first name and last name and province and postal code are written in capitals.
Example
A real address in Canada, from address.example, written with the format and the state by its name:
John Doe
2701 Riverside Drive
Ottawa Ontario K1A 0B1
CanadaProvince
The form submits the code, which is what an order stores; the name is what the shopper reads, in their language.
| Code | Name |
|---|---|
AB | Alberta |
BC | British Columbia |
MB | Manitoba |
NB | New Brunswick |
NL | Newfoundland and Labrador |
NT | Northwest Territories |
NS | Nova Scotia |
NU | Nunavut |
ON | Ontario |
PE | Prince Edward Island |
QC | Quebec |
SK | Saskatchewan |
YT | Yukon |
Messages
What the form shows under a field when a value is refused, in English. Every language is on its page under Languages.
| Field | Error | Message |
|---|---|---|
country | not_selected | Select a country |
first_name | blank | Enter a first name |
first_name | invalid_characters | First name can only contain letters, spaces, hyphens and apostrophes |
first_name | contains_emoji | First name can't contain emojis |
first_name | too_long | First name must be 255 characters or fewer |
last_name | blank | Enter a last name |
last_name | invalid_characters | Last name can only contain letters, spaces, hyphens and apostrophes |
last_name | contains_emoji | Last name can't contain emojis |
last_name | too_long | Last name must be 255 characters or fewer |
line1 | blank | Enter an address |
line1 | contains_emoji | Address can't contain emojis |
line1 | too_long | Address must be 255 characters or fewer |
line2 | blank | Enter address line 2 |
line2 | contains_emoji | Address line 2 can't contain emojis |
line2 | too_long | Address line 2 must be 255 characters or fewer |
city | blank | Enter a city |
city | invalid | Enter a valid city |
city | contains_emoji | City can't contain emojis |
city | too_long | City must be 255 characters or fewer |
state | not_selected | Select a province |
state | invalid | Choose a province from the list |
postcode | blank | Enter a postal code |
postcode | invalid | Enter a valid postal code, like K1A 0B1 |
postcode | contains_emoji | Postal code can't contain emojis |
postcode | too_long | Postal code must be 64 characters or fewer |
phone_number | blank | Enter a phone number |
phone_number | invalid | Enter a valid phone number, like (506) 234-5678 |
phone_number | contains_emoji | Phone number can't contain emojis |
phone_number | too_long | Phone number must be 24 characters or fewer |
email | blank | Enter an email address |
email | invalid | Enter a valid email, like name@example.com |
email | contains_emoji | Email can't contain emojis |
email | too_long | Email must be 254 characters or fewer |