KYC Operations
This section covers GraphQL operations related to KYC (Know Your Customer) verification processes.
Identity Verification (IDV)​
Request KYC IDV URL​
Requests a URL for identity verification through the KYC provider.
mutation RequestKycIdvUrl($input: RequestKycIdvUrlInput) {
requestKycIdvUrl(input: $input) {
url
}
}
Input Parameters:
{
"input": {
"callbackPath": "/kyc/complete"
}
}
Response:
{
"data": {
"requestKycIdvUrl": {
"url": "https://kyc-provider.com/verify/reference-id"
}
}
}
Complete KYC IDV​
Completes the identity verification process after the user has gone through the KYC provider's flow.
mutation CompleteKycIdv($input: CompleteKycIdvInput!) {
completeKycIdv(input: $input)
}
Input Parameters:
{
"input": {
"referenceId": "reference-id-from-provider"
}
}
Response:
{
"data": {
"completeKycIdv": true
}
}
Check KYC IDV Status​
Checks the current status of the KYC identity verification process.
query CheckKycIdv {
checkKycIdv
}
Response:
{
"data": {
"checkKycIdv": "VERIFIED"
}
}
Possible status values include:
NONE
: No KYC verification has been startedPENDING
: KYC verification is in progressVERIFIED
: KYC verification has been successfully completedREJECTED
: KYC verification has been rejected
Proof of Address (POA)​
Upload KYC Proof of Address​
Uploads a document for proof of address verification.
mutation UploadKycPoa($input: UploadPoaFileInput!) {
uploadKycPoa(input: $input) {
status
message
}
}
Input Parameters:
{
"input": {
"filename": "address-proof.pdf"
}
}
Response:
{
"data": {
"uploadKycPoa": {
"status": "SUCCESS",
"message": "Proof of address uploaded successfully"
}
}
}
File Upload​
Before uploading a file using the uploadKycPoa
mutation, you'll need to obtain a signed URL to upload the file to the storage provider.
Get Signed File URL​
query GetSignedFileUrl($filename: String!, $type: MainUploadFileType!) {
getSignedFileUrl(filename: $filename, type: $type)
}
Input Parameters:
{
"filename": "address-proof.pdf",
"type": "KYC_DOCUMENT"
}
Response:
{
"data": {
"getSignedFileUrl": "https://storage-provider.com/upload?signature=abc123..."
}
}
After obtaining the signed URL, upload the file directly to the storage provider using an HTTP PUT request. Then, use the uploadKycPoa
mutation to register the uploaded file.
Input Types​
RequestKycIdvUrlInput​
Field | Type | Description |
---|---|---|
callbackPath | String | Optional path to redirect to after KYC completion |
CompleteKycIdvInput​
Field | Type | Description |
---|---|---|
referenceId | String | Reference ID received from KYC provider |
UploadPoaFileInput​
Field | Type | Description |
---|---|---|
filename | String | Name of the uploaded proof of address file |