Overview
Registry
ICRIS (Integrated Companies Registry Information System) for companies + BRO (Business Registration Office) for sole proprietorshipsOperated by the Companies Registry of Hong Kong and the Inland Revenue Department respectively
Data quality improvements in progress. HK responses are being refined for richer structured data and improved standard-value mappings; release notes will follow when updates ship.
Company identifiers
The HK identifier is the Company Registration Number — typically an 8-digit zero-padded numeric string. Different prefixes indicate different entity types, and sole proprietorships use a hyphenated format.
In V2 the CR Number is
companyNumber and is also the registry-encoded portion of the V2 id. In V1 it appears as codeField.
Entity types
Six entity types are returned for HK. The Kyckr response shape is consistent across all six (transformation reconciles registry-specific source-data differences); the matrix at the bottom of this guide details which fields are populated per entity type.Company names
Hong Kong companies frequently hold both an English and a Traditional Chinese registered name. Three Kyckr fields carry HK name information:
This means:
- Normal HK case (Latin primary):
companyName= English,englishName=null,aliases[]= Chinese (Original Language). - Bank of China-style case (Chinese primary):
companyName= Chinese,englishName= English,aliases[]=null.
companyName when present there, otherwise englishName.
Some Chinese names appear in parentheses at the registry (e.g. (中銀集團人壽保險有限公司)); these are preserved as supplied. Previous names — including bilingual previous-name pairs — are surfaced in previousNames.
Legal form
HK Lite Profile populateslegalForm.normalized only when the regulator-mandated Chinese suffix 有限公司 appears on the original-script name. This is the official suffix that signals an HK Private Limited Company; emission is rule-based, not heuristic.
HK Enhanced Profile surfaces an explicit entity-type signal and populates
legalForm.normalized for all entity types (Private Limited Company, Public Limited Company, Association, Collective Investment Vehicle, Foreign Registered Body, Sole Proprietor, etc.).
Status
legalStatus.original carries the registry-source string; legalStatus.normalized maps to one of the standard values:
Dissolution methods
For dissolved companies, the dissolution method is surfaced alongside the status:- Dissolved by Deregistration — administrative removal from register
- Dissolved by Winding Up (Others) — court-ordered or other winding up
- Dissolved by Members’ Voluntary Winding Up — solvent company, members’ choice
- Dissolved by Creditors’ Voluntary Winding Up — insolvent company, creditors’ process
- Deregistration in progress — company may still be
Livewhile deregistration is processed
Limited and/or 有限公司 in company name” — is a special licence, not a dissolution.
Capital structure
CR entities populate the standard V2capital / totalCapital shape. Mutual funds, sole proprietorships, and guarantee companies do not have capital data.
- Issued and paid-up capital are usually identical for HK-incorporated companies.
- Paid-up capital is null for registered non-HK companies.
- Multi-currency entries are common — some entities have capital entries with different currencies (e.g. GBP + USD on the same company). Do not assume one entity = one currency.
- Decimal values are returned as decimals.
Currency distribution (observed)
Shareholders
HK shareholders are returned in V2shareholdings[].shareholders split by entity type:
- Natural-person shareholders →
shareholdings[].shareholders.individuals[] - Corporate shareholders →
shareholdings[].shareholders.corporations[]
ORDINARY (most common), with occasional source variant ORDINARY SHARE. Around half of HK fixtures have shareholder data; mutual funds, sole proprietorships, guarantee companies, and some registered non-HK companies have no shareholders.
Representatives / directors
CR entities populate V2representatives.individuals[] with the role Director. Sole proprietorships surface the sole proprietor on the same array with a null role.
Identity documents
Identity documents are masked in HK responses (consistent with HK Identity Card / Passport privacy convention):Nationality
- HK residents:
"Hong Kong" - Non-HK nationals: bilingual format
"<Chinese> <ENGLISH>"(e.g."英國 UNITED KINGDOM","中國 CHINA")
representatives.individuals[].nationality. Chinese names alongside Latin names are populated for most HK-resident directors and null for most foreign nationals. Appointment / outgoing dates are populated for sole proprietorship records; an empty / sentinel date in the source means “still active” / “not departed”.
Address
HKaddress is returned with the flat fullAddress only on Lite Profile — no component breakdown (city, region, streetName, etc. are null on Lite).
country:"Hong Kong",isoCode:"HK"fullAddress: flat string (e.g."46/F, FAR EAST FINANCE CENTRE 16 HARCOURT ROAD HONG KONG")city,region,postcode,streetName,buildingName: null on Lite
Activity / industry codes
Hong Kong uses HSIC (Hong Kong Standard Industrial Classification, derived from ISIC Rev 4) at the registry, but activity codes are not surfaced for Companies Registry entities — the registry does not expose HSIC via the data interfaces Kyckr connects to.activities[] is empty for HK CR companies.
For sole proprietorships, a single activity is mapped from the Business Registration industry field with a Chinese-language description and no code.
Enhanced Profile — async workflow
Integration note: Hong Kong Enhanced Profile fulfilment latency varies — some orders complete within the ~40s connection-hold window, others exceed it (and today time out). HK is in the initial preview rollout for the async order pattern (alongside GB, IE, LU, EE, LV, CN, JP).
- Slow HK Enhanced Profile orders may time out today.
- Once the migration completes, slow orders will return
202with anorderId(onGET) orPOSTwill be available for fire-and-forget ordering.
200 and 202 responses on GET from the start so that no integration changes are needed when HK migrates.
On V1 once HK migrates: handle the 200 (fast path) and the 202 (async path) on GET /core/company/profile/HK/{companyCode}.
On V2 once HK migrates: use POST /v2/companies/{kyckrId}/enhanced + poll GET /v2/orders/{orderId} for production-grade ordering. The GET convenience pattern (200 / 202 fallback) will also be available.
See the V1 (GET + 202 fallback) and V2 (POST + poll recommended) release notes for full integration guidance.
HK Lite Profile and Search are synchronous and return data immediately.