Skip to main content

Set up

Before starting, make sure you follow the Get started guide, where you'll find what's needed for integration.

Installing our Push Provisioning SDK

Swift Package Manager

To install our Push ProvisioningPush Provisioning A method that allows cardholders to add their card to a digital wallet (such as Apple Pay or Google Pay) directly from your app. The card details are securely tokenized and sent to the wallet provider, streamlining the process and enhancing the user experience compared to manual provisioning. This feature is currently in beta. iOS SDK using Swift Package Manager (SPM) you will need to:

  1. Open your Xcode project.
  2. Navigate to File > Add Packages...
  3. In the search bar, enter the following URL, replacing <TOKEN> with the token we provided you, making sure not to commit it to your repository.
    https://<TOKEN>@github.com/weavr-io/push-provisioning-ios
  4. Select the version you wish to use. We adhere to Semantic versioning and so recommends using the Up to next major version dependency rule.
  5. Click Add Package to integrate the SDK into your project, and select the target where you want to add the SDK.

CocoaPods

warning

CocoaPods is currently being sunset. We are currently providing support, but are planning to drop it in the future, so we encourage you to switch to Swift Package Manager instead.

To install the SDK via CocoaPods you'll need to update your Podfile to include a specific source as well as adding a dependency to our private repository:

...
source 'https://gitlab.com/phyreapp/ios-specs.git'

target 'MyApp' do
...
# Replace the x.y.z tag with the relevant version. See Release notes for the latest version.
pod 'WeavrPushProvisioning', :git => "https://#{ENV['WEAVR_GITHUB_TOKEN']}@github.com/weavr-io/push-provisioning-ios", :tag => 'x.y.z'
end

To access the private repository, you'll need to securely set a token in your environment. You can set the token when calling pod with:

WEAVR_GITHUB_TOKEN=<TOKEN> pod install

Contact support for a token.

Configuring the SDK

You will need to provide a configuration file for the correct functioning of the SDK.

To do so, add the provisioning_config file to all iOS bundles that will interact with the SDK. e.g., it can be located in an assets folder, and added to your app's and extension targets.

Get in touch with our support team at [email protected] to obtain this file.

danger

This file is sensitive, make sure you store and distribute it in a secure manner.

It's recommended to not commit this file to your repository, and distribute it via a secure file sharing software among your team.

Finally, use the secrets feature of your CI software to avoid failing jobs.

Setting up your App's entitlements

Finally, you need to edit your app's entitlement to support the capabilities required to provision cards.

To do so, select your project file, then your app's target, then the Signing & Capabilities tab.

Once you have opened this tab, make sure you have the following capabilities:

  • In-App Provisioning so that you can provision cards from your app.
  • Wallet, selecting Allow all team pass types so you can check the status of cards from your app.
  • App Groups, specifying at least one group. This is required so that the token and card data can be stored in a shared location, that your app and your Wallet ExtensionsWallet Extension An iOS app extension that integrates an issuer app with Apple Wallet. The UI Wallet Extension provisions a card from the issuer app into Wallet (the in-app provisioning flow). The Non-UI Wallet Extension exposes the issuer's card-management actions (such as 'View card details') from inside Wallet itself. Apple requires both for a primary issuer-app integration. can all access.

Finally, ensure that the provisioning profilesProfile A template defining the configuration for one type of object - corporate identity, consumer identity, managed account, managed card, transfer, or outgoing wire transfer. When you create one of these objects you reference its Profile ID, which tells Weavr which limits, currencies, supported countries, branding, and fees to apply. Your programme ships with one or more Profile IDs per supported object type. used to sign the app grant the required entitlements.