Integrate the Virtual Cards Simulator SDK

Integrate the Virtual Cards Simulator SDK into your application

Prerequisites

Get Started

Integrate the JS SDK

To use the Virtual Cards Simulator SDK in a Web or Node.js project, you must add @sudoplatform/sudo-virtual-cards as a dependency to your project.

yarn add '@sudoplatform/sudo-virtual-cards-simulator'
# or
npm install --save '@sudoplatform/sudo-virtual-cards-simulator'

To instantiate and initialize a client in your application, add the following:

const SimApiConfig = t.type({
  apiUrl: t.string,
  apiKey: t.string,
  region: t.string,
})
type SimApiConfig = t.TypeOf<typeof SimApiConfig>

const setupApiClient = (): AWSAppSyncClient<NormalizedCacheObject> => {
  const config =
    DefaultConfigurationManager.getInstance().bindConfigSet<SimApiConfig>(
      SimApiConfig,
      'vcSimulator',
    )
  return new AWSAppSyncClient({
    disableOffline: true,
    url: config.apiUrl,
    region: config.region,
    auth: {
      type: AUTH_TYPE.API_KEY,
      apiKey: config.apiKey,
    },
  })
}

const client = setupApiClient()
const virtualCardsSimulatorClient =
  new DefaultSudoVirtualCardsSimulatorClient({ appSyncClient: client })

Integrate the iOS SDK

The iOS SDK is open source and compatible with iOS 11 and above.

To use the Virtual Cards Simulator SDK in an iOS app, you need to install the SudoVirtualCardsSimulator package via Swift Package Manager

Open your project settings in XCode, and go to the Package Dependencies tab. Click on the + sign to add a dependency.

Enter the repository URL https://github.com/sudoplatform/sudo-virtual-cards-simulator-ios in the top right search box and select the sudo-virtual-cards-simulator-ios repository.

Select the required version and Add Package.

Sudo Platform SDKs conform to semantic versioning so in most cases you will leave the Dependency Rule as Up to Next Major Version to receive regular updates without introducing any breaking changes.

This will resolve the local package dependency and install the latest version of the Virtual Cards Simulator SDK.

SDK Configuration

Simulator configuration differs from the configuration of the other Sudo Platform SDKs. Please take note of this section.

The Simulator configuration differs from the configuration you will have seen in the other Sudo Platform SDKs. It requires:

  • username

  • password

  • endpoint

  • region

The username and password are your login credentials for the Sudo Platform Administration Console.

The endpoint and region are contained in the SDK configuration file that you can download as described in the Getting Started section.

Client Initialization

To instantiate a client in your application, add the following code.

do {
    let username = // Username obtained from the Sudo Platform Admin Console
    let password = // Password obtained from the Sudo Platform Admin Console
    let simulatorClient = try DefaultSudoVirtualCardsSimulatorClient(
        username: username, 
        password: password
    )
} catch {
    // Handle initialization error. An error might be thrown due to invalid
    // configuration.
}

Integrate the Android SDK

The Android SDK is open source and compatible with Android 6 (API level 23) and above.

Add this line to the dependencies section of the app module's build.gradle then synchronize your project with Android Studio.

build.gradle
dependencies {
    implementation 'com.sudoplatform:sudovirtualcardssimulator:$latest_version'
}

The latest version of the SDK can be found at SDK Releases.

In order to instantiate a Virtual Cards Simulator client, make sure you have followed the instructions for Getting Started (see Prerequisities above)

SDK Configuration

Simulator configuration differs from the configuration of the other Sudo Platform SDKs. Please take note of this section.

The Simulator configuration differs from the configuration you will have seen in the other Sudo Platform SDKs. It requires:

  • username

  • password

  • endpoint

  • region

You can obtain the username and password from the Sudo Platform Administration Console under the Project Settings -> Mobile App Config section. This username and password are your login credentials for the Sudo Platform Administration Console.

The endpoint and region are contained in the SDK configuration file that you can download as described in the Getting Started section.

Client Initialization

To instantiate a client in your application, add the following code.

val username = // Username obtained from the Sudo Platform Admin Console
val password = // Password obtained from the Sudo Platform Admin Console

val simulatorClient = SudoVirtualCardsSimulatorClient.builder()
    .setContext(appContext)
    .setUsername(username)
    .setPassword(password)
    .build()

Threading Considerations

The methods of this API shown in the code samples perform synchronous network requests to the simulator provider. Therefore, these methods should be called with the Dispatchers.IO coroutine dispatcher so that the network request is performed on an I/O thread and not on the main thread.

Last updated