(https://r<img style="max-width:100%;" src="https://raw.github.com/verygoodsecurity/vgs-collect-ios/master/com/verygoodsecurity/vgs-collect-ios/master/)
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.
CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To integrate VGSCollectSDK into your Xcode project using CocoaPods, specify it in your
VGCollectSDK is also available through Carthage.
Add the following line to your
carthage update --platform iOS
If you don't need additional features like card scanning, you should add into your project only
VGSCollectSDK. Other submodules can safely be deleted from Carthage Build folder.
Check VGSCollecSDK submodules and required frameworks:
|Build Frameworks||Core SDK||CardIO||Card Scan|
Don't forget to import
VGSCardScanCollector in files where you use scan modules.
NOTE: At <img style="max-width:100%;" src="https://raw.github.com/verygoodsecurity/vgs-collect-ios/master/**Carthage** does not provide a way to build only specific repository submodules. All submodules and their dependencies will be built by default. However you can<img style="max-width:100%;" src="https://raw.github.com/verygoodsecurity/vgs-collect-ios/master/nto your project only submodules that you need.
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the
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
NOTE: In some cases yo<img style="max-width:100%;" src="https://raw.github.com/verygoodsecurity/vgs-collect-ios/master/ multiple Swift tools versions installed.
Follow the official Apple SPM guide instructions for more details.\n
To use Swift Package Manager, in Xcode add the https://github.com/verygoodsecurity/vgs-collect-ios.git dependency and choose the
VGSCollectSDK and optionally other packages provided with
<vaultId> to initialize VGSCollect instance. You can get it in your organisation dashboard.
|Here's an example||In Action|
|... observe filed states|
|... send data to your Vault|
VGSCardTextField automatically detects card provider and display card brand icon in the input field.
VGS Collect SDK provides several card scan solutions for the Payment Card Industry to help protect your businesses and the sensitive information of your consumers. 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 CardIO module to use Card.io as scan provider pod 'VGSCollectSDK/CardIO' # Add CardScan module to use CardScan(Bouncer) as scan provider pod 'VGSCollectSDK/CardScan'
Starting with the 1.7.4 release,
VGSCollectSDK also supports CardScan integration via Swift PM.
To use CardScan add
VGSCardScanCollector packages to your target.
Starting with the 1.7.11 release,
VGSCollectSDK supports CardIO integration via Swift PM.
<img style="max-width:100%;" src="https://raw.github.com/verygoodsecurity/vgs-collect-ios/master/ardIO** add
VGSCardIOCollector packages to your target.
Carthage users should point to
VGSCollectSDK repository and use next generated framework:
CardIO. In your file add
CardScan. In your file add
Other submodules can safely be deleted from Carthage Build folder.
NOTE: At this time, Carthage does not provide a way to build only specific repository submodules. All submodules and their dependencies will be built by default. However you can include into your project only submodules that you need.
NOTE: For Carthage users CardScan available only with version 1.0.5048. Use CocoaPods or Swift Package Manager integration for the latest CardScan version. CardScan supports only CocoaPods or Swift Package Manager now.
|Here's an example||In Action|
|... handle VGSCardIOScanControllerDelegate|
VGSCardIOScanControllerDelegate 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
CradIODataType to get available scand data types.
Don't forget to add NSCameraUsageDescription key and description into your App
You can add a file uploading functionality to your application with VGSFilePickerController.
|... handle VGSFilePickerControllerDelegate||In Action|
|... send file to your Vault|
Use vgsCollect.cleanFiles() to unassign file from associated VGSCollect instance whenever you need.
Demo application for collecting card data on iOS is here.
Also you can check our payment optimization demo with Multiplexing.
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 easily opt-out of metrics collection in
VGSAnalyticsClient.shared.shouldCollectAnalytics = false
VGSCollect iOS SDK is released under the MIT license. See LICENSE for details.
|Last commit: Yesterday|