KYC / AML
All requests require clientID and developerAPIKey parameters for authentication.
Base URL: https://api-sandboxdash.norcapsecurities.com
Endpoints
POST /v3/deleteKycAml
This method is used to delete KYC/AML details of a particular party from Transact API. The delete is a virtual delete. You will need to specify the Party ID as a request parameter to delete the details.
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID that is generated by the API when an individual party is created (createParty) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/deleteKycAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=P12679
Response
Example Response
{
"statusCode": "101",
"statusDesc": "Kyc Aml values has been deleted!"
}
POST /v3/getKycAml
This method is used to retrieve the KYC & AML status of a specific party. The Party ID is required as a request parameter for this method.
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID that is generated by the API when an individual party is created (createParty) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getKycAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=P12345
Response
| Field | Type | Description |
KYC Status | string | Status |
Party Status | string | Status Array |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"KYC Status": "Disapproved",
"Party Status": {
"PartyID": "P41331",
"AML status": "Auto Approved",
"AML date": "08-06-2018"
}
}
POST /v3/getKycAmlResponse
This method is used to get all information about an individual Party. The Party ID and type must be specified as a request parameter to get the party KYC AML information.
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID that is generated by the API once an individual party is created (createParty). |
type | string | Yes | Type (This will be either Basic, Enhanced or AML Only) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/getKycAmlResponse
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=P79443
-d type=basic
Response
| Field | Type | Description |
kycamlDetails | string | List of party includes recent KYC/AML information of the match party |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"kycamlDetails": {
"statusCode": "101",
"statusDesc": "Ok",
"kyc": {
"response": {
"id-number": "3429150818",
"summary-result": {
"key": "id.success",
"message": "PASS"
},
"results": {
"key": "result.match",
"message": "ID Located"
},
"qualifiers": {
"qualifier": {
"key": "resultcode.zip.does.not.match",
"message": "ZIP Code Does Not Match"
}
},
"idnotescore": "0"
},
"kycstatus": "Auto Approved",
"amlstatus": "Auto Approved"
}
}
}
POST /v3/performAml
* This Method has third party fees associated with it that will be charged for each use. The cost to use this method is $0.15 each time the method is invoked. (Only applies in live API environment. Does not apply in the Sandbox Environment) *** Perform AML(Anti-Money Laundering) Checks for Entity Parties(createEntity).
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID or Entity ID that is generated by the API when an individual party or entity party is created (createParty / createEntity). |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/performAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=E12345
Response
| Field | Type | Description |
partyDetails | string | AML Response |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"partyDetails": {
"response": {
"id-number": "2180907751",
"restriction": {
"key": "global.watch.list.no.match",
"message": "Patriot Act - No Match"
}
},
"amlStatus": "Auto Approved"
}
}
POST /v3/performKycAml
* This Method has third party fees associated with it that will be charged for each use. The cost to use this method is $2.00 each time the method is invoked. (Only applies in live API environment. Does not apply in the Sandbox Environment) *** This method is used to perform KYC(Know Your Customer) checks and AML(Anti-Money Laundering) checks for Individual Parties Contact techsupport@northcapital.com to get instructions on how to test KYC/AML in our sandbox environment.
Parameters
| Parameter | Type | Required | Description |
partyID | integer | Yes | Party ID that is generated by the API when an individual party is created (createParty) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/performKycAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=P12345
Response
| Field | Type | Description |
kyc | string | Questions related to the party |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"kyc": {
"response": {
"id-number": "3028167143",
"summary-result": {
"key": "id.success",
"message": "PASS"
},
"results": {
"key": "result.match",
"message": "ID Located"
},
"qualifiers": {
"qualifier": [
{
"key": "resultcode.address.does.not.match",
"message": "Address Does Not Match"
},
{
"key": "resultcode.street.number.does.not.match",
"message": "Street Number Does Not Match"
}
]
},
"idnotescore": "0",
"questions": {
"question": [
{
"prompt": "Between 1979 and 1980, in which State did you live?",
"type": "prior.residence.state.multiyear",
"answer": [
"NORTH DAKOTA",
"NEW YORK",
"NEBRASKA",
"None of the above"
]
},
{
"prompt": "What is the approximate square footage of the property at 222333 PEACHTREE PLACE?",
"type": "property.size",
"answer": [
"1,000 or less",
"1,001 - 1,500",
"1,501 - 2,000",
"2,001 - 2,500",
"Over 2,500",
"None of the above"
]
},
{
"prompt": "Which person is not a relative or someone that you know?",
"type": "person.not.known",
"answer": [
"SUSAN BROWN",
"PORTER SMITH",
"DAVID BROWN",
"None of the above"
]
},
{
"prompt": "At which of the following addresses have you lived?",
"type": "previous.address",
"answer": [
"3 CRESSING CT",
"4344 BACKTRAIL DR",
"1084 BPEACHTREE CT",
"None of the above"
]
},
{
"prompt": "In which city is ANY STREET?",
"type": "city.of.residence",
"answer": [
"ALMO",
"ATLANTA",
"MINOT",
"None of the above"
]
}
]
}
},
"kycstatus": "Auto Approved",
"amlstatus": "Auto Approved"
}
}
POST /v3/performKycAmlBasic
* This Method has third party fees associated with it that will be charged for each use. The cost to use this method is $0.85 each time the method is invoked. (Only applies in live API environment. Does not apply in the Sandbox Environment) *** This method is used to perform KYC(Know Your Customer) checks and AML(Anti-Money Laundering) checks for Individual Parties Contact techsupport@northcapital.com to get instructions on how to test KYC/AML in our sandbox environment.
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID that is generated by the API when an individual party is created(createParty) |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/performKycAmlBasic
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=P12345
Response
| Field | Type | Description |
kyc | string | Response from IDology |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"kyc": {
"response": {
"id-number": "3298151570",
"summary-result": {
"key": "id.success",
"message": "PASS"
},
"results": {
"key": "result.match",
"message": "ID Located"
},
"qualifiers": {
"qualifier": [
{
"key": "resultcode.address.does.not.match",
"message": "Address Does Not Match"
},
{
"key": "resultcode.street.number.does.not.match",
"message": "Street Number Does Not Match"
}
]
},
"idnotescore": "0"
},
"kycstatus": "Auto Approved",
"amlstatus": "Auto Approved"
}
}
POST /v3/requestKycAml
*** This Method has fees associated with it that will be charged for each use. The cost to use this method is $25 each time the method is invoked on an individual party and $100 per level of entity verification. (Only applies in live API environment. Does not apply in the Sandbox Environment) *** This method is used to request that KYC & AML be manually verified. Can only be called once per Party ID. Please also see updateKycAmlStatus.
Parameters
| Parameter | Type | Required | Description |
investorId | string | Yes | Party Id or Entity Id generated by the API |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/requestKycAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d investorId=P12345
Response
| Field | Type | Description |
requestDetails | string | Party or Entity request KYC/AML related details |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"requestDetails": {
"investorId": "P12345",
"requestId": "9845687"
}
}
PUT /v3/updateKycAml
* This Method has third party fees associated with it that will be charged for each use. The cost to use this method is $1.02 each time the method is invoked. (Only applies in live API environment. Does not apply in the Sandbox Environment) *** This method is used to verify the KYC(Know Your Customer) Status, after the 'performKycAml' autocheck is done. This method will generate 5 followup questions which the user has 600 seconds to answer 3 out of the 5 correctly to pass.
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID that is generated by the API when an individual party is created (createParty) |
noOfqns | integer | Yes | Number of Questions |
idNumber | integer | Yes | ID Number generated when performKycAml is performed. |
type1 | string | Yes | First KYC Question (Generated by the third party provider) |
qns1 | string | Yes | First KYC Answer (Generated by the third party provider) |
type2 | string | Yes | Second KYC Question (Generated by the third party provider) |
qns2 | string | Yes | Second KYC Answer (Generated by the third party provider) |
type3 | string | Yes | Third KYC Question (Generated by the third party provider) |
qns3 | string | Yes | Third KYC Answer (Generated by the third party provider) |
type4 | string | Yes | Fourth KYC Question (Generated by the third party provider) |
qns4 | string | Yes | Fourth KYC Answer (Generated by the third party provider) |
type5 | string | Yes | Fifth KYC Question (Generated by the third party provider) |
qns5 | string | Yes | Fifth KYC Answer (Generated by the third party provider) |
Example Request
curl -k -X PUT https://api-sandboxdash.norcapsecurities.com/v3/updateKycAml
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=48587
-d noOfqns=5
-d idNumber=23265625
-d type1=current.county.b
-d qns1=ATLANTA
-d type2=city.of.residence
-d qns2=December 2006
-d type3=previous.address
-d qns3=2005
-d type4=alternate.names.phone
-d qns4=2-3 years
-d type5=residence.type
-d qns5=USA
Response
| Field | Type | Description |
partyId | string | ID for the Party |
kycStatus | string | KYC Status of the Party |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"Financial investor details": {
"partyId": "P88531",
"kycStatus": "Auto Approved"
}
}
POST /v3/updateKycAmlStatus
This method is only used if utilizing manual KYC/AML review (requestKycAml). Calling this endpoint will update the KYC or AML status to "New Info Added" to notify our review team that the requested documents have been uploaded to the party. If "Updated Review Requested" status is sent, it will initiate a new re-review of the party (in scenarios where a KYC/AML review was performed and completed previously on this party).
Parameters
| Parameter | Type | Required | Description |
partyId | string | Yes | Party ID or Entity ID that is generated by the API when an individual party or entity party is created (createParty / createEntity) |
type | conditional | Yes | Is this for a KYC or AML? |
status | conditional | Yes | This status can either be "New Info Added" for an ongoing review (if current status is "Needs More Info") or "Updated Review Requested" if a re-review is being requested. |
Example Request
curl -k -X POST https://api-sandboxdash.norcapsecurities.com/v3/updateKycAmlStatus
-d developerAPIKey=somedeveloperkey
-d clientID=someclientid
-d partyId=someclientid
-d type=KYC
-d status=New Info Added
Response
| Field | Type | Description |
partyDetails | array | An array of party details |
Example Response
{
"statusCode": "101",
"statusDesc": "Ok",
"partyDetails": [
true,
[
{
"partyId": "P39944",
"KYCstatus": "Pending",
"AMLstatus": "Pending"
}
]
]
}