Skip to main content
If your consumer program has already collected ID and selfie photos from users, you can submit these to streamline the verification process. This can improve approval rates by reducing the need for additional document requests. The following steps cover verifying document validity, uploading them correctly, and completing the application process.
This flow uses the consumer application endpoints. For a corporate application, upload documents through the company document endpoint and the UBO document endpoint instead.
Uploading is synchronous, so you learn on the spot whether a document was accepted. A 400 means you fix that document and upload it again before submitting the application.
1

Verify document validity

Before uploading, verify that the documents you have collected are acceptable KYC documents. Using unsupported documents may result in delays or rejection during the verification process.The upload endpoints offer more document types than compliance accepts, so check the accepted list rather than the endpoint’s options.
2

Initiate the application

Before uploading documents, you must initiate an application. Initiating requires the user’s email and at least one wallet address (the wallet is not needed if your program self-manages authorizations); you can optionally include details such as the user’s name.Once initiated, the application’s applicationStatus will be set to notStarted. For more details, see the application states guide.
3

Upload pre-collected documents

Use the endpoint to upload a consumer document. type, side, and countryCode are required, and must be within a subset of allowed values.
  • The type must correspond to the type of document being uploaded. Currently, we only accept types of selfie, idCard, passport, drivers and residencePermit.
  • The side must correspond to the side of the document (front or back) where applicable.
  • The countryCode is the alpha-2 country code of the country that the ID is from (for example, “US”).
Backward compatibility:The legacy country parameter (3-digit codes only) is still supported but deprecated. We recommend using countryCode for new integrations.
This endpoint is synchronous and returns a 204 on success. If a document fails validation, the endpoint returns a 400 with rejection tags. See Fastfail checks for details.
4

Submit the application

Once the documents are uploaded, you can submit the complete application.The application status will change to pending while under review.

Best practices

  • Upload all required documents before submission to avoid delays.
  • Ensure selfies meet quality guidelines for optimal matching.
  • Test the integration thoroughly in the sandbox environment before going live.

What’s next

Application states

Track the application after you submit.

KYC/KYB documents

Which documents Rain accepts.

Rejection reasons

What to do if the application comes back rejected.