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 / New World Development Company

New World Development Company

All Data Categories
Company Overview
  • Company Overview
  • Data Overview
  • Parameters for CDI API
  • Data dictionaries
  • Other information

Company Overview

Our company offers solutions related to supply chain financing for the construction industry leveraging permissioned blockchain technology.

 

Business Development Contact point:
Contact Name: Amy Wu (Assistant Manager – Technology Innovation)
Department: Technology
Contact No.: +852 3589 6143 / +852 9104 6963
Business Email Address: amywu@eurekanova.com

Technology Delivery Contact point:
Contact Name: Jacky Chan (Technical Project Manager)
Department: Technology Delivery
Contact No.: +852 59112359/ +852 98329102
Business Email Address: jackychantc@K11.com

Support Contact URL: www.riverchain.com

Data Overview

River Chain CDI integration module provides a data set of River Chain Supplier(s)’ current financing request data for data consumers (e.g. liquidity provider) to analyse, create loan offer packages, and further business development. The data set includes supply chain and construction-related data verified by the buyer of the tier above together with financing data in JSON format. The current data flow is accomplished by our CDI API – List Financing Request by Data Owner’s BR Number.

Workflow

The above sequence diagram demonstrates an end-to-end flow triggered by a data consumer in order to get the financing request of a data owner. In the data consent flow, the data consumer needs to submit pre-agreed parameters (refer to Data dictionaries) to River Chain via HKMA CDI. River Chain will process and return the data set based on the data owner River Chain supplier internal mapping.

Provided by
RIVER SQUARE COMPANY LIMITED (Part of New World Development)
Official website: www.riverchain.com

Fulfilment Method
Channel: HKMA CDI
Network communication protocol: Restful API (JWT Token)

Parameters for CDI API

Given that the CDI API specification defines a standardised data model for consent and data request flow, the tables below specify additional requirements for some data fields. Thus, the following section shall be read in conjunction with the CDI API specification (to be provided by the HKMA separately).

/api/dataOwner/create

Field Additional requirements Example
dataOwnerName

Required for River Chain

DATAOWNER01
br

Required for River Chain

HKG:09090901

/api/consent/SubmitConsentInfo

In the API request body:

Field Additional requirements Example
dataProviderId

Fill in “DATAPROVIDER01DP”
Data consumer can call API /api/org/info in CDI to retrieve the whole list of data providers.

DATAPROVIDER01DP
Type

Fill in “ConsentTypeSignedDocNotRequired” to align with the current business process

ConsentTypeSignedDocNotRequired

expireTime
Fill in 0 as to align with current business process

/api/datarequest/submitDataRequestInfo

Field Additional requirements Example
udr
Fill in “{}” as to align with current business process
{}
scopeType

Fill in “DataScopeTypeUDR” as to align with current business process

DataScopeTypeUDR

documentType
Fill in “getFinancingRequest” as to align with current business process
getFinancingRequest

/api/dataRequest/RetrieveDataAccessInfoAll/{dataRequestId}

example Response:

Access data set from endpoint or endpointRevereProxy returned from
/api/dataRequest/RetrieveDataAccessInfoAll/{dataRequestId} response:


To access the data set, please make a GET request using the URL in either “endPoint” or “endpointReverseProxy” and pass the value of “accessToken” as an API key through the “access-token” in the request header.

 

Field Additional requirements Example
accessToken
Returned in /api/dataRequest/RetrieveDataAccessInfoAll/{dataRequestId}
zxJn52cDmBOmpL64jazAzy0Ip5usg542

CURL Example

				
					curl --location --request GET 'https://proxy-dataprovider-preprod.cdi.network/5e1313698a96125df7529de42311f595/getFile/cwfjhmJcfF4UNpN' \ 
--header 'access-token: zxJn52cDmBOmpL64jazAzy0Ip5usg542'
				
			

Data set sample response:

				
					
{
    "project_id": "6fb63e3c-9367-48a8-bcf6-c93686eb9020",
    "project_name": "Testing Project 另一个项目",
    "project_key": "沒有重點",
    "buyer":
    {
    "buyer_id": "62e11064f5f5646c701a44e4",
    "buyer_name": "River chain buyer ltd",
    "address": "HK"
    },
    "supplier":
    {
    "supplier_id": "62e8d16fbaccbec90fcf236c",
    "supplier_name": "River chain supplier ltd",
    "address": "HK123"
    },
    "status": "supplier_action_required",
    "financing_amount": 100000,
    "financing_currency": "HKD",
    "applicant_name": "Name of Applicant",
    "contact_person": "Contact Person",
    "telephone_number": "+44 (0) 7708 181154",
    "preferences":
    [
    "invoice_financing",
    "purchase_order_financing"
    ],
    "invoice":
    {
    "invoice_number": "inv 123",
    "invoice_amount": 102048,
    "currency": "RMB",
    "issue_date": "2022-08-18T00:00:00.000",
    "due_date": "2022-08-27T00:00:00.000",
    "account_number": "account no abc 123",
    "contact_person_name": "invoice contact person",
    "telephone_number": "+86 12472 858392",
    "payment_method": "cash",
    "payment_method_others": "Others Input",
    "payment_instruction": "Payment instruction",
    "delivery_note_ref_number": "delivery note",
    "delivery_note_date": "2022-08-12T00:00:00.000",
    "loading_port": "loading port",
    "discharge_port": "discharge",
    "shipper_name": "shipper name",
    "shipping_company_name": "shipping company",
    "vessel_name": "vessel test"
    },
    "purchase_order":
    {
    "purchase_order_number": "PO Number",
    "purchase_order_amount": 200000,
    "currency": "HKD",
    "contact_person_name": "PO Contact Person",
    "telephone_number": "+852 6030 1100",
    "issued_date": "2022-08-01T00:00:00.000",
    "validity_date": "2022-08-03T00:00:00.000",
    "products":
    [
    {
    "type": "Product Type 1",
    "description": "Product Description 1",
    "quantity": 100,
    "quantity_unit": "Qty Unit 1",
    "unit_price": 10,
    "discount_percentage": 11,
    "net_amount": 12
    },
    {
    "type": "Product Type 2",
    "description": "Product Description 2",
    "quantity": 200,
    "quantity_unit": "Qty Unit 2",
    "unit_price": 20,
    "discount_percentage": 21,
    "net_amount": 22
    }
    ],
    "gross_amount": 1001,
    "discounted_amount": 100001,
    "total_net_amount": 1000001,
    "contract_number": "Contact No with -",
    "quotation_number": "Quotation No -",
    "payment_terms": "Payment Terms ",
    "prepared_by": "prepared by sugar",
    "delivery_date": "2022-08-24T00:00:00.000",
    "delivery_terms": "delivery terms",
    "delivery_address": "delivery address 123",
    "special_conditions": "special conditions",
    "reference": "reference",
    "supersede_purchase_order": "supersede PO"
    },
    "created_by": "",
    "updated_by": "",
    "created_at": "2022-08-23T06:41:20.444Z",
    "updated_at": "2022-08-23T06:42:17.685Z",
    "green_certifications":
    {
    "cic":
    {
    "product_names":
    [],
    "description": ""
    },
    "other":
    {
    "product_names":
    [],
    "description": ""
    }
    }
}
				
			

Data dictionaries and samples

For full example response, ref to API Specification

Field Name Data Type Description Example
financing_requests
Array of objects
Array of financing request objects
Ref to API Specification
project_id
string
Project ID
“8f1ca9a2-e200-4f09-a215-845497647f5f”
project_id
string
Project ID
“8f1ca9a2-e200-4f09-a215-845497647f5f”
project_name
string
Project name
“Project B”
project_key
string
Project key, must be unique in view of a buyer
“PBM”
buyer
object
Object store buyer’s information
{ “buyer_id”: “63311f5f0c1dc524b9c190e1”, “buyer_name”: “Buyer”, “address”: “This is the address” }
buyer.buyer_id
string
Buyer ID
“63311f5f0c1dc524b9c190e1”
buyer.buyer_name
string
Buyer’s display name
“Buyer”
buyer.address
string
Buyer’s address
“This is address”
supplier
object
Object store supplier’s information
{ “supplier_id”: “639a7acc5dde383e53431e90”, “supplier_name”: “ABC Limited”, “address”: “This is address” },
supplier.supplier_name
string
Supplier’s display name
“ABC Limited”
supplier.address
string
Supplier’s address
“This is address”
status
string
For CDI, data will only show data in “pending offer” status
“pending_offer”
financing_amount
number
Amount that loan applicant want to apply for
1000000
financing_currency
string
Financing currency
“HKD”
applicant_name
string
Loan applicant name
“Lily Lu”
contact_person
string
Loan applicant contact point
“Lily Lu”
telephone_number
string
Loan applicant contact number
“98212012”
preferences
array of string
Array of string indicate loan product preference filled in by loan applicant, can be either “purchase_order_financing”/ “invoice_financing” or both
[“purchase_order_financing”]
invoice
object
Object store Invoice information, can be empty
Ref to API Specification
invoice.invoice_number
string
Identifier of invoice
nvoice.invoice_amount
number
Invoice amount
invoice.currency
string
Currency, e.g. HKD / RMD / USD
invoice.issue_date
string
Issue Date. The date of the invoice issued in corresponding region.
invoice.due_date
string
The due date of the invoice in corresponding region.
invoice.account_number
string
Account Number
invoice.contact_person_name
string
Name of Contact Person
invoice.telephone_number
string
Phone number
invoice.payment_method
string
Payment Method, e.g. cheque, e-payment, others
invoice.payment_method_others
string
Others payment method.
invoice.payment_instruction
string
Payment Instruction
invoice.delivery_note_ref_number
string
Delivery Note Reference Number
invoice.delivery_note_date
string
Delivery Note Date. The date in corresponding region.
invoice.loading_port
string
Loading Port
invoice.discharge_port
string
Discharge Port
invoice.shipper_name
string
Shipper Name
invoice.shipping_company_name
string
Shipping Company Name
invoice.vessel_name
string
Vessel Name
purchase_order
object
Object store PO information, can be empty
Ref to API Specification
purchase_order.purchase_order_number
string
PO number
“000123456789”
purchase_order.purchase_order_amount
number
PO amount
100000
purchase_order.currency
string
PO currency
“HKD”
purchase_order.contact_person_name
string
PO contact person name
“Lily Lu”
purchase_order.telephone_number
string
PO contact number
“91283921”
purchase_order.issued_date
date and time
PO issue date
“2022-12-14T00:00:00.000”
purchase_order.validity_date
date and time
PO valid date
“2022-12-14T00:00:00.000”
purchase_order.products
array of objects
Array of objects store Invoice information, can be empty
[]
purchase_order.products[].type
string
Product Type.
purchase_order.products[].description
string
Product Description
purchase_order.products[].quantity
number
Product Quantity
100
purchase_order.products[].quantity_unit
string
Unit of product quantity
kg
purchase_order.products[].unit_price
number
Unit price of 1 Quantity Unit.
purchase_order.products[].discount_percentage
number
Discount Percentage.
purchase_order.products[].net_amount
number
Net amount of the product.
purchase_order.gross_amount
number
Gross amount.
purchase_order.discounted_amount
number
Discounted amount.
purchase_order.total_net_amount
number
Total Net Amount.
purchase_order.contract_number
string
PO contract number.
“0002356848”
purchase_order.quotation_number
string
PO quotation number
“dfw-5685d888”
created_by
date and time
FR created by
“63311f5f0c1dc524b9c190e3”
updated_by
date and time
FR last updated by
“63311f5f0c1dc524b9c190e3”
created_at
date and time
FR created at (UTC)
“2022-12-14T00:00:00.000”
created_at
date and time
FR created at (UTC)
“2022-12-14T00:00:00.000”
updated_at
date and time
FR last updated at (UTC)
“2022-12-14T00:00:00.000”
green_certifications
object
Object storing green certs information
{ “cic”: { “product_names”: [ “Green Cert” ], “description”: “This is a green cert” } }
green_certifications.cic / green_certifications.other
object
Object storing CIC green cert information, can be empty
“product_names”: [“Product name 1”], “description”: “This is a green cert” }
green_certifications.cic.product_names / green_certifications.other.product_names
array of string
Product names in string which are certified by green certs
[“Product name 1”]
green_certifications.cic.description / green_certifications.other.description
string
Green cert description
“This is a green cert”

Notes: 1. All number format fields are integral number or decimal number correct to 2 decimal places at most.

Other information

Error code mapping

Scenario Network Error Code Response Body
Exceed access limit (Current number of request limit: 1)

500

{ “message”: “Invalid access token”, “errorCode”: “SYS001” }
Invalid access token
500
{ “message”: “Exceed access limit”, “errorCode”: “SYS001” }
River Chain Related Error
400
{ “message”: “”, “errorCode”: “CDI001” }
Unexpected Error
500
{ “message”: “Something went wrong. Please try again later” }

Token management
o Type: JWT
o Expiry time: 60 min

© 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