# KYC documents Use Know Your Customer (KYC) documents to verify your customers identity. The KYC document operations generate a signed link to the Rebilly [KYC document gatherer](https://www.rebilly.com/docs/kyc-and-aml/kyc-document-gatherer/). Document types: - `identity-proof`: Validates a customer's identity. - `address-proof`: Validates a customer's address. - `purchase-proof`: Validates a customer's purchase. - `funds-proof`: Validates that a customer has funds. - `credit-file-proof`: Verifies that there is an existing credit file with two sources that match the customer's name, DOB, and address. Rebilly parses and analyzes the documents and accepts or rejects them according to a configurable scoring algorithm. When all document types in a KYC request are accepted, the status is fulfilled, and the [KYC request fulfilled webhook](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-request-fulfilled/) is sent. ## Create a KYC request - [POST /kyc-requests](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycrequest.md): Creates a KYC request. The customer is redirected to the link. After the customer completes the KYC process, they are redirected back to the link. Corresponding webhooks, such as: KYC document accepted and KYC document rejected, are sent to the subscribers. When the complete list of documents is received and accepted, the KYC request fulfilled webhook is sent to subscribers. If a request is successful, it returns a value of or . The corresponding and documents are not requested. ## Retrieve KYC requests - [GET /kyc-requests](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/getkycrequestcollection.md): Retrieves a list of KYC requests. ## Retrieve a KYC request - [GET /kyc-requests/{id}](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/getkycrequest.md): Retrieves a KYC request with a specified ID. ## Update a KYC request - [PATCH /kyc-requests/{id}](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/patchkycrequest.md): Updates a KYC request with a specified ID. ## Delete the KYC request - [DELETE /kyc-requests/{id}](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/deletekycrequest.md): Deletes a KYC request with a specified ID. ## Retrieve KYC documents - [GET /kyc-documents](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/getkycdocumentcollection.md): Retrieves a list of KYC documents. ## Create a KYC document - [POST /kyc-documents](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocument.md): Creates a KYC document. ## Retrieve a KYC document - [GET /kyc-documents/{id}](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/getkycdocument.md): Retrieves a KYC document with a specified ID. ## Upsert a KYC document - [PUT /kyc-documents/{id}](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/putkycdocument.md): Creates or updates (upserts) a KYC document with a specified ID. ## Accept a KYC document - [POST /kyc-documents/{id}/acceptance](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentacceptance.md): Accepts a KYC document and changes the documents to . The review time and reviewer information is also updated. > Use this operation for manual overrides. ## Update KYC document matches - [POST /kyc-documents/{id}/matches](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentmatches.md): Updates the document matches of a KYC document with a specified ID. > Use this operation for manual overrides. ## Reject a KYC document - [POST /kyc-documents/{id}/rejection](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentrejection.md): Rejects a KYC document and changes the to . The review time and reviewer information is also updated. > Use this operation for manual overrides. ## Review a KYC document - [POST /kyc-documents/{id}/review](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentreview.md): Updates the and of a KYC document with a specified ID. ## Start review of a KYC document - [POST /kyc-documents/{id}/start-review](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentstartreview.md): Starts the review process of a KYC document with a specified ID. This operation also sets the KYC document to the current date-time, and updates the review information. ## Stop review of a KYC document - [POST /kyc-documents/{id}/stop-review](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/postkycdocumentstopreview.md): Stops the review of a KYC document with a specified ID. This operation also sets the KYC document and the reviewer information to null. Use this operation when the reviewer must stop the review. For example, if the reviewer must take a break, or ends a shift. ## Retrieve KYC settings - [GET /kyc-settings](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/getkycsettings.md): Retrieves KYC settings. ## Update KYC settings - [PUT /kyc-settings](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/putkycsettings.md): Updates KYC settings. ## KYC document accepted - [POST kyc-document-accepted](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-document-accepted.md) ## KYC document modified - [POST kyc-document-modified](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-document-modified.md) ## KYC document rejected - [POST kyc-document-rejected](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-document-rejected.md) ## KYC document reviewed - [POST kyc-document-reviewed](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-document-reviewed.md) ## KYC document archived - [POST kyc-document-archived](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-document-archived.md) ## KYC request attempted - [POST kyc-request-attempted](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-request-attempted.md) ## KYC request failed - [POST kyc-request-failed](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-request-failed.md) ## KYC request fulfilled - [POST kyc-request-fulfilled](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-request-fulfilled.md) ## KYC request partially fulfilled - [POST kyc-request-partially-fulfilled](https://www.rebilly.com/docs/dev-docs/api/kyc-documents/kyc-request-partially-fulfilled.md)