TLD pricing - .ca Domains for Resellers
Register, transfer and manage .ca domains fully automated via REST API — with no monthly base fee. All prices in EUR, net, excl. VAT.
.ca pricing
Registration period: 1–10 years.
Pricing by term
Each term is billed once for the entire period.
| Term | Registration total | per year | Renewal total |
|---|---|---|---|
| 1 year | €9.15 | €9.15 | €9.15 |
| 2 years | €18.30 | €9.15 | €18.30 |
| 3 years | €27.44 | €9.15 | €27.44 |
| 4 years | €36.60 | €9.15 | €36.60 |
| 5 years | €45.75 | €9.15 | €45.75 |
| 6 years | €54.90 | €9.15 | €54.90 |
| 7 years | €64.05 | €9.15 | €64.05 |
| 8 years | €73.19 | €9.15 | €73.19 |
| 9 years | €82.34 | €9.15 | €82.34 |
| 10 years | €91.49 | €9.15 | €91.49 |
Register .ca domains via API
You check availability and price with a GET request; registration is a POST with the domain, term and owner contact handle. The cost is debited directly from your prepaid wallet, and the domain.registered webhook reports completion.
# Check availability and price
curl -H "Authorization: Bearer $DRAPI_KEY" \
https://domain-reseller-api.de/api/v1/domains/check/example.ca
# Register
curl -X POST -H "Authorization: Bearer $DRAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"domain": "example.ca",
"years": 1,
"contacts": {
"owner": "HANDLE-123"
}
}' \
https://domain-reseller-api.de/api/v1/domains/registerYou'll find all endpoints, fields and webhooks in the API documentation. In the sandbox you can test the flow without a real registration and at no cost.
Frequently asked questions about .ca
How much does a .ca domain cost for resellers?
Registration costs €9.15 net per year, renewal €9.15 per year and a transfer €9.15. There is no base fee and no minimum volume — the price applies from the very first domain.
For how many years can I register a .ca domain?
.ca domains can be registered for between 1 and 10 years. You pass the desired term in the years field when registering.
How do I transfer a .ca domain to you?
You need the auth code from your current provider and send it together with the domain to POST /api/v1/domains/transfer. The webhook domain.transferred or domain.transfer_failed reports the result — no polling needed.