/get_verifications/<verification_uuid>

Advanced KYC endpoint that returns a single, specified verification record.

👍

This doc has been updated with Priority specifications.

Returns detailed information for a single verification record, including reasons needed to determine the type of documentation for and end user that goes into a status of documents_required. Use /get_verifications for a full, less detailed, list of all verification records for a single entity.

Please use our webhooks instead of polling this endpoint. Sila retains the prerogative to impose rate limits if deemed necessary.

  • kyc_status
    • Fires on the transition between pass/fail. Rely on kyc_action for all updates in between.
  • kyc_action
    • Fires on documents_required updates. Rely on kyc_status for pass/fail update.

🚧

Advanced KYC ONLY

Only use this endpoint if you are utilizing the new Advanced KYC.

Request

Authorization / Authentication

Apps using Access Token Authorization

Use a valid access token in an Authorization: Bearer request header.

See Auth Token Overview for more details.

NOTE: Though we recommend using JWT, you can use this endpoint with ECDSA.

POST /0.2/get_verifications/<verification_uuid> HTTP/1.1
sandbox.silamoney.com
Content-Type: application/json
Authorization: Bearer [GENERATED JWT TOKEN HERE]

{
  "header": {
    "created": 1234567890, //required
    "app_handle": "your_app_handle", //required
    "user_handle":"user_handle", //required
    "version": "0.2", 
    "reference": "<your unique id>"
  }
}

***

HTTP/1.1 200 OK

{
  "success": true,
  "verification_id": "28772779-f411-46eb-8f2d-c7dea439a303",
  "requested_at": 1753312417,
  "updated_at": 1753312435,
  "entity_type": "User",
  "verification_status": "passed",
  "flow": "c9bed594-9368-4fd8-8094-b78df7850ba0",
  "checks_performed": [
    "priority_kyc"
  ],
  "parent_verification": null,
  "reasons": {
    "for_kyc_response": []
  },
  "kyc_action": null,
  "certification_status": null,
  "reference": "1753312571",
  "status": "SUCCESS",
  "sila_reference_id": "req_8g0y4xdgle5x84pap49b7wcai8",
  "response_time_ms": "327"
}

Request Attributes

KeyTypeDescription
headerJSON objectRequired.

Required keys:

created - Unix epoch timestamp in seconds. Must not be future-dated and must not be dated more than 5 minutes in the past.
app_handle - your app handle
user_handle - the user_handle to pull verification data for

Optional keys:

reference: Can be any value for your own reference. If not provided, one will be assigned.
version: Cannot be null if key is present. Valid values: 0.2, v0.2, V0.2
verification_uuidstringRequired.

The UUID of the verification record you want to see. Can be found in responses from either /kyc or /get_verifications. Goes in the URL rather than the request body.

Verification Statuses

Verification StatusDescription
'unverified'Entity has not had a KYC evaluation
'passed'Entity has passed KYC
'pending'An entity's KYC evaluation is in progress
'review'Under manual review by Sila
'failed'Entity has failed KYC
'member_failed'Business member failed KYC. KYB will need to be re-requested to begin a new verification attempt
'member_review'Happens when a business member is under manual review. Documents may or may not be required for verification
'member_pending'A business member's KYC evaluation is in progress
'documents_required'Upload documents for further verification
'documents_received'Documents were received and will be reviewed

If your end user receives documents_required

This means that further verification is required to pass this end user through KYC successfully, and documents need to be uploaded with /documents.

  • Use the reasons provided by /get_verifications/<verification_uuid> to determine the type of doc to upload, then use /documents to upload any necessary docs. Make sure to provide the verification_uuid in the /documents call so it is uploaded for the correct verification record on the correct entity.
    • reasons are returned as an array of strings. A few examples include:
      • Unable to verify business name, address, TIN and phone on business records
      • Unable to verify SSN/TIN
      • Unable to verify date-of-birth
    • There are approximately 130 possible reason strings. We have that full list mapped to the type of verification needed available upon request.
  • Not a requirement, but you may consider reviewing the PII provided for the entity during /register and updating anything that may be incorrect.
  • If the doc is incomplete in some way, such as missing a signature, you will be prompted to upload the doc again.
  • If the doc provided does not provide enough further verification to pass KYC, you will be prompted to upload a different doc.
  • Priority estimates an approximately 24 hour turnaround time for reviewing uploaded docs.
  • There is NOT a limit on the number of times the same or different docs can be uploaded for a single verification record.
  • If a verification record goes to documents_required and documents are not uploaded within 30 days, that verification record will automatically fail.
    • Upload a document for a verification record in this state to restart that verification.

Responses

Status CodeSuccess AttributeDescription
200true
403falseEntity has already passed KYC.

"Entity for_kyc_response has already passed identity verification within the last 30 days."
403falseEntity has an existing verification record in progress (has not yet passed KYC).

"User <user_handle> already has a Priority verification in progress for KYC-PRIORITY."
404falseRequested verification_uuid not found.

"No KYC verification record can be found matching id {_uuid}"