plaid / plaid-link-android

Plaid Link Android SDK
https://plaid.com/docs/link/android
MIT License
114 stars 48 forks source link

Account verificationStatus typing is inconsistent between android and ios #234

Open michberr opened 2 years ago

michberr commented 2 years ago

The problem

I'm using react-native-plaid-link-sdk v8.0.0. The verificationStatus field on the LinkAccount interface is typed like so:

export interface LinkAccount {
    id: string;
    name?: string;
    mask?: string;
    type: LinkAccountType;
    subtype: LinkAccountSubtype;
    verificationStatus?: LinkAccountVerificationStatus;
}

However, on android this field is being returned as verification_status.

Environment

N/A

Steps to Reproduce

Examine the result of a LinkAccount

Expected Result

The verificationStatus field should be consistent on both android and ios and match the types defined in the sdk.

Code To Reproduce Issue

  const onSuccess = (linkSuccess: LinkSuccess) => {
    const { publicToken, metadata } = linkSuccess;
   console.log(metadata.accounts);
}
mhafizul commented 2 years ago

Having similar issue within the LinkEvent metadata, where it's snake_case on Android and CamelCase on iOS

bilousov94 commented 1 year ago

Plus one on this one. As a temporary fix you can use metadata.metadataJson field. Looks like both android and ios returned verification_status field.

I used like this one

const parsedMetadata = metadata.metadataJson ? JSON.parse(metadata.metadataJson) : null;

After that you can use parsedMetadata.verification_status