Business verification lets you confirm that a customer’s business details match official Canadian registry records. Submit the data you have and get back field-level match results with an AI analyst summary.
How it works
- You submit business details (legal name, jurisdiction, registration number, and optionally address and people)
- The API fetches fresh data from the relevant provincial or federal business registry
- Each field is compared against the registry data with configurable similarity thresholds
- An AI analyst summary is generated for compliance review
Verification typically takes 20-40 seconds. The business registry lookup is the bottleneck.
Request
curl -X POST https://api.getcurrent.ca/v1/verify \
-H "Authorization: Bearer cur_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"legalName": "Shopify Inc.",
"jurisdiction": "ON",
"registrationNumber": "2033076"
}'
Required fields
| Field | Type | Description |
|---|
legalName | string | Legal name of the business to verify |
jurisdiction | string | Canadian jurisdiction code or full name |
registrationNumber | string | Registration number from the provincial/federal registry |
Optional fields
| Field | Type | Description |
|---|
address | object | Address to verify (street, city, province, postalCode, country) |
people | array | People to verify (each with name and role). Disabled by default — set matching.people.enabled: true to activate. |
externalId | string | Your internal ID for this business (e.g. CRM record ID). Stored for cross-reference. |
matching | object | Per-field threshold overrides (see below) |
Jurisdictions
Accepts codes or full names: AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, QC, SK, YT, FED (or “Ontario”, “British Columbia”, “Federal”, etc.)
Matching thresholds
All thresholds default to 1.0 (exact match). Lower values enable fuzzy matching.
{
"matching": {
"legalName": { "threshold": 0.85 },
"registrationNumber": { "threshold": 1.0 },
"address": { "threshold": 0.85 },
"people": {
"enabled": true,
"threshold": 0.85,
"impactsVerification": false,
"requiredMatchLevel": "all_matched"
},
"normalization": { "enabled": true }
}
}
When normalization.enabled is true (the default), values are normalized before comparison — corporate suffixes are stripped, abbreviations expanded, postal codes standardized, etc. Set to false for strict character-for-character comparison.
Response
{
"meta": {
"verificationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"verifiedAt": "2024-01-15T10:30:00Z",
"duration": 24318,
"submitted": { ... },
"matching": { ... }
},
"results": {
"status": "verified",
"fields": {
"legalName": {
"status": "matched",
"score": 0.95,
"provided": "Shopify Inc.",
"registry": "SHOPIFY INC."
},
"registrationNumber": {
"status": "matched",
"score": 1.0,
"provided": "2033076",
"registry": "2033076"
},
"address": null,
"people": null
},
"analystSummary": "The business name and registration number match..."
},
"registryData": {
"legalName": "SHOPIFY INC.",
"registrationNumber": "2033076",
"jurisdiction": "Ontario",
"status": "Active",
"addresses": [ ... ],
"people": [ ... ]
}
}
Result status
| Status | Meaning |
|---|
verified | All checked fields meet their thresholds |
not_verified | One or more fields failed their threshold check |
Field match status
| Status | Meaning |
|---|
matched | Score meets or exceeds the threshold |
not_matched | Score is below the threshold |
People matching
People verification is disabled by default. Enable it with matching.people.enabled: true.
When enabled, each submitted person is compared against registry directors/officers. The people result includes a unified matches array containing both submitted and registry-only people:
- Submitted people not found in the registry have
registry: null
- Registry people not in your submitted list have
provided: null
Set impactsVerification: true to make people results affect the overall status.
Common patterns
Verify with address
{
"legalName": "Shopify Inc.",
"jurisdiction": "ON",
"registrationNumber": "2033076",
"address": {
"street": "150 Elgin St",
"city": "Ottawa",
"province": "Ontario",
"postalCode": "K2P 1L4"
},
"matching": {
"legalName": { "threshold": 0.85 },
"address": { "threshold": 0.80 }
}
}
Verify with people
{
"legalName": "Shopify Inc.",
"jurisdiction": "ON",
"registrationNumber": "2033076",
"people": [
{ "name": "Tobias Lutke", "role": "Director" }
],
"matching": {
"people": {
"enabled": true,
"threshold": 0.85,
"impactsVerification": true
}
}
}