YouVerify_SDK allows you to onboard users properly and confirming identities by providing data embedded in their identity documents. A wide range of IDs can be scanned ranging from driver’s license to national ID cards, passports e.t.c.
YouVerify_SDK supports ios 15 and above and can scan IDs from the following country list -:
| Country | Documents |
|---|---|
| Albania | Driver Card, ID Card, Professional DL, Passport |
| Algeria | Driving Licence, ID Card, Passport |
| Argentina | Alien ID, Driving Licence, ID Card, Passport |
| Armenia | ID Card |
| Australia | Passport, ID Card, Driving Licence, Proof Of Age Card |
| Azerbaijan | ID Card, Passport |
| Bangladesh | Driving Licence, ID Card, Passport |
| Belgium | Driving Licence, ID Card, Passport, Minors ID, Passport, Residence Permit, Resident ID |
| Bosnia And Herzegovina | Driving Licence, ID Card, Passport |
| Botswana | ID Card |
| Brazil | Driving Licence, Passport |
| Bulgaria | Driving Licence, ID Card, Passport |
| Canada | Passport, ID Card, Citizenship Certificate, Residence Permit, Tribal ID, Weapon Permit, Driving Licence, Public Services Card |
| Colombia | Alien ID, Driving Licence, ID Card, Minors ID, Passport |
| Croatia | Driving Licence, ID Card, Residence Permit, Passport |
| Cyprus | Driving Licence, ID Card, Residence Permit |
| Czechia | Driving Licence, ID Card, Residence Permit, Passport |
| Dominican Republic | Driving Licence, ID Card |
| Ecuador | Driving Licence, ID Card |
| Estonia | Driving Licence, ID Card, Residence Permit, Passport |
| Finland | Alien ID, Driving Licence, ID Card, Residence Permit, Passport |
| France | Driving Licence, ID Card, Residence Permit, Passport |
| Georgia | Driving Licence, ID Card, Passport |
| Germany | Driving Licence, ID Card, Residence Permit, Passport |
| Ghana | Driving Licence, ID Card, Passport |
| Greece | Driving Licence, ID Card, Residence Permit, Passport |
| Guatemala | Consular ID, Driving Licence, ID Card, Passport |
| Hong Kong | ID Card, Passport |
| Iran | Passport |
| Ireland | Driving Licence, Passport Card, Public Services Card, Passport |
| Israel | Driving Licence, ID Card, Passport |
| Italy | Driving Licence, ID Card, Residence Permit, Passport |
| Ivory Coast | Driving Licence, ID Card |
| Jamaica | Driving Licence |
| Japan | Driving Licence, Passport |
| Jordan | Driving Licence, ID Card, Passport |
| Kazakhstan | ID Card |
| Kenya | ID Card, Passport |
| Kuwait | Driving Licence, ID Card, Resident ID |
| Kyrgyzstan | ID Card |
| Latvia | Alien ID, Driving Licence, ID Card, Residence Permit Passport |
| Libya | Passport |
| Lithuania | Driving Licence, ID Card, Passport |
| Luxembourg | Driving Licence, ID Card, Residence Permit |
| Malaysia | Driving Licence, MyKAS, MyKad, MyKid, MyPR, MyPolis, MyTentera, Refugee ID, Passport, i-Kad |
| Maldives | ID Card |
| Malta | Driving Licence, ID Card, Residence Permit |
| Mexico | Consular ID, Passport, Professional DL, Residence Permit, Voter ID, Driving Licence |
| Moldova | ID Card, Passport |
| Montenegro | Driving Licence, ID Card, Passport |
| Morocco | Driving Licence, ID Card, Passport |
| Nepal | Passport |
| Netherlands | Driving Licence, ID Card, Residence Permit, Passport |
| New Zealand | Driving Licence, Passport |
| Nicaragua | ID Card |
| Nigeria | Driving Licence, ID Card, Passport, Voter ID |
| North | Macedonia Driving Licence, ID Card, Passport |
| Norway | Driving Licence, Residence Permit, Passport |
| Pakistan | Consular ID, ID Card, Passport, Driving Licence |
| Philippines | Driving Licence, Multipurpose ID, Passport, Professional ID, Social Security Card, Tax ID, Voter ID |
| Poland | Driving Licence, ID Card, Residence Permit, Passport |
| Portugal | Driving Licence, ID Card, Residence Permit, Passport |
| Puerto | Rico Driving Licence, Voter ID |
| Romania | Driving Licence, ID Card, Passport |
| Russia | Driving Licence, Passport |
| Rwanda | ID Card |
| Senegal | ID Card |
| Serbia | Driving Licence, ID Card, Passport |
| Singapore | Driving Licence, Employment Pass, Fin Card, ID Card, Resident ID, Passport, S Pass, Work Permit |
| Slovakia | Driving Licence, ID Card, Residence Permit, Passport |
| Slovenia | Driving Licence, ID Card, Residence Permit, Passport |
| South Africa | Driving Licence, ID Card, Passport |
| South Korea | Driving Licence, ID Card, Passport |
| Syria | Passport |
| Thailand | Alien ID, Driving Licence, ID Card, Passport |
| United Arab Emirates | Driving Licence, ID Card, Resident ID |
| Uganda | Driving Licence, ID Card |
| United Kingdom | Driving Licence, Passport, Residence Permit |
| Uruguay | ID Card |
| United States of America | Border Crossing Card, Global Entry Card, Green Card, Military ID, Nexus Card, Passport, Social Security Card, Veteran ID, Work Permit, Driving Licence, ID Card, Weapon Permit |
| Zimbabwe | Passport |
YouVerify_SDK can integrate with both UIKit and SwiftUI using slightly different syntax.
Integrate YouVerify DocumentCapture with Cocoapods by calling :-
pod ‘YouVerify_SDK’
Add a post install block to the end of your podfile with the following command
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
end
end
end
and run pod install on your terminal from your ios project directory.
After a successful pod install, navigate to your targets and select “Build Settings” and set “User Script Sandboxing to NO”
Add the Camera usage description in the info.plist file
<key>NSCameraUsageDescription</key>
<string>YouVerify would like to use your camera for better ID capturing and recognition</string>
Import the SDK into your project from any view Controller with
import YouVerify_SDK
To start the document capture process, declare a YV variable and pass a callback to it.
let yv = YV(merchant_id: "<merchant_id>", callBack: {[weak self] dict in
if let dict = dict {
//self!.printResult(dict: dict)
}else {
print("dict is nil")
}
})
You can customize the look and and feel of the buttons and the entry texts and can also set a username by passing an appearance object in the YV variable declared earlier. Leaving out any argument in the Appearance object is fine as they all have a default value.
let appearance = Appearance(actionText: "Verify Identity", bTnTextColor: UIColor.white, userName: "User")
let yv = YV(merchant_id: "61d880f1e8e15aaf24558f1a", appearance2: appearance, callBack: {[weak self] dict in
if let dict = dict {
//self!.printResult(dict: dict)
}else {
print("dict is nil")
}
})
Finally, start the capture process by calling the startYV() function.
yv.startYV(from: self)
Insert a YVView object into a SwiftUI view hierachy, passing in the merchant id, a property to hold the result of the document capture and a boolean state variable. The dict property gets updated with the result after the document capture process have been concluded.
struct ContentView: View {
@ObservedObject var dict : AppState
@State var isShowingYouVerify = false
var body: some View {
VStack {
Button(action: {
self.isShowingYouVerify.toggle()
}) {
Text(isShowingYouVerify ? "Selected" : "Not Selected")
}
Text(dict.dict.description)
}
if isShowingYouVerify {
YVView(appearance: nil, dict: $dict.dict, isShown: $isShowingYouVerify, mercha_id: "<MERCHANT ID>")
}
}
}