@bebapps/rapyd-sdk
Version:
An un-official [Rapyd](https://rapyd.net) SDK for Node.js.
45 lines (40 loc) • 2.23 kB
text/typescript
import { RapydClient } from '../../../core/RapydClient';
import { IdentityVerification } from '../types/IdentityVerification';
import { IdentityVerificationError } from '../enums/IdentityVerificationError';
import { CreateIdentityVerificationPageRequest } from '../requests/CreateIdentityVerificationPageRequest';
import { ListOfficialIdentificationDocumentsRequest } from '../requests/ListOfficialIdentificationDocumentsRequest';
import { VerifyIdentityRequest } from '../requests/VerifyIdentityRequest';
export async function createIdentityVerificationPage<R = IdentityVerification>(client: RapydClient, request: CreateIdentityVerificationPageRequest): Promise<R> {
const response = await client.post('/v1/hosted/idv', {
contact: request.contact,
country: request.country,
ewallet: request.ewallet,
page_expiration: request.page_expiration,
reference_id: request.reference_id,
request_type: request.request_type,
});
return await response.data<R, IdentityVerificationError>();
}
export async function listOfficialIdentificationDocuments<R = IdentityVerification>(client: RapydClient, request: ListOfficialIdentificationDocumentsRequest): Promise<R> {
const queryParams = client.queryParams({ country: request.country });
const response = await client.get('/v1/identities/types' + queryParams);
return await response.data<R, IdentityVerificationError>();
}
export async function verifyIdentity<R = IdentityVerification>(client: RapydClient, request: VerifyIdentityRequest): Promise<R> {
const response = await client.post('/v1/identities', {
back_side_image: request.back_side_image,
back_side_image_mime_type: request.back_side_image_mime_type,
contact: request.contact,
country: request.country,
document_type: request.document_type,
ewallet: request.ewallet,
face_image: request.face_image,
face_image_mime_type: request.face_image_mime_type,
front_side_image: request.front_side_image,
front_side_image_mime_type: request.front_side_image_mime_type,
reference_id: request.reference_id,
request_type: request.request_type,
send_callback: request.send_callback,
});
return await response.data<R, IdentityVerificationError>();
}