Review a KYC document

Mark the KYC document as reviewed. Updates the review time and reviewer. information.

SecuritySecretApiKey or JWT
Request
path Parameters
id
required
string <= 50 characters ^[@~\-\.\w]+$

The resource identifier string.

Responses
201

KYC document was reviewed.

Response Headers
Location
string <uri>

The location of the related resource.

Example: "https://api.rebilly.com/example"
Response Schema: application/json
customerId
required
string (CustomerId) <= 50 characters

The customer resource ID. Defaults to UUID v4.

documentType
required
string

Document type submitted for validation, only identity-proof type is analyzed in an automated manner.

status
required
string

Status of the validation.

Enum: Description
pending

Waiting to be reviewed or analyzed

in-progress

Being analyzed by Rebilly's AI

accepted

Accepted by AI or a human

rejected

Rejected by AI or a human

archived

Archived by Rebilly's AI

id
string <= 50 characters

The resource ID. Defaults to UUID v4.

fileId
string <= 50 characters
Deprecated

Linked file object id.

fileIds
Array of strings

Linked file object id's.

Files uploaded for identity-proof must have following corresponding tags attached ['kyc', 'id-front'], ['kyc', 'id-back'], ['kyc', 'face-proof'] in order to be properly recognized as identity-proof files.

documentSubtype
string

Document subtype submitted for validation.

Enum: "passport" "id-card" "driver-license" "birth-certificate" "utility-bill" "rental-receipt" "lease-agreement" "copy-credit-card" "credit-card-statement" "bank-statement" … 11 more
object (KycDocumentRejection)
type
string (KycDocumentRejectionReasonTypes)
Enum: "document-unreadable" "document-expired" "document-not-matching" "document-duplicate" "document-invalid" "document-not-open" "underage-person" "third-party-or-mismatch" "expiration-date-missing" "issue-date-missing" … 5 more
message
string

The rejection message.

requestId
string or null <= 50 characters

KYC request identifier string.

createdTime
string <date-time>

Creation date/time.

updatedTime
string <date-time> (UpdatedTime)

Read-only timestamp updates when the resource is updated.

processedTime
string <date-time>

Processing date/time.

reviewerId
string or null <= 50 characters

Reviewer's user ID.

reviewerName
string or null

Reviewer's first and last name.

reviewStartTime
string or null <date-time>

Date and time that manual review starts.

reviewTime
string or null <date-time>

Date and time of manual review.

notes
string or null

Reviewer notes.

Array of objects (Tag)

A list of kyc document tags.

Array
name
required
string <= 255 characters ^[@~\-\.\w\s]+$

The tag is unique name, which is case-insensitive.

type
required
string

The tag type. Tags of a specific type could only be used for the corresponding entity.

Enum: "customer" "kyc-document"
id
string <= 50 characters

The tag's identifier string.

createdTime
string <date-time>

The tag's created time.

updatedTime
string <date-time> (UpdatedTime)

Read-only timestamp updates when the resource is updated.

Array of Self (object) non-empty

The links related to resource.

reason
string

Reason for uploading.

matchLevel
integer [ 1 .. 2 ]

The level of strictness for the document matches.

object or null

The settings used to score the document.

object

The weights of all matched properties.

containsImage
integer [ 0 .. 100 ]

The weight of containsImage.

isIdentityDocument
integer [ 0 .. 100 ]

The weight of isIdentityDocument.

isPublishedOnline
integer [ 0 .. 100 ]

The weight of isPublishedOnline.

firstName
integer [ 0 .. 100 ]

The weight of firstName.

lastName
integer [ 0 .. 100 ]

The weight of lastName.

expirationDate
integer [ 0 .. 100 ]

The weight of expirationDate.

dateOfBirth
integer [ 0 .. 100 ]

The weight of dateOfBirth.

matchesDateOfBirth
integer [ 0 .. 100 ]

The weight of matchesDateOfBirth.

issueDate
integer [ 0 .. 100 ]

The weight of issueDate.

hasMinimalAge
integer [ 0 .. 100 ]

The weight of hasMinimalAge.

hasMatchingFaceProof
integer [ 0 .. 100 ]

The weight of hasMatchingFaceProof.

nationality
integer [ 0 .. 100 ]

The weight of nationality.

object

The thresholds to determine the document status.

rejectBelow
integer [ 0 .. 100 ]

The weight of rejectBelow.

acceptAbove
integer [ 0 .. 100 ]

The weight of acceptAbove.

revision
integer

The number of times the KYC document data has been modified. The revision is useful when analyzing webhook data to determine if the change takes precedence over the current representation.

object
score
number <double>

The calculated score that represents the % of confidence that this ID represents the given customer.

object (IdentityMatches)
containsImage
boolean

Flag that indicates if there is an image that contains a face on it.

isIdentityDocument
boolean

Flag that indicates if this looks like and ID.

isPublishedOnline
boolean

If there is an exact match found online.

firstName
string or null

The customer first name if it was matched, null otherwise.

lastName
string or null

The customer last name if it was matched, null otherwise.

dateOfBirth
string or null <date-time>

The date of birth found on the document, null if not found.

expiryDate
string or null <date-time>
Deprecated

The expiry date found on the document, null if not found.

expirationDate
string or null <date-time>

The expiration date found on the document, null if not found.

issueDate
string or null <date-time>

The issued date found on the document, null if not found.

hasMinimalAge
boolean or null

Checks the minimal age, 21+ for USA and 18+ for all other countries. Null if dateOfBirth could not be determined.

nationality
string or null <= 3 characters

The nationality found on the document, null otherwise.

documentSubtype
string or null

The interpreted subtype of the uploaded document.

object
score
number <double>

The calculated score that represents the % of confidence that this ID represents the given customer.

object (IdentityMatches)
containsImage
boolean

Flag that indicates if there is an image that contains a face on it.

isIdentityDocument
boolean

Flag that indicates if this looks like and ID.

isPublishedOnline
boolean

If there is an exact match found online.

firstName
string or null

The customer first name if it was matched, null otherwise.

lastName
string or null

The customer last name if it was matched, null otherwise.

dateOfBirth
string or null <date-time>

The date of birth found on the document, null if not found.

expiryDate
string or null <date-time>
Deprecated

The expiry date found on the document, null if not found.

expirationDate
string or null <date-time>

The expiration date found on the document, null if not found.

issueDate
string or null <date-time>

The issued date found on the document, null if not found.

hasMinimalAge
boolean or null

Checks the minimal age, 21+ for USA and 18+ for all other countries. Null if dateOfBirth could not be determined.

nationality
string or null <= 3 characters

The nationality found on the document, null otherwise.

documentSubtype
string or null

The interpreted subtype of the uploaded document.

Array of Self (object) or CustomerLink (object) >= 2 items

The links related to resource.

Array (>= 2 items)
Any of:
href
required
string

The link URL.

rel
required
string

The link type.

Value: "self"
Array of CustomerEmbed (object) non-empty

Any embedded objects available that are requested by the expand querystring parameter.

Array (non-empty)
Any of:

Customer object.

object (Customer)
401

Unauthorized access, invalid credentials were used.

403

Access forbidden.

404

Resource was not found.

422

Invalid data was sent.

post/kyc-documents/{id}/review
Request samples
const reviewedDocument = await api.kycDocuments.review({id: 'my-second-id'});
console.log(reviewedDocument.fields.status);
Response samples
application/json
{
  • "id": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "fileId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "fileIds": [
    ],
  • "documentType": "identity-proof",
  • "documentSubtype": "passport",
  • "status": "pending",
  • "rejectionReason": {
    },
  • "requestId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "createdTime": "2019-08-24T14:15:22Z",
  • "updatedTime": "2019-08-24T14:15:22Z",
  • "processedTime": "2019-08-24T14:15:22Z",
  • "customerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "reviewerId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "reviewerName": "string",
  • "reviewStartTime": "2019-08-24T14:15:22Z",
  • "reviewTime": "2019-08-24T14:15:22Z",
  • "notes": "string",
  • "tags": [
    ],
  • "reason": "string",
  • "matchLevel": 2,
  • "settings": {
    },
  • "revision": 0,
  • "documentMatches": {
    },
  • "parsedData": {
    },
  • "_links": [
    ],
  • "_embedded": [
    ]
}