Compliance KYABC API (0.1.0)
Download OpenAPI specification:Download
KYC risk rating is formed based on customer data collected by financial institutions.
KryptoGO Compliance evaluates each customer's possible involvement in financial crimes, based on customer risk (sanctions list screening, company-related information, political figures, terrorist lists, court decisions, negative news scan results, etc.), calculate a risk score. This risk score will correspond to a KYC risk rating. According to the level of risk, there are 5 standard types of KYC risk ratings.
- Low risk (0-24 points)
- Low to medium risk (25-49 points)
- Medium risk (50-74 points)
- High risk (75-99 points)
- Very high risk (100 points)
The KYC risk rating ensures compliance with global regulations such as AML, KYC, and CTF/CFT standards. To determine whether the risk factor is really relevant to the customer based on the customer’s personally identifiable information, and conduct EDD (enhanced due diligence) to ask the customer to submit other documents, such as the source of income, confirmation of registered address, etc.
In order to protect your own company from corruption and money laundering, it is extremely important to implement a KYC risk assessment for all customers-this is the most reliable way to determine which customers are riskier to your company and thus avoid liability.
KYC risk ratings can be formed manually or automatically. Although the results cannot be absolutely accurate anyway, large companies with large amounts of information need automation. At KryptoGO, our advanced technology provides each customer with a KYC risk rating, the results are as accurate as possible, and users can be manually rechecked, and our CAMS anti-money laundering specialist can even assist you in risk assessment.
Get blockchain address risk analysis task detail
Get KYA task detail by an unique KYA id
Authorizations:
path Parameters
id required | string Example: 12 |
Responses
Response samples
- 200
{- "kya_id": 12,
- "address": "0x72a5843cc08275c8171e582972aa4fda8c397b2a",
- "data": {
- "risk_score": 90,
- "signals": {
- "atm": 0,
- "child_exploitation": 0,
- "dark_market": 0,
- "dark_service": 0,
- "enforcement_action": 0,
- "exchange_fraudulent": 0,
- "exchange_licensed": 0.637,
- "exchange_unlicensed": 0.113,
- "gambling": 0,
- "illegal_service": 0,
- "liquidity_pools": 0.048,
- "marketplace": 0.006,
- "miner": 0,
- "mixer": 0,
- "other": 0.104,
- "p2p_exchange_licensed": 0,
- "p2p_exchange_unlicensed": 0.076,
- "payment": 0,
- "ransom": 0,
- "sanctions": 0.005,
- "scam": 0,
- "seized_assets": 0,
- "stolen_coins": 0,
- "terrorism_financing": 0,
- "wallet": 0
}, - "owner": {
- "id": 22799,
- "name": "Lazarus Group",
- "slug": "Lazarus Group",
- "type": "sanctions"
}, - "transaction_count": 14,
- "balance": 2.7964008819547623,
- "received": 33568.157057000004,
- "sent": 33565.350000000006
}, - "sdnlist": [
- {
- "title": "ANDREYEV, Anton Nikolaeyvich, 9 3 Bloshevikov Prospect Apt 35,\nSaint Petersburg, Russia;",
- "content": " DOB 03 Mar 1985; POB Saint Petersburg,\nRussia; nationality Russia; Email Address antonandreyv@gmail.com;\nGender Male; Digital Currency Address - XBT\n1Fz29BQp82pE3vXXcsZoMNQ3KSHfMzfMe3; alt. Digital Currency Address -\nXBT 1AeSq93WDNdLoEJ92sex7T8xQZoYYm8BtS; alt. Digital Currency\nAddress - XBT 1AoxtfiBQ22DvbhqAN9Ctb8sULMRhrdwTr; alt. Digital\nCurrency Address - XBT 18Qj1THHuETfYhuRDZycXJbWwDMGw73Poa; alt.\nDigital Currency Address - XBT 1MnbhWe5wr7Ut45ReyQsm96PwnM9jD7KaH;\nalt. Digital Currency Address - XBT\n1DYFJ6CuBvrxyoQSuBzVsNcetY9tvdsrag; alt. Digital Currency Address -\nXBT 15Pt4NwZaUmMUwS2bQbyyncc7mzgWShtv8; alt. Digital Currency\nAddress - XBT 1PhqQpaGCrqSxQ6QDXcv14QCd1U98Zp34E; alt. Digital\nCurrency Address - XBT 13YBQr2Cp1YY3xqq2qngaPb7ca1o4ugeq6; alt.\nDigital Currency Address - XBT 1KgudqxMfYaGzqAA7MS4DcsqejtMteqhix;\nalt. Digital Currency Address - XBT\n1FRyL9gmFGbzfYDAB4iY9836DJe3KSnjP9; alt. Digital Currency Address -\nXBT 1DbShx4r8i2XesthoDBf5EkYWz5dsKEusV; Digital Currency Address -\nETH 0x8576acc5c05d6ce88f4e49bf65bdf0c62f91353c; Secondary sanctions\nrisk: Ukraine-/Russia-Related Sanctions Regulations, 31 CFR\n589.201; Phone Number 79315403678; Digital Currency Address - LTC\nLWnbjLYUfqeokfbWM4FcU7uk2FP2DSxuWS; alt. Digital Currency Address -\nLTC LaYUy1DGfVSuSF5KbPhbLrm8kRotqiwUJn; Digital Currency Address -\nZEC t1WSKwCDL1QYRRUrCCknEs5tDLhtGVYu9KM; Digital Currency Address -\nBSV 12sjrrhoFEsedNRhtgwvvRqjFTh8fZTDX9; Passport 4005504207\n(Russia) (individual) [CYBER2] [ELECTION-EO13848]."
}
], - "txlist": [
- {
- "timestamp": 1651807951,
- "transaction_hash": "0x40d7f3419494e9afec3f95a3823457322231111281b668fa6d80e8cd2124cd4f",
- "balance_change": -7009.500000000001,
- "from": [
- "0x72a5843cc08275c8171e582972aa4fda8c397b2a"
], - "to": [
- "0x72a5843cc08275c8171e582972aa4fda8c397b2a"
], - "transaction_fee": 0.001237404898338,
- "height": 14721192
}
], - "creation_timestamp": 1698661028,
- "creator_account": "eric.hung@kryptogo.com",
- "creator_email": "eric.hung@kryptogo.com",
- "creator_name": "Eric Hung",
- "customer_reference": null
}
Create blockchain address risk analysis task
Create KYA task which belong to the owner of API token (only supports BTC/ETH for now).
This API will return the latest kya result along with kya_id in the response. You can get the same kya result later by calling GET /kya/detail/{kya_id}
.
To access task detail with KryptoGO Compliance website, please use the following URL:
https://app.kryptogo.com/compliance/addresses/{kya_id}
Authorizations:
Request Body schema: application/jsonrequired
The address to analyze
address required | string The blockchain address to analyze |
chain | string The blockchain symbol of the address. If not specified, the API will try to detect the chain from the address. |
Responses
Request samples
- Payload
{- "address": "0x72a5843cc08275C8171E582972Aa4fDa8C397B2A",
- "chain": "eth"
}
Response samples
- 200
{- "kya_id": 12,
- "address": "0x72a5843cc08275c8171e582972aa4fda8c397b2a",
- "data": {
- "risk_score": 90,
- "signals": {
- "atm": 0,
- "child_exploitation": 0,
- "dark_market": 0,
- "dark_service": 0,
- "enforcement_action": 0,
- "exchange_fraudulent": 0,
- "exchange_licensed": 0.637,
- "exchange_unlicensed": 0.113,
- "gambling": 0,
- "illegal_service": 0,
- "liquidity_pools": 0.048,
- "marketplace": 0.006,
- "miner": 0,
- "mixer": 0,
- "other": 0.104,
- "p2p_exchange_licensed": 0,
- "p2p_exchange_unlicensed": 0.076,
- "payment": 0,
- "ransom": 0,
- "sanctions": 0.005,
- "scam": 0,
- "seized_assets": 0,
- "stolen_coins": 0,
- "terrorism_financing": 0,
- "wallet": 0
}, - "owner": {
- "id": 22799,
- "name": "Lazarus Group",
- "slug": "Lazarus Group",
- "type": "sanctions"
}, - "transaction_count": 14,
- "balance": 2.7964008819547623,
- "received": 33568.157057000004,
- "sent": 33565.350000000006
}, - "sdnlist": [
- {
- "title": "ANDREYEV, Anton Nikolaeyvich, 9 3 Bloshevikov Prospect Apt 35,\nSaint Petersburg, Russia;",
- "content": " DOB 03 Mar 1985; POB Saint Petersburg,\nRussia; nationality Russia; Email Address antonandreyv@gmail.com;\nGender Male; Digital Currency Address - XBT\n1Fz29BQp82pE3vXXcsZoMNQ3KSHfMzfMe3; alt. Digital Currency Address -\nXBT 1AeSq93WDNdLoEJ92sex7T8xQZoYYm8BtS; alt. Digital Currency\nAddress - XBT 1AoxtfiBQ22DvbhqAN9Ctb8sULMRhrdwTr; alt. Digital\nCurrency Address - XBT 18Qj1THHuETfYhuRDZycXJbWwDMGw73Poa; alt.\nDigital Currency Address - XBT 1MnbhWe5wr7Ut45ReyQsm96PwnM9jD7KaH;\nalt. Digital Currency Address - XBT\n1DYFJ6CuBvrxyoQSuBzVsNcetY9tvdsrag; alt. Digital Currency Address -\nXBT 15Pt4NwZaUmMUwS2bQbyyncc7mzgWShtv8; alt. Digital Currency\nAddress - XBT 1PhqQpaGCrqSxQ6QDXcv14QCd1U98Zp34E; alt. Digital\nCurrency Address - XBT 13YBQr2Cp1YY3xqq2qngaPb7ca1o4ugeq6; alt.\nDigital Currency Address - XBT 1KgudqxMfYaGzqAA7MS4DcsqejtMteqhix;\nalt. Digital Currency Address - XBT\n1FRyL9gmFGbzfYDAB4iY9836DJe3KSnjP9; alt. Digital Currency Address -\nXBT 1DbShx4r8i2XesthoDBf5EkYWz5dsKEusV; Digital Currency Address -\nETH 0x8576acc5c05d6ce88f4e49bf65bdf0c62f91353c; Secondary sanctions\nrisk: Ukraine-/Russia-Related Sanctions Regulations, 31 CFR\n589.201; Phone Number 79315403678; Digital Currency Address - LTC\nLWnbjLYUfqeokfbWM4FcU7uk2FP2DSxuWS; alt. Digital Currency Address -\nLTC LaYUy1DGfVSuSF5KbPhbLrm8kRotqiwUJn; Digital Currency Address -\nZEC t1WSKwCDL1QYRRUrCCknEs5tDLhtGVYu9KM; Digital Currency Address -\nBSV 12sjrrhoFEsedNRhtgwvvRqjFTh8fZTDX9; Passport 4005504207\n(Russia) (individual) [CYBER2] [ELECTION-EO13848]."
}
], - "txlist": [
- {
- "timestamp": 1651807951,
- "transaction_hash": "0x40d7f3419494e9afec3f95a3823457322231111281b668fa6d80e8cd2124cd4f",
- "balance_change": -7009.500000000001,
- "from": [
- "0x72a5843cc08275c8171e582972aa4fda8c397b2a"
], - "to": [
- "0x72a5843cc08275c8171e582972aa4fda8c397b2a"
], - "transaction_fee": 0.001237404898338,
- "height": 14721192
}
], - "creation_timestamp": 1698661028,
- "creator_account": "eric.hung@kryptogo.com",
- "creator_email": "eric.hung@kryptogo.com",
- "creator_name": "Eric Hung",
- "customer_reference": null
}
Get summary of a search task
Retrieve summary information about a specific search task using its unique task ID.
To access task detail with KryptoGO Compliance website, please use the following URL:
https://app.kryptogo.com/compliance/audit/{task_id}
Authorizations:
path Parameters
task_id required | string Example: 120 |
Responses
Response samples
- 200
{- "task_id": 123,
- "search_setting": {
- "mode": 1,
- "time_range_year": 3,
- "language": "lang_zh-TW",
- "negative_words": [
- "貪污",
- "詐欺"
], - "number_of_pages": 30
}, - "target": {
- "type": 1,
- "name": "黃琪",
- "birthday": "1988-02-03",
- "citizenship": "TWN"
}, - "customer_reference": "000000123",
- "progress": 100,
- "task_origin": 1,
- "creation_time": 1623859200,
- "update_time": 1623867890,
- "audit_time": 1623859200,
- "report": {
- "sanction_matched": false,
- "potential_risk": 12,
- "accepted": true,
- "comment": "The negative news are not related to the target"
}, - "metadata": [
- {
- "key": "Residential Address",
- "value": "123 Main St, Anytown, CA 12345"
}, - {
- "key": "SSN",
- "value": "123-45-6789"
}
], - "associated_with_a_idv_task": true,
- "associated_idv_id": [
- 123
]
}
Get details of a search task
Retrieve detailed information about a specific search task using its unique task ID.
To access task detail with KryptoGO Compliance website, please use the following URL:
https://app.kryptogo.com/compliance/audit/{task_id}
Authorizations:
path Parameters
task_id required | string Example: 123 |
Responses
Response samples
- 200
{- "task_id": 12345,
- "target": {
- "name": "黃韻如",
- "type": 1
}, - "search_setting": {
- "mode": 1,
- "time_range_year": 3,
- "language": "lang_zh-TW",
- "negative_words": [
- "貪污",
- "詐欺"
], - "number_of_pages": 30
}, - "search_source": [
- 0,
- 1,
- 2,
- 3,
- 4
], - "callback_url": "string",
- "customer_reference": "string",
- "result": {
- "web_pages": [
- {
- "result_id": "WebPage:204122",
- "web_page": {
- "title": "宜縣涉貪案/林姿妙涉及特殊洗錢等罪名 檢察官建請從重量刑",
- "snippet": "",
- "site_name": "公視新聞網 PNN",
- "content": ""
}, - "negative_words": [
- "起訴",
- "犯罪",
- "詐欺"
], - "risk_score": 0.00778,
- "summarization": ""
}
], - "tw_company_infos": [
- {
- "company_name": "辰燁實業有限公司",
- "company_status": "核准設立",
- "director_supervisors": [
- "張永源"
], - "result_id": "TwCompanyInfo:2935434",
- "id": 2935434,
- "incorporation_date": 20190724,
- "location": "臺南市新營區南紙里建業路269巷28號1樓",
- "representative_name": "張永源",
- "tax_id_number": "82937879"
}
], - "tw_verdict_infos": [
- {
- "result_id": "TwVerdict:a9e17f9d-401e-4cb8-b071-4cd85d2ada83",
- "id": "a9e17f9d-401e-4cb8-b071-4cd85d2ada83",
- "people": [
- "張永源"
], - "main": "本件於兩造仲裁程序終結前,停止訴訟程序。",
- "source": {
- "id": "SLDV,110,重訴,172,20220718,1",
- "court_abbr": "SLDV",
- "roc_year": 110,
- "title": "返還買賣價金",
- "type": "重訴",
- "number": 172
}
}
], - "dow_jone_infos": [
- {
- "result_id": "DowJones:380080",
- "id": 380080,
- "peid": "1716020",
- "title": "Magistrate of Yilan County",
- "primary_name": "Lin, Tzu-Miao",
- "gender": 2,
- "birthday": 19571020,
- "country_code": 408,
- "risk_icons": [
- "RCA(親屬或具特別關係成員)",
- "PEP(政治公眾人物)"
], - "matched_names": [
- "張永源"
], - "countries": [
- {
- "type_text": "Citizenship(公民)",
- "type": 1,
- "type_source": "Citizenship",
- "iso_3166_1_numeric": 408,
- "iso_3166_1_alpha_3": "TWN"
}
]
}
], - "sanction_list_infos": [
- {
- "result_id": "DowJones:380080",
- "id": 380080,
- "peid": "1716020",
- "title": "Magistrate of Yilan County",
- "primary_name": "Lin, Tzu-Miao",
- "gender": 2,
- "birthday": 19571020,
- "country_code": 408,
- "risk_icons": [
- "RCA(親屬或具特別關係成員)",
- "PEP(政治公眾人物)"
], - "matched_names": [
- "張永源"
], - "countries": [
- {
- "type_text": "Citizenship(公民)",
- "type": 1,
- "type_source": "Citizenship",
- "iso_3166_1_numeric": 408,
- "iso_3166_1_alpha_3": "TWN"
}
], - "deceased": true
}
]
}, - "sanction_matched": true,
- "completed_source": 3,
- "potential_risk": 51,
- "audit_status": 0,
- "comment": "",
- "audit_time": 0,
- "auditor_employee_id": 321,
- "auditor_employee_name": "Auditor Krypto",
- "auditor_employee_account": "auditor@kryptogo.com",
- "employee_id": 123,
- "employee_name": "Eric Hung",
- "employee_account": "eric@kryptogo.com",
- "creation_time": 1700470381,
- "update_time": 1700470389,
- "completed_time": 1700470389,
- "from_idv_id": 0,
- "comment_time": null,
- "comment_employee_id": null,
- "comment_employee_name": null,
- "comment_employee_account": null,
- "metadata": {
- "key": "SSN",
- "value": "123-456-7890"
}, - "comment_logs": [
- {
- "audit_status": "Undecided",
- "comment": "The negative news are not related to the target.",
- "emp_id": 231,
- "emp_name": "Eric Huang",
- "emp_account": "eric.huang@kryptogo.com",
- "emp_role": "string",
- "timestamp": 1686600966
}
], - "aml_summarization": "string",
- "next_review_at": 1716345869
}
Create search tasks
Create DD tasks which belong to the owner of API token. Different target attribute should be specified when the search type is KYB or KYC. The callback URL will be called when:
- The task is completed (i.e. the search results are generated)
- The task's accepted status is changed (refer to
[POST] /task/{task_id}/accepted
)
Authorizations:
Request Body schema: application/jsonrequired
The search task to create
search_setting_id required | integer The ID of search setting to use. You can modify your search setting here. To know the ID of the search setting, check the url in the setting detail page. E.g., https://app.kryptogo.com/compliance/settings/search-settings/detail/2. Then the ID is 2. |
required | SearchTaskKycTarget (object) or SearchTaskKybTarget (object) |
search_source required | Array of arrays (SearchSource) The array of source to search (Default is searching all):
|
callback_url | string <uri> The URL which will be called when the task is completed, or the task's accepted status is changed |
customer_reference | string The internal customer reference of your system |
from_idv_id | integer ID of certain IDV task, indicates the source of this search task. If |
Responses
Callbacks
Request samples
- Payload
[- {
- "search_setting_id": 120,
- "target": {
- "type": 1,
- "name": "黃琪",
- "birthday": "1988-02-03",
- "citizenship": "TWN"
}, - "search_source": [
- 0,
- 1,
- 2,
- 3,
- 4
], - "customer_reference": "000000123",
- "from_idv_id": 0
}
]
Response samples
- 200
[- {
- "task_id": 123,
- "timestamp": 1623859200
}
]
Callback payload samples
{- "task_id": 123,
- "search_setting": {
- "mode": 1,
- "time_range_year": 3,
- "language": "lang_zh-TW",
- "negative_words": [
- "貪污",
- "詐欺"
], - "number_of_pages": 30
}, - "target": {
- "type": 1,
- "name": "黃琪",
- "birthday": "1988-02-03",
- "citizenship": "TWN"
}, - "customer_reference": "000000123",
- "progress": 100,
- "task_origin": 1,
- "creation_time": 1623859200,
- "update_time": 1623867890,
- "audit_time": 1623859200,
- "report": {
- "sanction_matched": false,
- "potential_risk": 12,
- "accepted": true,
- "comment": "The negative news are not related to the target"
}, - "metadata": [
- {
- "key": "Residential Address",
- "value": "123 Main St, Anytown, CA 12345"
}, - {
- "key": "SSN",
- "value": "123-45-6789"
}
], - "associated_with_a_idv_task": true,
- "associated_idv_id": [
- 123
]
}
Update a search task's accepted status
When the search task has been already accepted
/rejected
, the comment
and accepted
fields of this search task can't be changed, and the server will return 409 error.
Upon successful accepted status update, the callback URL of this task will be called.
Authorizations:
Request Body schema: application/jsonrequired
The search task information to update
comment required | string The comment of the search task report (usually the reason of accepting/rejecting this target) |
accepted required | boolean Whether to accept the target of this search task |
Responses
Request samples
- Payload
{- "comment": "The negative news are not related to the target",
- "accepted": true
}
Response samples
- 200
- 409
{- "task_id": 123,
- "comment": "The negative news are not related to the target",
- "accepted": true
}
Set metadata to the search task
Allow custom metadata of a key-value pair object array to append to the search task.
Authorizations:
Request Body schema: application/jsonrequired
The key-value pair object array
key | string The key(name) of the metadata |
value | string The value of the metadata |
Responses
Request samples
- Payload
[- {
- "key": "SSN",
- "value": "123-456-7890"
}
]
Response samples
- 200
{- "code": 0
}
Get search task history
Get search task history of a given customer
Authorizations:
query Parameters
page_size required | integer Example: page_size=10 The size of a page to return |
page_number required | integer Example: page_number=1 The page number (starting from 1) to return |
customer_reference | string Example: customer_reference=000000123 The internal customer reference of your system |
Responses
Response samples
- 200
{- "data": [
- {
- "task_id": 123,
- "search_setting": {
- "mode": 1,
- "time_range_year": 3,
- "language": "lang_zh-TW",
- "negative_words": [
- "貪污",
- "詐欺"
], - "number_of_pages": 30
}, - "target": {
- "type": 1,
- "name": "黃琪",
- "birthday": "1988-02-03",
- "citizenship": "TWN"
}, - "customer_reference": "000000123",
- "progress": 100,
- "task_origin": 1,
- "creation_time": 1623859200,
- "update_time": 1623867890,
- "audit_time": 1623859200,
- "report": {
- "sanction_matched": false,
- "potential_risk": 12,
- "accepted": true,
- "comment": "The negative news are not related to the target"
}, - "metadata": [
- {
- "key": "Residential Address",
- "value": "123 Main St, Anytown, CA 12345"
}, - {
- "key": "SSN",
- "value": "123-45-6789"
}
], - "associated_with_a_idv_task": true,
- "associated_idv_id": [
- 123
]
}
], - "paging": {
- "page_number": 1,
- "page_size": 10,
- "total_count": 15
}
}
Get IDV task summary
Get IDV task summary by an unique IDV id. This endpoint is designed for polling the IDV task states.
It's highly recommended to use this API when you want to check the states of the IDV task. E.g., when you want to check the IDV task is completed or not.
To access task detail with KryptoGO Compliance website, visit the following URL:
https://app.kryptogo.com/compliance/idv/{idv_id}
Authorizations:
path Parameters
idv_id required | string Example: 12 |
Responses
Response samples
- 200
- 403
- 404
{- "idv_task_id": 12,
- "state": 0,
- "audit_status": "Accepted",
- "audit_timestamp": 1641982000,
- "auditor_employee_account": "admin",
- "auditor_employee_name": "Admin",
- "creation_timestamp": 1623859200,
- "state_timestamp": 1623867890,
- "review_reasons": [
- {
- "code": 500,
- "description": "Name doesn't match expected result"
}
], - "reject_reasons": [
- {
- "code": 100,
- "description": "Manipulated document"
}
]
}
Get IDV task detail
Get IDV task detail by an unique IDV id.
In most cases you only need /idv/{idv_id}/summary
, but if you need more detailed information, use this endpoint instead.
To access task detail with KryptoGO Compliance website, visit the following URL:
https://app.kryptogo.com/compliance/idv/{idv_id}
Authorizations:
path Parameters
idv_id required | string Example: 12 |
Responses
Response samples
- 200
- 403
- 404
{- "idv_task_id": 12,
- "country": "TWN",
- "id_type": "ID_CARD",
- "id_sub_type": "NATIONAL_ID",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "expected_country": "TWN",
- "expected_issuing_date": "2020-03-10",
- "expected_expiry_date": "2025-03-10",
- "expected_gender": "M",
- "customer_reference": "000000123",
- "first_name": "又曾",
- "last_name": "王",
- "full_name": "王又曾",
- "birthday": "1965-03-16",
- "id_number": "A223456789",
- "issuing_date": "2020-03-10",
- "expiry_date": "2025-03-10",
- "gender": "M",
- "state": 0,
- "review_reasons": [
- {
- "code": 500,
- "description": "Name doesn't match expected result"
}
], - "reject_reasons": [
- {
- "code": 100,
- "description": "Manipulated document"
}
], - "created_search_task_id": 102,
- "audit_status": "Accepted",
- "audit_timestamp": 1641982000,
- "auditor_employee_account": "admin",
- "auditor_employee_name": "Admin",
- "dd_tasks": [
- {
- "id": 15,
- "creation_timestamp": 1641987000,
- "audit_status": 0
}
]
}
Create an IDV task
Create an IDV task by uploading ID image and selfie face photo (selfie face photo can be replaced with photo of the person holding ID document). A DD search task can be created automatically from the recognized information in images.
Authorizations:
Request Body schema: application/jsonrequired
The body of the idv task API request
country required | string The country of the ID. Should be ISO-3166 Alpha-3 |
id_type required | string The type of ID. Supports |
id_image required | string The base64 encoding of ID image (front side). Max. 15MB & <8000 pixels per side & longest side >300 pixels |
id_mime_type | string Mime type of ID image. Can be |
id_back_image | string The base64 encoding of ID image (back side). Required when |
id_back_mime_type | string Mime type of ID image back side. Can be |
face_image required | string The base64 encoding of face image. At least one of |
face_mime_type | string Mime type of face image. Can be |
id_and_face_image required | string The base64 encoding of image of the person holding ID document. At least one of |
id_and_face_mime_type | string Mime type of image of the person holding ID document. Can be |
expected_name | string The expected full name of the ID holder.
If it doesn't match the recognized name on the ID, the result state will be |
expected_birthday | string The expected birthday of the ID holder in YYYY-MM-DD format.
If it doesn't match the recognized birthday on the ID, the result state will be |
expected_id_number | string The expected ID number of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
expected_issuing_date | string The expected issuing Date of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
expected_expiry_date | string The expected expiry Date of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
expected_gender | string The expected gender of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
callback_url | string <uri> The URL which will be called when the IDV task is completed |
customer_reference | string The internal customer reference of your system |
auto_create_dd_task | boolean Whether to automatically create DD search task for the target if the result state is |
dd_task_callback_url | string The callback URL to use if a DD search task is created from this IDV task |
dd_task_search_setting_id | integer The ID of search setting to use if a DD search task is created from this IDV task. Required when a DD search task is created. You can modify your search setting here. To know the ID of the search setting, check the url in the setting detail page. E.g., https://app.kryptogo.com/compliance/settings/search-settings/detail/2. Then the ID is 2. |
Responses
Callbacks
Request samples
- Payload
{- "country": "TWN",
- "id_type": "ID_CARD",
- "id_image": "iVBORw0KGgoAAA...",
- "id_mime_type": "image/jpeg",
- "id_back_image": "iVBORw0KGgoAAA...",
- "id_back_mime_type": "image/jpeg",
- "face_image": "iVBORw0KGgoAAA...",
- "face_mime_type": "image/jpeg",
- "id_and_face_image": "iVBORw0KGgoAAA...",
- "id_and_face_mime_type": "image/jpeg",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "expected_issuing_date": "2020-03-10",
- "expected_expiry_date": "2025-03-10",
- "expected_gender": "M",
- "customer_reference": "000000123",
- "auto_create_dd_task": true,
- "dd_task_search_setting_id": 120
}
Response samples
- 200
- 400
{- "idv_task_id": 12,
- "timestamp": 1623859200
}
Callback payload samples
{- "idv_task_id": 12,
- "country": "TWN",
- "id_type": "ID_CARD",
- "id_sub_type": "NATIONAL_ID",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "expected_country": "TWN",
- "expected_issuing_date": "2020-03-10",
- "expected_expiry_date": "2025-03-10",
- "expected_gender": "M",
- "customer_reference": "000000123",
- "first_name": "又曾",
- "last_name": "王",
- "full_name": "王又曾",
- "birthday": "1965-03-16",
- "id_number": "A223456789",
- "issuing_date": "2020-03-10",
- "expiry_date": "2025-03-10",
- "gender": "M",
- "state": 0,
- "review_reasons": [
- {
- "code": 500,
- "description": "Name doesn't match expected result"
}
], - "reject_reasons": [
- {
- "code": 100,
- "description": "Manipulated document"
}
], - "created_search_task_id": 102,
- "audit_status": "Accepted",
- "audit_timestamp": 1641982000,
- "auditor_employee_account": "admin",
- "auditor_employee_name": "Admin",
- "dd_tasks": [
- {
- "id": 15,
- "creation_timestamp": 1641987000,
- "audit_status": 0
}
]
}
Initiating an IDV transaction for Web Verification
Call the RESTful API POST endpoint /idv/init
with a JSON object containing the properties
described below to create a transaction for each user. You will receive a JSON object in
the response containing timestamp, idv_task_id and a URL which you can use to present ID
Verification to your user.
There must be more than 500
points remaining to perform this operation. Points will be deducted after the user successfully uploads the verification information.
A DD search task can be created automatically from the recognized information in images.
Authorizations:
Request Body schema: application/jsonrequired
The body of the web initiate API request.
Please select one of the following request schema according to your current idv engine (Jumio or Sumsub).
id_type required | string The type of ID. Supports |
workflow_id required | integer Applies this acquisition workflow to the transaction. Supported workflowId values:
|
country required | string The country of the ID. Should be ISO-3166 Alpha-3 |
customer_reference required | string The internal customer reference of your system. Max length is 100 |
locale | string Renders web page in the specified language. Supported locale values:
|
success_url | string Redirects to this URL after a successful transaction. Max length is 2047 |
error_url | string Redirects to this URL after an unsuccessful transaction. Max length is 255 |
expected_name | string The expected full name of the ID holder.
If it doesn't match the recognized name on the ID, the result state will be |
expected_birthday | string The expected birthday of the ID holder in YYYY-MM-DD format.
If it doesn't match the recognized birthday on the ID, the result state will be |
expected_id_number | string The expected ID number of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
callback_url | string <uri> The URL which will be called when the IDV task is completed |
auto_create_dd_task | boolean Whether to automatically create DD search task for the target if the result state is |
dd_task_callback_url | string The callback URL to use if a DD search task is created from this IDV task |
dd_task_search_setting_id | integer The ID of search setting to use if a DD search task is created from this IDV task. Required when a DD search task is created. You can modify your search setting here. To know the ID of the search setting, check the url in the setting detail page. E.g., https://app.kryptogo.com/compliance/settings/search-settings/detail/2. Then the ID is 2. |
tw_id_apply_code | integer (Support when id_type = ID_CARD and country = TWN) Not Issue = 0, Initial Issue = 1, Reissue = 2, Change = 3 |
tw_id_apply_date | string (Support when id_type = ID_CARD and country = TWN) Issuing date, Republic of China (ROC) format, 7 digits. |
tw_id_issue_site_id | string (Support when id_type = ID_CARD and country = TWN) Issuing location administrative area code, 5 digits, see the Ministry of the Interior API documentation appendix 'Issuing location code comparison' for details.
|
Responses
Callbacks
Request samples
- Payload
{- "id_type": "ID_CARD",
- "workflow_id": 200,
- "country": "TWN",
- "customer_reference": "000000123",
- "locale": "zh-HK",
- "success_url": null,
- "error_url": null,
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "auto_create_dd_task": true,
- "dd_task_search_setting_id": 120,
- "tw_id_apply_code": 2,
- "tw_id_apply_date": "1070102",
- "tw_id_issue_site_id": "10011"
}
Response samples
- 200
- 400
{- "idv_task_id": 15,
- "timestamp": 1641807000
}
Callback payload samples
{- "idv_task_id": 12,
- "country": "TWN",
- "id_type": "ID_CARD",
- "id_sub_type": "NATIONAL_ID",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "expected_country": "TWN",
- "expected_issuing_date": "2020-03-10",
- "expected_expiry_date": "2025-03-10",
- "expected_gender": "M",
- "customer_reference": "000000123",
- "first_name": "又曾",
- "last_name": "王",
- "full_name": "王又曾",
- "birthday": "1965-03-16",
- "id_number": "A223456789",
- "issuing_date": "2020-03-10",
- "expiry_date": "2025-03-10",
- "gender": "M",
- "state": 0,
- "review_reasons": [
- {
- "code": 500,
- "description": "Name doesn't match expected result"
}
], - "reject_reasons": [
- {
- "code": 100,
- "description": "Manipulated document"
}
], - "created_search_task_id": 102,
- "audit_status": "Accepted",
- "audit_timestamp": 1641982000,
- "auditor_employee_account": "admin",
- "auditor_employee_name": "Admin",
- "dd_tasks": [
- {
- "id": 15,
- "creation_timestamp": 1641987000,
- "audit_status": 0
}
]
}
Initiating an IDV transaction for mobile app verification
Call the RESTful API POST endpoint /idv/account
with a JSON object containing the properties
described below to create a transaction for each user. You will receive a JSON object in
the response containing timestamp
, idv_task_id
and a sdk_token
which is used in the mobile app
integrated with jumio sdk to start the verification process.
Currently this API only supports Jumio IDV engine and ID_CARD verification.
There must be more than 500
points remaining to perform this operation. Points will be
deducted after the user successfully uploads the verification information.
A DD search task can be created automatically from the recognized information in images.
Authorizations:
Request Body schema: application/jsonrequired
The body of the account initiate API request
workflow_id required | integer Applies this acquisition workflow to the transaction. Supported workflowId values:
|
country required | string The country of the ID. Should be ISO-3166 Alpha-3 |
expected_name | string The expected full name of the ID holder.
If it doesn't match the recognized name on the ID, the result state will be |
expected_birthday | string The expected birthday of the ID holder in YYYY-MM-DD format.
If it doesn't match the recognized birthday on the ID, the result state will be |
expected_id_number | string The expected ID number of the ID holder.
If it doesn't match the recognized ID number on the ID, the result state will be |
callback_url | string <uri> The URL which will be called when the IDV task is completed |
customer_reference | string The internal customer reference of your system. Max length is 100 |
auto_create_dd_task | boolean Whether to automatically create DD search task for the target if the result state is |
dd_task_callback_url | string The callback URL to use if a DD search task is created from this IDV task |
dd_task_search_setting_id | integer The ID of search setting to use if a DD search task is created from this IDV task. Required when a DD search task is created. You can modify your search setting here. To know the ID of the search setting, check the url in the setting detail page. E.g., https://app.kryptogo.com/compliance/settings/search-settings/detail/2. Then the ID is 2. |
tw_id_apply_code | integer (Support when id_type = ID_CARD and country = TWN) Not Issue = 0, Initial Issue = 1, Reissue = 2, Change = 3 |
tw_id_apply_date | string (Support when id_type = ID_CARD and country = TWN) Issuing date, Republic of China (ROC) format, 7 digits. |
tw_id_issue_site_id | string (Support when id_type = ID_CARD and country = TWN) Issuing location administrative area code, 5 digits, see the Ministry of the Interior API documentation appendix 'Issuing location code comparison' for details.
|
Responses
Callbacks
Request samples
- Payload
{- "workflow_id": 3,
- "country": "TWN",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "customer_reference": "000000123",
- "auto_create_dd_task": true,
- "dd_task_search_setting_id": 120,
- "tw_id_apply_code": 2,
- "tw_id_apply_date": "1070102",
- "tw_id_issue_site_id": "10011"
}
Response samples
- 200
- 400
{- "idv_task_id": 15,
- "sdk_token": "eyJhbGciOiJIUzUxMiI...umLYOxUj4u6wXYpcodRl2qtt0oOew63L7Hwg",
- "timestamp": 1641807000
}
Callback payload samples
{- "idv_task_id": 12,
- "country": "TWN",
- "id_type": "ID_CARD",
- "id_sub_type": "NATIONAL_ID",
- "expected_name": "王又曾",
- "expected_birthday": "1990-06-21",
- "expected_id_number": "A123456789",
- "expected_country": "TWN",
- "expected_issuing_date": "2020-03-10",
- "expected_expiry_date": "2025-03-10",
- "expected_gender": "M",
- "customer_reference": "000000123",
- "first_name": "又曾",
- "last_name": "王",
- "full_name": "王又曾",
- "birthday": "1965-03-16",
- "id_number": "A223456789",
- "issuing_date": "2020-03-10",
- "expiry_date": "2025-03-10",
- "gender": "M",
- "state": 0,
- "review_reasons": [
- {
- "code": 500,
- "description": "Name doesn't match expected result"
}
], - "reject_reasons": [
- {
- "code": 100,
- "description": "Manipulated document"
}
], - "created_search_task_id": 102,
- "audit_status": "Accepted",
- "audit_timestamp": 1641982000,
- "auditor_employee_account": "admin",
- "auditor_employee_name": "Admin",
- "dd_tasks": [
- {
- "id": 15,
- "creation_timestamp": 1641987000,
- "audit_status": 0
}
]
}