415 lines
15 KiB
TypeScript
415 lines
15 KiB
TypeScript
import { StripeResource } from '../../StripeResource.js';
|
|
import { PaginationParams, RangeQueryParam, Address } from '../../shared.js';
|
|
import { RequestOptions, ApiListPromise, Response } from '../../lib.js';
|
|
export declare class VerificationReportResource extends StripeResource {
|
|
/**
|
|
* List all verification reports.
|
|
*/
|
|
list(params?: Identity.VerificationReportListParams, options?: RequestOptions): ApiListPromise<VerificationReport>;
|
|
/**
|
|
* Retrieves an existing VerificationReport
|
|
*/
|
|
retrieve(id: string, params?: Identity.VerificationReportRetrieveParams, options?: RequestOptions): Promise<Response<VerificationReport>>;
|
|
}
|
|
export interface VerificationReport {
|
|
/**
|
|
* Unique identifier for the object.
|
|
*/
|
|
id: string;
|
|
/**
|
|
* String representing the object's type. Objects of the same type share the same value.
|
|
*/
|
|
object: 'identity.verification_report';
|
|
/**
|
|
* A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems.
|
|
*/
|
|
client_reference_id: string | null;
|
|
/**
|
|
* Time at which the object was created. Measured in seconds since the Unix epoch.
|
|
*/
|
|
created: number;
|
|
/**
|
|
* Result from a document check
|
|
*/
|
|
document?: Identity.VerificationReport.Document;
|
|
/**
|
|
* Result from a email check
|
|
*/
|
|
email?: Identity.VerificationReport.Email;
|
|
/**
|
|
* Result from an id_number check
|
|
*/
|
|
id_number?: Identity.VerificationReport.IdNumber;
|
|
/**
|
|
* If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
|
|
*/
|
|
livemode: boolean;
|
|
options?: Identity.VerificationReport.Options;
|
|
/**
|
|
* Result from a phone check
|
|
*/
|
|
phone?: Identity.VerificationReport.Phone;
|
|
/**
|
|
* Result from a selfie check
|
|
*/
|
|
selfie?: Identity.VerificationReport.Selfie;
|
|
/**
|
|
* Type of report.
|
|
*/
|
|
type: Identity.VerificationReport.Type;
|
|
/**
|
|
* The configuration token of a verification flow from the dashboard.
|
|
*/
|
|
verification_flow?: string;
|
|
/**
|
|
* ID of the VerificationSession that created this report.
|
|
*/
|
|
verification_session: string | null;
|
|
}
|
|
export declare namespace Identity {
|
|
namespace VerificationReport {
|
|
interface Document {
|
|
/**
|
|
* Address as it appears in the document.
|
|
*/
|
|
address: Address | null;
|
|
/**
|
|
* Date of birth as it appears in the document.
|
|
*/
|
|
dob?: Document.Dob | null;
|
|
/**
|
|
* Details on the verification error. Present when status is `unverified`.
|
|
*/
|
|
error: Document.Error | null;
|
|
/**
|
|
* Expiration date of the document.
|
|
*/
|
|
expiration_date?: Document.ExpirationDate | null;
|
|
/**
|
|
* Array of [File](https://docs.stripe.com/api/files) ids containing images for this document.
|
|
*/
|
|
files: Array<string> | null;
|
|
/**
|
|
* First name as it appears in the document.
|
|
*/
|
|
first_name: string | null;
|
|
/**
|
|
* Issued date of the document.
|
|
*/
|
|
issued_date: Document.IssuedDate | null;
|
|
/**
|
|
* Issuing country of the document.
|
|
*/
|
|
issuing_country: string | null;
|
|
/**
|
|
* Last name as it appears in the document.
|
|
*/
|
|
last_name: string | null;
|
|
/**
|
|
* Document ID number.
|
|
*/
|
|
number?: string | null;
|
|
/**
|
|
* Sex of the person in the document.
|
|
*/
|
|
sex?: Document.Sex | null;
|
|
/**
|
|
* Status of this `document` check.
|
|
*/
|
|
status: Document.Status;
|
|
/**
|
|
* Type of the document.
|
|
*/
|
|
type: Document.Type | null;
|
|
/**
|
|
* Place of birth as it appears in the document.
|
|
*/
|
|
unparsed_place_of_birth?: string | null;
|
|
/**
|
|
* Sex as it appears in the document.
|
|
*/
|
|
unparsed_sex?: string | null;
|
|
}
|
|
interface Email {
|
|
/**
|
|
* Email to be verified.
|
|
*/
|
|
email: string | null;
|
|
/**
|
|
* Details on the verification error. Present when status is `unverified`.
|
|
*/
|
|
error: Email.Error | null;
|
|
/**
|
|
* Status of this `email` check.
|
|
*/
|
|
status: Email.Status;
|
|
}
|
|
interface IdNumber {
|
|
/**
|
|
* Date of birth.
|
|
*/
|
|
dob?: IdNumber.Dob | null;
|
|
/**
|
|
* Details on the verification error. Present when status is `unverified`.
|
|
*/
|
|
error: IdNumber.Error | null;
|
|
/**
|
|
* First name.
|
|
*/
|
|
first_name: string | null;
|
|
/**
|
|
* ID number. When `id_number_type` is `us_ssn`, only the last 4 digits are present.
|
|
*/
|
|
id_number?: string | null;
|
|
/**
|
|
* Type of ID number.
|
|
*/
|
|
id_number_type: IdNumber.IdNumberType | null;
|
|
/**
|
|
* Last name.
|
|
*/
|
|
last_name: string | null;
|
|
/**
|
|
* Status of this `id_number` check.
|
|
*/
|
|
status: IdNumber.Status;
|
|
}
|
|
interface Options {
|
|
document?: Options.Document;
|
|
id_number?: Options.IdNumber;
|
|
}
|
|
interface Phone {
|
|
/**
|
|
* Details on the verification error. Present when status is `unverified`.
|
|
*/
|
|
error: Phone.Error | null;
|
|
/**
|
|
* Phone to be verified.
|
|
*/
|
|
phone: string | null;
|
|
/**
|
|
* Status of this `phone` check.
|
|
*/
|
|
status: Phone.Status;
|
|
}
|
|
interface Selfie {
|
|
/**
|
|
* ID of the [File](https://docs.stripe.com/api/files) holding the image of the identity document used in this check.
|
|
*/
|
|
document: string | null;
|
|
/**
|
|
* Details on the verification error. Present when status is `unverified`.
|
|
*/
|
|
error: Selfie.Error | null;
|
|
/**
|
|
* ID of the [File](https://docs.stripe.com/api/files) holding the image of the selfie used in this check.
|
|
*/
|
|
selfie: string | null;
|
|
/**
|
|
* Status of this `selfie` check.
|
|
*/
|
|
status: Selfie.Status;
|
|
}
|
|
type Type = 'document' | 'id_number' | 'verification_flow';
|
|
namespace Document {
|
|
interface Dob {
|
|
/**
|
|
* Numerical day between 1 and 31.
|
|
*/
|
|
day: number | null;
|
|
/**
|
|
* Numerical month between 1 and 12.
|
|
*/
|
|
month: number | null;
|
|
/**
|
|
* The four-digit year.
|
|
*/
|
|
year: number | null;
|
|
}
|
|
interface Error {
|
|
/**
|
|
* A short machine-readable string giving the reason for the verification failure.
|
|
*/
|
|
code: Error.Code | null;
|
|
/**
|
|
* A human-readable message giving the reason for the failure. These messages can be shown to your users.
|
|
*/
|
|
reason: string | null;
|
|
}
|
|
interface ExpirationDate {
|
|
/**
|
|
* Numerical day between 1 and 31.
|
|
*/
|
|
day: number | null;
|
|
/**
|
|
* Numerical month between 1 and 12.
|
|
*/
|
|
month: number | null;
|
|
/**
|
|
* The four-digit year.
|
|
*/
|
|
year: number | null;
|
|
}
|
|
interface IssuedDate {
|
|
/**
|
|
* Numerical day between 1 and 31.
|
|
*/
|
|
day: number | null;
|
|
/**
|
|
* Numerical month between 1 and 12.
|
|
*/
|
|
month: number | null;
|
|
/**
|
|
* The four-digit year.
|
|
*/
|
|
year: number | null;
|
|
}
|
|
type Sex = '[redacted]' | 'female' | 'male' | 'unknown';
|
|
type Status = 'unverified' | 'verified';
|
|
type Type = 'driving_license' | 'id_card' | 'passport';
|
|
namespace Error {
|
|
type Code = 'document_expired' | 'document_type_not_supported' | 'document_unverified_other';
|
|
}
|
|
}
|
|
namespace Email {
|
|
interface Error {
|
|
/**
|
|
* A short machine-readable string giving the reason for the verification failure.
|
|
*/
|
|
code: Error.Code | null;
|
|
/**
|
|
* A human-readable message giving the reason for the failure. These messages can be shown to your users.
|
|
*/
|
|
reason: string | null;
|
|
}
|
|
type Status = 'unverified' | 'verified';
|
|
namespace Error {
|
|
type Code = 'email_unverified_other' | 'email_verification_declined';
|
|
}
|
|
}
|
|
namespace IdNumber {
|
|
interface Dob {
|
|
/**
|
|
* Numerical day between 1 and 31.
|
|
*/
|
|
day: number | null;
|
|
/**
|
|
* Numerical month between 1 and 12.
|
|
*/
|
|
month: number | null;
|
|
/**
|
|
* The four-digit year.
|
|
*/
|
|
year: number | null;
|
|
}
|
|
interface Error {
|
|
/**
|
|
* A short machine-readable string giving the reason for the verification failure.
|
|
*/
|
|
code: Error.Code | null;
|
|
/**
|
|
* A human-readable message giving the reason for the failure. These messages can be shown to your users.
|
|
*/
|
|
reason: string | null;
|
|
}
|
|
type IdNumberType = 'br_cpf' | 'sg_nric' | 'us_ssn';
|
|
type Status = 'unverified' | 'verified';
|
|
namespace Error {
|
|
type Code = 'id_number_insufficient_document_data' | 'id_number_mismatch' | 'id_number_unverified_other';
|
|
}
|
|
}
|
|
namespace Options {
|
|
interface Document {
|
|
/**
|
|
* Array of strings of allowed identity document types. If the provided identity document isn't one of the allowed types, the verification check will fail with a document_type_not_allowed error code.
|
|
*/
|
|
allowed_types?: Array<Document.AllowedType>;
|
|
/**
|
|
* Collect an ID number and perform an [ID number check](https://docs.stripe.com/identity/verification-checks?type=id-number) with the document's extracted name and date of birth.
|
|
*/
|
|
require_id_number?: boolean;
|
|
/**
|
|
* Disable image uploads, identity document images have to be captured using the device's camera.
|
|
*/
|
|
require_live_capture?: boolean;
|
|
/**
|
|
* Capture a face image and perform a [selfie check](https://docs.stripe.com/identity/verification-checks?type=selfie) comparing a photo ID and a picture of your user's face. [Learn more](https://docs.stripe.com/identity/selfie).
|
|
*/
|
|
require_matching_selfie?: boolean;
|
|
}
|
|
interface IdNumber {
|
|
}
|
|
namespace Document {
|
|
type AllowedType = 'driving_license' | 'id_card' | 'passport';
|
|
}
|
|
}
|
|
namespace Phone {
|
|
interface Error {
|
|
/**
|
|
* A short machine-readable string giving the reason for the verification failure.
|
|
*/
|
|
code: Error.Code | null;
|
|
/**
|
|
* A human-readable message giving the reason for the failure. These messages can be shown to your users.
|
|
*/
|
|
reason: string | null;
|
|
}
|
|
type Status = 'unverified' | 'verified';
|
|
namespace Error {
|
|
type Code = 'phone_unverified_other' | 'phone_verification_declined';
|
|
}
|
|
}
|
|
namespace Selfie {
|
|
interface Error {
|
|
/**
|
|
* A short machine-readable string giving the reason for the verification failure.
|
|
*/
|
|
code: Error.Code | null;
|
|
/**
|
|
* A human-readable message giving the reason for the failure. These messages can be shown to your users.
|
|
*/
|
|
reason: string | null;
|
|
}
|
|
type Status = 'unverified' | 'verified';
|
|
namespace Error {
|
|
type Code = 'selfie_document_missing_photo' | 'selfie_face_mismatch' | 'selfie_manipulated' | 'selfie_unverified_other';
|
|
}
|
|
}
|
|
}
|
|
}
|
|
export declare namespace Identity {
|
|
interface VerificationReportRetrieveParams {
|
|
/**
|
|
* Specifies which fields in the response should be expanded.
|
|
*/
|
|
expand?: Array<string>;
|
|
}
|
|
}
|
|
export declare namespace Identity {
|
|
interface VerificationReportListParams extends PaginationParams {
|
|
/**
|
|
* A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems.
|
|
*/
|
|
client_reference_id?: string;
|
|
/**
|
|
* Only return VerificationReports that were created during the given date interval.
|
|
*/
|
|
created?: RangeQueryParam | number;
|
|
/**
|
|
* Specifies which fields in the response should be expanded.
|
|
*/
|
|
expand?: Array<string>;
|
|
/**
|
|
* Only return VerificationReports of this type
|
|
*/
|
|
type?: VerificationReportListParams.Type;
|
|
/**
|
|
* Only return VerificationReports created by this VerificationSession ID. It is allowed to provide a VerificationIntent ID.
|
|
*/
|
|
verification_session?: string;
|
|
}
|
|
namespace VerificationReportListParams {
|
|
type Type = 'document' | 'id_number';
|
|
}
|
|
}
|