Hong Kong Monetary Authority 香港金融管理局
商業數據通 Commercial Data Interchange
Hong Kong Monetary Authority 香港金融管理局
商業數據通 Commercial Data Interchange

CDI
Member Portal

Menu
  • Member Info
  • Members Section
  • Logout
Menu
Member Portal / Know Your Customer

Know Your Customer

All Data Categories
Company Overview
  • Company Overview
  • Data Overview
  • Data dictionaries and samples
  • Parameters for CDI API

Company Overview

Know Your Customer is an award-winning RegTech company specialised in next-generation business verification solutions for financial institutions and regulated organisations worldwide.

For teams struggling with inefficient client due diligence and onboarding processes, Know Your Customer offers an intuitive digital compliance workspace that combines unmatched real-time registry data, covering over 140 countries, seamless integrations, and AI-powered smart automation. This streamlined approach transforms the compliance function at its core, allowing clients to customise their solutions by selecting only the functionalities they need, all accessible via a robust REST API.

Founded in Hong Kong in 2015, with a local presence in Singapore, Kuala Lumpur, Dublin, London, and Shanghai, Know Your Customer has built a global customer base across 11 verticals and 18 jurisdictions. The company also maintains a wide network of technology and data partners, ensuring high-quality entity data and enhanced compliance processes for its clients.

Contact us: https://knowyourcustomer.com/about-us/contact-us/
Email: info@knowyourcustomer.com

Data Overview

Purpose and benefits of getting the data set(s)

– Enhanced Client Due Diligence: The data set provides comprehensive real-time registry information from over 140 countries, enabling financial institutions and regulated organisations to conduct thorough client verifications.

– Effective Business Verification: The data sets support robust business verification processes, allowing organisations to validate the identities, structures, and legitimacy of their clients and partners, thereby mitigating risks associated with fraud and compliance failures.

– Streamlined Onboarding Processes: By integrating advanced data solutions, teams can significantly improve the efficiency of client onboarding, reducing time and resource expenditure.

– Customisable Solutions: Clients can tailor their compliance functions by selecting specific features that meet their unique needs, ensuring a more targeted and effective compliance strategy.

– AI-Powered Automation: The incorporation of smart automation minimises manual work and reduces human error, allowing teams to focus on higher-value tasks.

– Seamless Integrations: The robust REST API facilitates easy integration with existing systems, ensuring that organisations can incorporate the data seamlessly into their workflows.

– Global Reach and Compliance: With a presence in multiple jurisdictions and a wide network of partners, the data sets help companies navigate complex regulatory environments effectively.

– Improved Decision-Making: Access to high-quality entity data enhances risk assessment and decision-making processes, leading to better compliance outcomes.

Overview of integration between data consumer, CDI and data provider

A flow diagram showing the integration between data consumer, CDI and data provider

Additional Information

Provided by Know Your Customer

Product Videos: https://knowyourcustomer.com/products/request-a-demo/

  1. A consent record will be submitted by the application developed by the data consumer to CDI API, containing basic information of the company that they are enquiring, such as business registration number, company registration number.
  2. Once the consent record is received, DBHK will validate with its internal database with relevant information, such as business registration number and company registration number. If the records match, DBHK will return the DUNS number and company name extracted from the internal database.

  3. Data consumer to retrieve the consent record and retrieve the DUNS number and company name reverted by the data provider
  4. Once the consent flow is completed, the data consumer can then submit a data request for credit data via CDI.
  5. DBHK returns a CDI Data Access token (also known as “CDI token”) to the data consumer via CDI APIs. The token will be valid for 24 hours.
  6. Data Consumer to retrieve the data access information
  7. The data consumer submits authentication request to CCRA API.

    As the CCRA-API token is also valid for 24 hours, data consumers are recommended to call this API once per day. This will ensure that the data consumer is always being authorised to call the CCRA report.

  8. Once the identity of the data consumer is verified, CCRA API returns a CCRA-API token to the data consumer.
  9. The data consumer raises data request with CCRA-API token and CDI token to CCRA API.
  10. CCRA API server verifies the two tokens. The purpose of verifying the CCRA-API token is to make sure that the data consumer is authenticated within a valid time period. The purpose of verifying the CDI token is to make sure that the data consumer is searching for the same company information as the request they made to the CCRA CDI platform in step 3. It will also check whether the data request is a reorder within 7 days. If the verifications are passed, CCRA API will look up the CCRA data and return to the data consumer.
  11. The data consumer raises data request with CCRA-API token and CDI token to CCRA API.
  12. The same verification will be performed as Step 9.

    Additional rules:

    • Data consumer MUST get JSON report first, then they can call HTML report.

    • Only 1 JSON report per 1 HTML report is allowed.

    • Only the same user account is allowed to get the corresponding HTML report.

    • The same CDI token used max. 2 times. (For getting JSON report, and for getting the corresponding HTML report)

  13. After data is received, data consumer should confirm the receipt of data in CDI

Data dictionaries and samples

List of CDI API

# API Path Remarks
1
POST /api/user/login
2
POST /api/dataOwner/create
3
POST /api/consent/submitConsentInfo
4
POST /api/consent/searchConsentInfo
5
POST /api/dataRequest/submitDataRequestInfo
6
POST /api/dataRequest/searchDataRequestInfo
7
GET /api/dataRequest/retrieveDataAccessInfoAll/{dataRequestId}
8
POST /api/dataRequest/confirmReceptionOfData

List of in-scope KYC API

# API Path Remarks
1
POST /v2/Companies/search
Used to perform company name/number search
2
POST /v2/Companies
To create company case from search results exact values
3
GET /v2/Companies/{caseCommonId}
To get company information
4
GET /v2/Companies/{caseCommonId}/members
To get officer and shareholder information
5
GET /v2/Companies/{caseCommonId}/documents
To get list of available documents
6
GET /v2/Documents/{documentId}
To download specific document
7
POST /v2/Companies/ProfileChecks
To trigger ORO bankruptcy or Winding-up search on company
8
GET /v2/Companies/{caseCommonId}/ProfileChecks
To get ORO bankruptcy or Winding-up search results on company
9
GET /v2/Individuals
To create individual case
10
POST /v2/Individuals/ProfileChecks
To trigger ORO bankruptcy OR DirectorIndex search on individual
11
GET /v2/Individuals/{caseCommonId}/ProfileChecks
To get ORO bankruptcy OR DirectorIndex search on individual

Authorisation

  • CDI

Login with the organization’s user credentials to obtain the access tokens needed in CDI APIs invocation. An access token expires after 15 minutes.

Concurrent logins are supported, as subsequent login operations do not invalidate previously obtained access tokens.

Accounts will be locked after 3 consecutive failed logins. In that event, please contact CDI support for assistance.

  • KYC

Login will be handled by KYC where KYC will identify the appropriate Data Consumer with its own set of KYC API credentials.

As part of the retrieveDataAccessInfoAll, the Data Consumer will receive the KYC API access token to be used when calling the reverse proxy. The KYC API access token will be valid for 24 hours and can be reused during this period.

Data Consumer that are not identifiable to be a customer of KYC will be rejected at the initial Consent Request stage.

Parameters for CDI API

Data consumer (DC) create data owner

/api/dataOwner/create

Field Additional requirements for KYC@CDI Example
dataOwnerName
Company Name of the data owner
ABC Company
brNo
The Business Reference Number should start with a country code prefix, and with a colon as a separator. The country code should follow ISO 3166-1 alpha-3 code.

For entity registered in Hong Kong, it should be country code “HKG” and then follow by a 8-digit unique business identifier (UBI) of the data owner (which is also known as the business registration number (BRD)). The business registration number is issued and assigned by the Inland Revenue Department (IRD) at the date of incorporation.

For entity registered overseas, it should be the country code of the registration country and then follow by the registration number.
1. HKG:12345678
2. VGB:98765

DC submit consent to CDI

/api/consent/SubmitConsentInfo

In the API request body:

Field Additional requirements for KYC@CDI Example
dataProviderId
Fill in “(KYC Org ID)”

Data consumer can call API /api/org/info in CDI to retrieve the whole list of data providers.
(KYC org ID)
Type
Fill in “ConsentTypeConsentNotRequired” as to align with current business process
“ConsentTypeConsentNotRequired”
scopeType
“DataScopeTypeUDR”
“DataScopeTypeUDR”
documentType
Fill in “KYC API”
“KYC API”
udr
Fill in “KYC API”
“KYC API”
expireTime
Fill in 0 if the consent won’t expire; otherwise fill in consent expire date in Unix time format.

0

Sample Request

				
					POST https://<cdi-api-host>/api/consent/submitConsentInfo
Authorization: Bearer <CDI token>
{
  "public": {
    "type": "ConsentTypeConsentNotRequired",
    "dataProviderId": "KYCxxxxxDP",
    "scope": {
      "scopeType": "DataScopeTypeUDR",
      "documentType": "KYC API",
      "udr": "KYC API",
    },
    "expireTime": 0
  },
  "private": {
    "dataOwnerId": "DO_001",
    "purposePrivate": ""
  }
}
				
			

Response

				
					{
  "code": 200,
  "msg": "succeed",
  "data": {
    "consentId": "7b3fe178-fc44-482d-9a55-8adfdff08c15"
  }
}

				
			

After DC created the consent, KYC will valid/invalidate the consent.

Retrieve this information by calling the searchConsentInfo endpoint, polling can be done every 15 seconds.

Status of the consent record will be changed to ConsentValid.

DC submit data request to CDI

By the time that KYC has validated the consent, DC can create data request with the consent ID.

/api/datarequest/submitDataRequestInfo

In the API request body:

Field Additional requirements for KYC@CDI Example
scopeType
“DataScopeTypeUDR”
“DataScopeTypeUDR”
documentType
“KYC API”
“KYC API”
udr
“KYC API”
“KYC API”

Sample Request

				
					POST https://<cdi-api-host>/api/dataRequest/submitDataRequestInfo
Authorization: Bearer <CDI token>
Content-Type: application/json
{
  "public": {
    "consentId": "7b3fe178-fc44-482d-9a55-8adfdff08c15",
    "dataScope": {
      "scopeType": "DataScopeTypeUDR",
      "documentType": "KYC API",
      "udr": " KYC API"
    },
    "purpose": ""
  },
  "private": {
    "purposePrivate": "xxx"
  }
}


				
			

Response

				
					{
  "code": 200,
  "msg": "succeed",
  "data": {
    "id": "b3dfa083-aa7f-4627-8314-cdebadb361cf"
  }
}

				
			

After DC created the data request, KYC approve/ reject the data request. Status of the data request record will be changed to DataRequestApproved or DataRequestRejected respectively.

After data retrieval process from relevant data sources, KYC can upload data accessing information to CDI for DC. Status of the data request record will be changed to DataRequestDataShared.

DC request to retrieve data via CDI

By the time that KYC has shared the relevant data accessing information, DC can retrieve the data with the data request ID. Then, DC can use the token to retrieve the data.

/api/datarequest/retrieveDataAccessInfoAll

In the API response body:

Field Additional requirements for KYC@CDI Example
channel
“HTTPS”
HTTPS
endpoint
Endpoint of KYC API
https://api-uathk.knowyourcustomer.com/v2/companies/search”
endpointReverseProxy
The endpoint of HTTPS under reverse proxy.

https://<cdi-proxy-host>/<KYC-id-hash>/xxx

accessToken (under ‘responseList’)
KYC API access token
xxx

Request

				
					GET https://<cdi-api-host>/api/dataRequest/retrieveDataAccessInfoAll/b3dfa083-aa7f-4627-8314-cdebadb361cf
Authorization: Bearer <CDI token>
				
			

Response:

				
					{
  "code": 200,
  "msg": "succeed",
  "data": {
    "dataRequestId": "b3dfa083-aa7f-4627-8314-cdebadb361cf",
    …
    "private": {}, 
"responseList": [
      {
        "id": "b3dfa083-aa7f-4627-8314-cdebadb361cf",
        …
        "dataFile": {
          "channel": "H'TTPS",
          "endPoint": “https://api-uathk.knowyourcustomer.com/v2/companies/search"  "https://<KYC-host>/xxxx",
          “endpointReverseProxy”:“https://<cdi-proxy-host>/<KYC-id-hash>/xxx”
          "accessToken": "<KYC_accessToken>",
          "fileType": "API",
          "filePath": "",
          "fileHash": ""
        }
      }
    ]
  }
}

				
			

After approved the data request, KYC will attach a data exchange link on the data request record with a short life token. The bank should call the link with the token.

DC search company via reverse proxy

Using the reverse proxy link and access token provided, search for any company globally using the KYC API solution

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/Search

In the API request body:

Field Name Remarks Example
codeiso31662
To input the ISO 31662 code of the country to be search
HK
query
Query to search against the jurisdiction, KYC supports search against
• Partial/full company name
• Company number (Note for Hong Kong we will support both BR and CR number search)
Test Limited
datasource
For specific countries like Hong Kong with multiple data source.

Use “HKCR” to search against Hong Kong Company Registry or “IRD” to search against the Hong Kong Inland Tax Revenue
HKCR
IRD

Response:

				
					{
  "companySearch": {
    "results": [
      {
        "rawname": "TEST LIMITED",
        "externalCode": "04301762",
        "rawAddress": "The Resource Centre Bridge Street, Garstang, Preston, Hong Kong",
        "companyStatus": "Dissolved",
        "street": "",
        "city": "",
        "zip": "",
        "dataSource": "HKCR"
      }
    ]
  }
}
				
			

DC create company case via reverse proxy

Create company case using the results found from calling the KYC company search API

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies

In the API request body:

Field Remarks Example
codeiso31662
To input the ISO 31662 code of the country to be created
HK
datasource
For specific countries like Hong Kong with multiple data source.

Use “HKCR” to search against Hong Kong Company Registry or “IRD” to search against the Hong Kong Inland Tax Revenue
HKCR
IRD
externalCode
To be filled with externalCode (company registration number) that was found in search
04301762
rawname
To be filled with rawname (company name) that was found in search
TEST LIMITED

Response:

				
					{
  "caseDetail": {
    "details": {
      "isCaseAMLPositive": false,
      "allUbosIdentified": "",
      "company": {
        "id": 2287,
        "caseCompanyId": 2287,
        "countryCodeISO31662": "HK",
        "dataSource": "",
        "entityName": "TEST LIMITED",
        "type": "Undetermined",
        "description": "Case Generated from API",
        "userId": "2ea014bc-a478-4194-8812-27c836edac71",
        "caseCommonId": 6422,
        "creatorId": "2ea014bc-a478-4194-8812-27c836edac71",
        "properties": {
          "Company Status": "Active",
          "Company Type": "Undetermined",
          "Registration Number": "08075050"
        },
        "createdDatetime": "2024-01-12T06:25:13.733"
      },
      "caseAmlSummary": {
        "worldCheckSummary": null,
        "lexisNexisCheckSummary": null
      },
      "caseCloseDate": null,
      "caseReviewDate": null,
      "singpass": null,
      "stepDataSource": null,
      "common": {
        "caseCommonId": 6422,
        "caseCustomerId": 6272,
        "caseDecision": null,
        "customerId": 365,
        "customerName": "Know Your Customer",
        "type": 1,
        "typeString": "Company",
        "scoring": 0,
        "complete": 0,
        "edit": true,
        "status": "Open",
        "statusChangedDatetime": null,
        "statusChangedBy": null,
        "statusId": 0,
        "isVisible": true,
        "creatorId": "2ea014bc-a478-4194-8812-27c836edac71",
        "creatorUserName": "xxx",
        "createdDatetime": "2024-01-12T06:25:13.667",
        "caseReadyDatetime": null,
        "updatedBySystem": "2024-01-12T06:25:17.717",
        "isAMLCase": false,
        "updatedByUser": "2024-01-12T06:25:18.453",
        "countryRisk": null,
        "assignedUserId": null,
        "assignedUserName": null,
        "link": "https://uathk.knowyourcustomer.com/casecompany/6422/detail",
        "statusName": "Initializing Case",
        "isDeactivated": false,
        "caseProcessingType": "",
        "isComplexStructure": false,
        "caseDrillDownLevel": null,
        "hasMoreLayers": null,
        "isApproved": null,
        "source": null,
        "caseDescription": null,
        "workflowStatus": null,
        "creatorFirstName": null,
        "creatorLastName": null,
        "isRootCase": false,
        "journey": "All",
        "isVisibleInLiveCases": true,
        "isLiveMonitoring": false,
        "countryId": null,
        "countryName": null,
        "riskRating": null,
        "lastReviewDate": null,
        "scheduledReviewDate": null,
        "isAutomatedCase": null
      },
        "caseAddress": {
        "caseAddressId": 6422,
        "caseCommonId": 6422,
        "addressLine1": null,
        "addressLine2": "",
        "city": null,
        "stateProvince": null,
        "postcode": null,
        "country": "Hong Kong",
        "countryCodeISO31662": "HK",
        "countryId": ,
        "rawAddress": "",
        "address": "",
        "userId": null,
        "creatorName": null,
        "createdDatetime": "2024-01-12T06:25:16.263",
        "deviceLng": null,
        "deviceLat": null,
        "geolocationVerified": null
      },
      "risks": {
        "client": null,
        "channel": null,
        "product": null,
        "country": null,
        "total": null
      }
    }
  }
}

				
			

Store the unique identifier common/caseCommonId as it will be used in the subsequent KYC API calls to retrieve information.

DC get company case details via reverse proxy

Retrieve basic company information using the caseCommonId

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/{caseCommonId}

In the request params:

Field Remarks Example
caseCommonId
To input the KYC unique identifier that was returned when case is created
6422

Response:

				
					{
  "caseDetail": {
    "details": {
      "isCaseAMLPositive": false,
      "allUbosIdentified": "Yes",
      "company": {
        "id": 2271,
        "caseCompanyId": 2271,
        "countryCodeISO31662": "HK",
        "dataSource": "HKCR",
        "entityName": "KNOW BIG DEAL LIMITED",
        "type": "Private company limited by shares",
        "description": "Case Generated from API",
        "userId": "2ea014bc-a478-4194-8812-27c836edac71",
        "caseCommonId": 6405,
        "creatorId": "2ea014bc-a478-4194-8812-27c836edac71",
        "properties": {
          "Company Status": "Active",
          "Company Type": "Private company limited by shares",
          "Dissolution Date": "-",
          "Important Note": "-",
          "Incorporation Date": "21/08/2023",
          "Other Names": "大筆了有限公司",
          "Previous names": "Know Big Deal Limited, 大筆了有限公司, 21/08/2023",
          "Register of Charges": "Unavailable",
          "Registration Number": "75633759",
          "Remarks": "-",
          "Share capital": "HKD 10,000",
          "Total shares": "10000",
          "Winding Up Mode": "-"
        },
        "createdDatetime": "2024-01-03T08:41:11.753"
      },
      "caseAmlSummary": {
        "worldCheckSummary": {
          "pep": "NoMatches",
          "sanctions": "NoMatches",
          "soe": "NA",
          "crimes": "NA",
          "terrorism": "NA",
          "other": "NA",
          "lawEnforcement": "NoMatches",
          "otherBodies": "NoMatches",
          "regulatoryEnforcement": "NoMatches",
          "sic": "NoMatches"
        },
        "lexisNexisCheckSummary": null
      },
      "caseCloseDate": null,
      "caseReviewDate": null,
      "singpass": null,
      "common": {
        "caseCommonId": 6405,
        "caseCustomerId": 6255,
        "caseDecision": null,
        "customerId": 365,
        "customerName": "Know Your Customer",
        "type": 1,
        "typeString": "Company",
        "scoring": 0,
        "complete": 14,
        "edit": true,
        "status": "Open",
        "statusChangedDatetime": null,
        "statusChangedBy": null,
        "statusId": 3,
        "isVisible": true,
        "creatorId": "2ea014bc-a478-4194-8812-27c836edac71",
        "creatorUserName": "kgho@knowyourcustomer.com",
        "createdDatetime": "2024-01-03T08:41:11.717",
        "caseReadyDatetime": "2024-01-03T09:14:31.207",
        "updatedBySystem": "2024-01-11T13:46:18.587",
        "isAMLCase": false,
        "updatedByUser": "2024-01-03T09:14:05.087",
        "countryRisk": 5.18,
        "assignedUserId": "2ea014bc-a478-4194-8812-27c836edac71",
        "assignedUserName": "kgho@knowyourcustomer.com",
        "link": "https://uathk.knowyourcustomer.com/casecompany/6405/detail",
        "statusName": "Ready",
        "isDeactivated": false,
        "caseProcessingType": "",
        "isComplexStructure": false,
        "caseDrillDownLevel": 2,
        "hasMoreLayers": false,
        "isApproved": null,
        "source": null,
        "caseDescription": null,
        "workflowStatus": null,
        "creatorFirstName": null,
        "creatorLastName": null,
        "isRootCase": false,
        "journey": "All",
        "isVisibleInLiveCases": true,
        "isLiveMonitoring": false,
        "countryId": null,
        "countryName": null,
        "riskRating": null,
        "lastReviewDate": null,
        "scheduledReviewDate": null,
        "isAutomatedCase": null
      },
      "caseAddress": {
        "caseAddressId": 6405,
        "caseCommonId": 6405,
        "addressLine1": "FLAT B 3/F 78A LARCH ST",
        "addressLine2": "",
        "city": "TAI KOK TSUI",
        "stateProvince": "KLN",
        "postcode": null,
        "country": "Hong Kong",
        "countryCodeISO31662": "HK",
        "countryId": 3,
        "rawAddress": "FLAT B 3/F 78A LARCH ST, TAI KOK TSUI, KLN, Hong Kong",
        "address": "FLAT B 3/F 78A LARCH ST, TAI KOK TSUI, KLN, Hong Kong",
        "userId": "2ea014bc-a478-4194-8812-27c836edac71",
        "creatorName": "kgho@knowyourcustomer.com",
        "createdDatetime": "2024-01-03T08:41:12.07",
        "deviceLng": null,
        "deviceLat": null,
        "geolocationVerified": "Not Verified"
      },
      "risks": {
        "client": null,
        "channel": null,
        "product": null,
        "country": {
          "value": 5.18,
          "name": "Medium",
          "color": "Orange",
          "type": "COUNTRY"
        },
        "total": {
          "value": 5.18,
          "name": "Medium",
          "color": "Orange",
          "type": "TOTAL"
        }
      }
    }
  }
}

				
			

DC get company members via reverse proxy

Retrieve list of officers and members using the caseCommonId

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/{caseCommonId}/members

In the request params:

Field Remarks Example
caseCommonId
To input the KYC unique identifier that was returned when case is created
6422

DC get company documents list via reverse proxy

Retrieve list of documents available using the caseCommonId

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/{caseCommonId}/documents

In the request params:

Field Remarks Example
caseCommonId
To input the KYC unique identifier that was returned when case is created
6405

Response:

				
					{
  "caseCommonId": 6405,
  "name": "KNOW BIG DEAL LIMITED",
  "documents": {
    "Company Identity Documents": [
      {
        "link": "https://api-uathk.knowyourcustomer.com/v2/documents/22136",
        "category": "Certificate of Incorporation",
        "name": "Certificate of Incorporation <21/08/2023>",
        "dataSource": ""
      },
      {
        "link": "https://api-uathk.knowyourcustomer.com/v2/documents/22137",
        "category": "custom_1704272484713",
        "name": "HK CR Company Particulars <03/01/2024>",
        "dataSource": ""
      }
    ],
    "Other Company Documents": [
      {
        "link": "https://api-uathk.knowyourcustomer.com/v2/documents/22138",
        "category": "custom_1704272510058",
        "name": "Memorandum & Articles of Association <21/08/2023>",
        "dataSource": ""
      },
      {
        "link": "https://api-uathk.knowyourcustomer.com/v2/documents/22139",
        "category": "custom_1704272511949",
        "name": "FNNC1 (Incorporation Form) <21/08/2023>",
        "dataSource": ""
      }
    ]
  },
}

				
			

DocumentId can be found at the end of the “link” field. For example using the Response message above, the first document “Certificate of Incorporation” has documentId “22136”.

DC get company document via reverse proxy

Retrieve document file available using the documentId

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Documents/{documentId}

In the request params:

Field Remarks Example
documentId
To input the documentId identified from the previous document list response
22136

Response:

PDF file

DC initiate company bankruptcy check via reverse proxy

Using the reverse proxy link and access token provided, perform bankruptcy check for any HK company using the KYC API solution

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/{caseCommonId}/ProfileChecks

In the API request body:

Field Remarks Example
caseCommonId
To input the KYC unique identifier that was returned when case is created
6422
dataSource
To input the data source that will be used for the profile checks. For this project the valid source to be used would be the Hong Kong ORO
ORO
checkName
To input the type of checks perform for the specific data source chose. For this project the valid check name is either
• BankruptcyIVA
• WindingUpSearch
BankruptcyIVA
WindingUpSearch

Response:

				
					"c63f2590-596f-43c0-8d38-dec17fb04f12"
				
			

DC get company bankruptcy check results via reverse proxy

Using the reverse proxy link and access token provided, retrieve bankruptcy check results for any HK company using the KYC API solution

https://<cdi-proxy-host>/<KYC-id-hash>/v2/Companies/{caseCommonId}/ProfileChecksResults

In the API request body:

Field Remarks Example
caseCommonId
To input the KYC unique identifier that was returned when case is created
6422
guid
To input the guid returned in the ProfileChecks endpoint response
1fbe5f47-258d-48b6-990d-7ba5781653d2

Bankruptcy check response

				
					"id": "c63f2590-596f-43c0-8d38-dec17fb04f12",
  "caseCommonId": 627,
  "resultId": "6888e5d6-a287-407d-bb08-ca2ba18d3299",
  "status": 1,
  "result": {
    "DocumentUrl": https://prodjurisdictionstorage.blob.core.windows.net/jurisdiction-container/Hk/HkCrBankruptcyIvaCompanySearch/ddd47694834-28239ds-238ds123823.pdf?sv=20,
    "SearchId": "c63f2590-596f-43c0-8d38-dec17fb04f12"
  }
}
				
			

DC to confirm reception of data

/api/dataRequest/confirmReceptionOfData

In the API request body:

Field Additional requirements for KYC Example
dataResponseId
The unique ID of the response item in data request response list.
“00d2eaf7-dee0-4f55-b876-7c31201ff922”
endPoint
The endpoint field of the response item.
Copy the values provided by the DP in /api/dataRequest/storeDataAccessInfo (Available to the DC in ‘responseList’ returned from the API /api/dataRequest/retrieveDataAccessInfoAll)

“https://<KYC-host>/xxxxx”

filePath
The caseCommonIds of company cases where data has been retrieved.
This should include all company shareholders identified through the KYC automatic unravelling with comma separated values.
“1425, 1427, 1428”
fileHash
The file hash field of the response item. Data consumer to calculate the received file hashes as described in the CDI API spec
“1425224BD3ABB25F444DEF931F1FE2D3FD6F52DDA199D0A0FC96D05CCD6D4619”

Sample Request

				
					POST https://<cdi-api-host>/api/dataRequest/confirmReceptionOfData
Authorization: Bearer <CDI token>
{
  "dataResponseId": "00d2eaf7-dee0-4f55-b876-7c31201ff922",
  "private": {
    "dataFile": {
        "endPoint": " https://<KYC-host>/cdi/data-exchange ",
        "filePath": "1425, 1427, 1428",
        "fileHash": "1425224BD3ABB25F444DEF931F1FE2D3FD6F52DDA199D0A0FC96D05CCD6D4619"
    }
  }
}

				
			

Response

				
					{
  "code": 200,
  "msg": "succeed",
  "data": {
    "dataRequestId": "b3dfa083-aa7f-4627-8314-cdebadb361cf",
    "dataResponseId": "00d2eaf7-dee0-4f55-b876-7c31201ff922",
    "dataReceptionId": "f5e489ac-8e81-4f6f-9924-8a88ef6c6503"
  }
}

				
			

© 2024 Hong Kong Monetary Authority. All rights reserved.

Back to top
Logout
EN
  • 繁
  • 简
Log In
Members Portal
  • Home
  • About CDI
  • SME Stories
  • Our Partners
  • Project Cargox
  • Home
  • About CDI
  • SME Stories
  • Our Partners
  • Project Cargox