惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
M
MIT News - Artificial intelligence
Engineering at Meta
Engineering at Meta
云风的 BLOG
云风的 BLOG
博客园 - 叶小钗
Jina AI
Jina AI
Last Week in AI
Last Week in AI
The Cloudflare Blog
博客园 - 【当耐特】
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
博客园_首页
I
InfoQ
G
Google Developers Blog
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
H
Help Net Security
U
Unit 42
Blog — PlanetScale
Blog — PlanetScale
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
IT之家
IT之家
Microsoft Security Blog
Microsoft Security Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Corporations Canada API reality: what CBCA filings expose
OpenRegistry · 2026-06-04 · via DEV Community

Every federal corporation in Canada receives a seven‑digit corporation number under the Canada Business Corporations Act (CBCA). The number anchors the Corporations Canada record and appears on each filing the register publishes.

That federal register is only one layer of the system. Provinces run their own corporate registers, and many operating companies incorporate provincially rather than under the CBCA. Federal entities still surface often in diligence work. Foreign parents tend to use them as holding vehicles when arranging Canadian assets or issuing debt.

Corporations Canada keeps a fairly orderly dataset. The register publishes the legal entity record, the current officers and directors, plus the filing history attached to the corporation number. What it does not publish is a beneficial ownership register comparable to the UK PSC dataset or similar registers used in parts of the EU.

Fields that actually appear in the registry

A company profile from the federal register follows a stable shape. Query it through OpenRegistry and those attributes appear in the unified schema as well as the raw jurisdiction_data returned by Corporations Canada.

Common examples:

  • corporationNumber – the seven‑digit CBCA identifier
  • businessNumber – the CRA business number when present
  • status – usually "Active" or "Dissolved"
  • dateOfIncorporation
  • registeredOfficeAddress

Director records are public too. The register stores entries with fields such as:

  • firstName
  • lastName
  • residentialAddress
  • appointedDate

Addresses carry some historical weight. The CBCA once required at least 25 percent of directors to be resident Canadians. Parliament removed that rule in 2021. Older records still show the residency indicator. It can help reconstruct board composition at the moment a financing closed or an acquisition went through.

Filings add another signal. Corporations Canada records events like annual returns, articles of amendment, continuances from provincial statutes, and dissolution notices. Each entry includes a filing type along with the date tied to the corporation number.

What you will not get from the federal registry

Beneficial ownership is the obvious gap. Canada does not run a public federal beneficial owner register comparable to the UK PSC regime created by the Small Business, Enterprise and Employment Act 2015.

Expectations shifted after the Corporate Transparency Act appeared in the United States. Many compliance teams now assume the same dataset exists elsewhere. Corporations Canada does not publish it. The federal government has discussed building a national beneficial ownership register, though most of that information still sits inside private corporate records or law‑enforcement systems as of 2026.

Shareholder registers are absent as well. The CBCA requires corporations to maintain them internally. Certain parties may request access under the statute. The information does not appear in the public search interface.

That absence affects AML and sanctions work. The federal register confirms the legal entity. It shows directors and structural changes through filings. It does not reveal the ultimate owners.

Querying Corporations Canada through OpenRegistry

OpenRegistry exposes the federal register through MCP tools that AI assistants can call directly. Each request reaches the government source rather than a cached dataset.

Most searches start with a company name or the corporation number.

Example tool call:

search_companies({
  "jurisdiction": "CA",
  "query": "Shopify"
})

Enter fullscreen mode Exit fullscreen mode

The response lists matching corporations together with their corporation numbers and current status. Once you have the identifier, pulling the full company profile becomes straightforward.

get_company_profile({
  "jurisdiction": "CA",
  "company_number": "426160-7"
})

Enter fullscreen mode Exit fullscreen mode

Governance details sit behind another call.

get_officers({
  "jurisdiction": "CA",
  "company_number": "426160-7"
})

Enter fullscreen mode Exit fullscreen mode

Filings fill in the timeline.

list_filings({
  "jurisdiction": "CA",
  "company_number": "426160-7"
})

Enter fullscreen mode Exit fullscreen mode

Each filing entry reports the document type and filing date. Some also include a document link when the upstream register publishes one.

A structural quirk in Canadian diligence

The federal register rarely tells the whole story. Many operating companies incorporate in Ontario, British Columbia, or Québec instead of under the CBCA. A holding company may sit at the federal level while the real operating entities appear only in provincial registers.

This split causes a familiar mistake during diligence. Analysts confirm the federal parent and assume the corporate chain ends there. Often it does not. Operating subsidiaries may exist only in provincial databases.

Cross‑border M&A structures show the pattern often. A US parent forms a CBCA holding company. That entity owns a British Columbia operating company where the contracts and staff sit. Search the federal register alone and the structure looks thinner than it really is.

Reproducibility matters during audits and regulatory reviews. A regulator should be able to repeat the search and retrieve the same corporation number, director record, and filing dates. Direct queries against the register of record help with that. Cached aggregator datasets drift if they refresh only from time to time.

If you want to query the Corporations Canada register from an AI assistant or an internal compliance tool, the MCP endpoint documentation is available at https://openregistry.sophymarine.com.