VGS Collect - is a product suite that allows customers to collect information securely without possession of it. VGSCollect iOS SDK allows you to securely collect data from your users via forms without having to have that data pass through your systems. The form fields behave like traditional input fields while securing access to the unsecured data.
You should have your organization registered at VGS Dashboard. Sandbox vault will be pre-created for you. You should use your <vaultId>
to start collecting data. Follow integration guide below.
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift
compiler.
Xcode with Swift tools version of 5.3 is required for VGSCollectSDK. Earlier Xcode versions don't support Swift packages with resources.
To check your current Swift tools version run in your terminal:
xcrun swift -version
To use Swift Package Manager, in Xcode add the https://github.com/verygoodsecurity/vgs-collect-ios.git dependency and choose the Exact
version.
Select VGSCollectSDK
and optionally other packages provided with VGSCollectSDK
:
CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit CocoaPods website. To integrate VGSCollectSDK into your Xcode project using CocoaPods, specify it in your Podfile
:
pod 'VGSCollectSDK'
import VGSCollectSDK
Use your <vaultId>
to initialize VGSCollect instance. You can get it in your organisation dashboard.
VGSCardTextField automatically detects card provider and display card brand icon in the input field.
VGS Collect SDK provides optional card scan solution. It's required to use only Scan modules provided by VGS, which are audited by VGS PCI requirements.
Add 'VGSCollectSDK' alongside with one of scan modules pod:
pod 'VGSCollectSDK'
# Add one of available scan providers
pod 'VGSCollectSDK/BlinkCard'
To use BlinkCard add VGSCollectSDK
, VGSBlinkCardCollector
packages to your target.
Handle VGSBlinkCardControllerDelegate
functions. To setup scanned data into specific VGSTextField implement textFieldForScannedData:
. If scanned data is valid it will be set in your VGSTextField automatically after user confirmation. Check VGSBlinkCardDataType
to get available scand data types.
Don't forget to add NSCameraUsageDescription key and description into your App Info.plist
.
You can add a file uploading functionality to your application with VGSFilePickerController.
Use vgsCollect.cleanFiles() to unassign file from associated VGSCollect instance whenever you need.
VGS Collect iOS SDK provide support for integration with apps that are buid with SwiftUI toolkit by providing SwiftUI wrappers for all VGS textfields. Follow examples here.
Demo application for collecting card data on iOS is here.
- SDK Documentation: https://www.verygoodsecurity.com/docs/vgs-collect/ios-sdk
- API Documentation: https://verygoodsecurity.github.io/vgs-collect-ios/
To follow VGSCollectSDK
updates and changes check the releases page.
VGSCollectSDK tracks a few key metrics to understand SDK features usage, which helps us know what areas need improvement. No personal information is tracked. You can read more about VGS Privacy details ans iOS Privacy Manifest file at our web site.
You can opt-out of metrics collection in VGSAnalyticsClient
:
VGSAnalyticsClient.shared.shouldCollectAnalytics = false
- iOS 12+
- Swift 5
- Optional 3rd party libraries:
VGSCollect iOS SDK is released under the MIT license. See LICENSE for details.